← Docs

API

SaykeeperのAPIを使うと、スクリプトやアシスタントが、打ち合わせを読み取れます。キーでできるのは、読み取りと質問だけです。作成、変更、削除はできません。

APIキー

認証

キーは、AuthorizationヘッダーにBearerトークンとして送ります。どのリクエストでも、見られるのはキーの所有者の打ち合わせだけです。

Authorization: Bearer ntb_live_YOUR_KEY

ベースURL

https://api.saykeeper.com/v1

APIキーを受け付けるエンドポイント

メソッドパス返す内容
GET/meetings?limit=50ご自身の打ち合わせを新しい順に(最大200件、アーカイブ済みは?archived=true)。
GET/meetings/search?q=budget&limit=20タイトルと文字起こしの検索(フィルター:space_id、label_id、from、to)。
GET/meetings/{id}文字起こし(話者、時刻)とAIの出力つきの打ち合わせ1件。
GET/meetings/shared他の人があなたと共有した打ち合わせ。
GET/meetings/reportレポート用に、話者つきで打ち合わせごとに1行。
GET/meetings/{id}/chat打ち合わせに保存された質問と回答。
POST/meetings/{id}/chat1つの打ち合わせへの質問。ボディは{"message":"..."}。
GET/meetings/{id}/clips打ち合わせから切り出したクリップ。
GET/labelsご自身のラベル。
GET/settings文字起こしとノートの言語を含む、ご自身の設定。
POST/mcpMCPサーバー(Streamable HTTP経由のJSON-RPC)。

録音、アップロード、打ち合わせの変更や削除、設定の変更、キーやウェブフックの管理には、ログイン済みのアプリが必要です。キーでこれらを行おうとすると、403 session_requiredが返ります。

例

最新の打ち合わせ

curl "https://api.saykeeper.com/v1/meetings?limit=5" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

検索

curl "https://api.saykeeper.com/v1/meetings/search?q=budget" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

文字起こしとノートつきの打ち合わせ1件

curl "https://api.saykeeper.com/v1/meetings/MEETING_ID" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

打ち合わせについての質問

curl -X POST "https://api.saykeeper.com/v1/meetings/MEETING_ID/chat" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message":"What did we agree on?"}'

エラー

400入力が正しくありません。たとえば、対応していない言語コードです(unsupported_language)。
401キーがない、または無効です(missing_bearer_token、invalid_api_key)。
403ログイン済みのアプリが必要です(session_required)、またはご自身の打ち合わせではありません。
404見つかりません。
409打ち合わせにまだ文字起こしがありません(no_transcript)。
429レート制限に達しました(rate_limited)。少し待ってから、もう一度お試しください。

レート制限

内容上限
打ち合わせへの質問(POST /meetings/{id}/chat)20 / 分
MCPのask_meetingとask_meetings20 / 分

ウェブフック

Saykeeperは、打ち合わせの準備ができたときに、お客様のURLを呼び出せます。ウェブフックは、「設定」の「APIとMCP」で追加します。配信ごとに、ウェブフックのシークレットで署名されます。