ナビゲーションにスキップ

Acuity Scheduling

Webhookツールを使って、Acuity Schedulingの空き時間を確認し、予約を登録します。

以下のWebhookツールを使用すると、受付担当が予約タイプの空き時間を確認し、発信者の予約を空いている時間枠に登録できます。Acuityからクライアントに通常の確認メールが送信されます。

始める前に

1

プランを確認する

AcuityでAPIアクセスを利用できるのは最上位プラン(Premium、旧Powerhouse)のみです。ほかのプランでは、以下のツールを使用すると403エラーが発生します。

2

API認証情報を取得する

Acuityで Integrations を開き、API を見つけて、User ID と API Key をコピーします。

3

認証ヘッダーを作成する

Acuityでは、User IDをユーザー名、APIキーをパスワードとして使用します。ターミナルで両方のプレースホルダーを置き換えてエンコードします。

printf 'USER_ID:API_KEY' | base64

ヘッダー値はBasic の後に出力結果を続けたものです。

APIキーをオンラインエンコーダーに貼り付けないでください。APIキーを入手した人は誰でも、予約やクライアント情報を 閲覧・変更できます。

4

予約タイプIDを確認する

受付担当が予約を登録する予約タイプの直接予約リンクをコピーします。リンク内のappointmentType=の後にある数字がIDです。以下のツールでは、APPOINTMENT_TYPE_IDの代わりにそのIDを使用します。

ツールを作成する

ツールごとに Integrations に移動し、Add integration を選択して、Webhook Tool を選びます。次に、Assign to agents を Receptionist に設定します。

空き時間を確認する

フィールド値
Namecheck_acuity_availability
Description「指定した1日の予約可能な時間を一覧表示します。発信者に時間を提案する前に使用してください。」
MethodGET
URLhttps://acuityscheduling.com/api/v1/availability/times
Request HeadersAuthorization:Basic の後にエンコードした認証情報を続ける
Query ParametersappointmentTypeID(数値、必須):「常に正確な値APPOINTMENT_TYPE_IDを使用します。」
date(文字列、必須):「確認する日付をYYYY-MM-DD形式で指定します。」

予約を登録する

フィールド値
Namebook_acuity_appointment
Description「発信者が空き時間を選択したら、その時間に予約を登録します。先に日付と時刻を確認してください。」
MethodPOST
URLhttps://acuityscheduling.com/api/v1/appointments
Request HeadersAuthorization:Basic の後にエンコードした認証情報を続ける
Body Parametersdatetime(文字列、必須):「check_acuity_availabilityがtime値として返したものと完全に同じ選択済み時刻。」
appointmentTypeID(数値、必須):「常に正確な値APPOINTMENT_TYPE_IDを使用します。」
firstName(文字列、必須):「発信者の名。」
lastName(文字列、必須):「発信者の姓。」
email(文字列、必須):「発信者のメールアドレス。スペルを確認してください。」
phone(文字列):「発信者の電話番号。」

各ツールで Enable を選択してから、予約を依頼して受付担当をテストします。予約がAcuityカレンダーに表示されます。

複数の予約タイプを登録するには、両方のツールの「常に正確な値」をリストに置き換えます。例: 「30分の相談には111、60分のセッションには222を使用します。」

制限事項

  • Acuityではすべての予約にメールアドレスが必要なため、受付担当が発信者にメールアドレスのスペルを確認します。
  • 問診フォームの回答はリストとして送信されますが、Webhookツールではリストを送信できません。予約メモを設定できるのは、Acuityの空き状況チェックをスキップする管理者予約のみです。そのため、上記のツールではどちらも設定しません。
  • このツールでは予約のキャンセルや日程変更はできません。これらの操作にはURL内に予約IDが必要です。

トラブルシューティング

問題確認事項
Acuityから401が返されるコロンを含むUSER_ID:API_KEYをエンコードし、ヘッダー値の先頭をBasic とスペースにします。
Acuityから403が返されるご利用のプランにはAPIアクセスが含まれていません。
時間が返されない予約タイプIDと、その日付に予約可能な時間が設定されていることを確認します。
not_availableで予約に失敗するその時間はすでに予約済みか、予約可能ではありません。予約前に空き時間を再確認するよう受付担当に伝えてください。
フィールド不足で予約に失敗するアカウントで電話番号が必須になっている可能性があります。予約ツールでphoneを必須にしてください。