Guide

Acuity Scheduling API の代替案

Acuity の API は Acuity アカウントを管理するためのもので、製品内に埋め込むスケジューリングを動かすものではありません。Cal.com、Calendly API、そしてターミナルで試せるカレンダー API ベースの予約フローを比較します。

Written by Nick Barraclough Product Manager

Reviewed by Qasim Muhammad

VerifiedCLI 3.1.17 · Google, Outlook · last tested June 9, 2026

なぜ Acuity Scheduling API の代替案を探すのか?

Acuity Scheduling API は既存の Acuity アカウントを管理します。つまり、自社の Acuity ビジネス内にある予約、顧客、空き時間を読み書きします。製品ユーザー向けのスケジューリングを動かすために設計されたものではないため、自社アプリに予約を埋め込む開発者は代替案を探すことになります。

Acuity は 2019 年から Squarespace の一部であり、その開発者 API もアカウント中心の歴史を反映しています。Acuity 開発者ドキュメント によると、認証はユーザー ID と API キーを使う HTTP Basic で、すべてのエンドポイントは 1 つの Acuity アカウントの予約、顧客、フォーム、空き時間に対して動作します。このモデルは自社の予約ビジネスを拡張する場合には機能します。しかし、各ユーザーが自分の Google または Outlook カレンダーを接続し、アプリ内で予約を受け付ける必要がある場合、ユーザー単位のカレンダー接続がないため限界があります。

代替案の検索は、たいてい 2 つの意味のどちらかです。より扱いやすい API を持つ別の予約プロダクトが欲しいチームもあります。予約プロダクトを借りるのをやめ、フローを自社で所有したいチームもあります。前者は Cal.com と Calendly を比較すべきです。後者にはカレンダーのプリミティブが必要で、その道は数分でターミナルから検証できます。

主な Acuity Scheduling API 代替案は何か?

埋め込みスケジューリングの大半のニーズは 3 つの選択肢でカバーできます。Cal.com はセルフホストでき API で操作できるオープンソースのスケジューリング製品です。Calendly API は予約リンクを管理し、Calendly がホストするページで予約されたイベントを読み取ります。Nylas のようなカレンダー API では、空き時間とイベントのプリミティブから予約フローを自分で構築します。

観点Cal.comCalendly APIカレンダー API (Nylas)
概要オープンソースのスケジューリング製品ホスト型予約製品の上にある API空き時間 + イベントの生 API
予約 UI組み込み済み、埋め込み可能Calendly がホストするページ自分で構築
セルフホストはいいいえホスト型 API
予約が行われる場所自社の埋め込み UI または相手のページCalendly のページ自社製品の内部
最適な用途ソースアクセス付きで予約ページを素早く作る既存の Calendly 設定を自動化する自社ワークフローに組み込まれたスケジューリング

Cal.com は 2021 年にオープンソースの Calendly 代替として登場し、その API v2 はセルフホストもできる埋め込み予約ページへの最短ルートです。Calendly v2 API は OAuth 2.0 または個人アクセストークンで認証しますが、予約自体は引き続き Calendly ホストのページで行われるため、API は予約を作成するというより観測する側面が強くなります。カレンダー API 上に構築する方法だけが、フォーム、ルール、データモデルを完全に自社のものにできます。

トレードオフはどちら側も明確です。製品を使えば今週中に公開できますが、他社の予約ルールに従うことになります。API は構築コストがかかりますが、席単位の料金やサードパーティページへのリダイレクトを取り除けます。次の 3 つのセクションでは 3 つのコマンドで構築経路を端から端までたどり、着手前に工数を判断できるようにします。

スケジューリング製品なしで空き時間を確認するには?

nylas calendar availability find コマンドは、接続済みの Google または Outlook カレンダーから空いている会議枠を直接検索します。デフォルトでは 7 日間の範囲を 15 分間隔でスキャンし、30 分枠を返します。--json を付けると、予約 UI が直接レンダリングできるデータとして枠を返します。

nylas calendar availability find \
  --participants host@example.com \
  --duration 30 \
  --interval 15 \
  --json

特定の時間枠について yes/no の答えが必要な場合、nylas calendar availability check コマンドは任意のメールアドレス群の free/busy 状態を報告します。自然言語の時刻を受け付けるため、同じ呼び出しをバックエンドに組み込む前に、日付フォーマットなしで素早くターミナルテストできます。

nylas calendar availability check \
  --emails host@example.com \
  --start "tomorrow 9am" \
  --end "tomorrow 5pm"

どちらのコマンドもライブの free/busy データを読み取るため、ここに表示される枠は、製品外で予約されたイベントも含めたホストの実際のカレンダーを反映します。JSON をバックエンドにパイプするか、そのままフロントエンドレスポンスに渡してください。タイムゾーン処理を含むスロットから Web サイトまでの配線全体は 予約ページガイド で扱っています。

訪問者が枠を選んだ後、予約を作成するには?

nylas calendar events create コマンドは、予約をホストの実カレンダーに書き込み、訪問者を参加者として招待します。招待メールはカレンダープロバイダー自身が送信するため、確定した予約は枠をブロックし、手動作成のイベントと同じように両方のカレンダーに表示されます。会議リンクには --location、議題メモには --description を追加します。どちらも招待に反映されます。

nylas calendar events create \
  --title "Intro call with Sam" \
  --start "2026-06-12 14:00" \
  --end "2026-06-12 14:30" \
  --participant "visitor@example.com" \
  --json

--end を省略すると、CLI は終了時刻を開始から 1 時間後にします。本番で重要な点があります。イベント作成の直前に、選ばれた正確な時間枠で空き時間チェックを再実行してください。UI がレンダリングされてから別の訪問者がその枠を取っている可能性があるためです。この再チェックのパターンと、それが防ぐ二重予約の失敗モードは 空き時間予約ページガイド で説明しています。

変更後の予約を同期し続けるには?

Webhook は埋め込みスケジューラーを正確に保ちます。nylas webhook create コマンドは event.createdevent.updated トリガーに対してエンドポイントを登録するため、Google Calendar や Outlook で直接行われた辞退、変更、キャンセルがポーリングなしでアプリに届きます。

nylas webhook create \
  --url "https://api.example.com/calendar-hooks" \
  --triggers event.created,event.updated \
  --description "Booking sync"

要約で触れたポーリング計算です。1,000 件の予約を 5 分ごとに確認すると、1 日あたり 288,000 リクエストになり、そのほとんどは新しい情報を返しません。1 つの webhook 登録がそれをすべて置き換えます。ローカル開発では、nylas webhook server --port 8080 がマシン上で受信サーバーを実行し、デプロイ前にリスケジュール payload の到着を確認できます。nylas webhook verify は webhook secret に対して payload 署名を検証し、本物の通知だけを信頼できるようにします。後で UI を管理してもらいたい場合、Nylas Scheduler ドキュメント がホスト型予約ページの選択肢を扱っています。

次のステップ