API利用ガイド
nocall 公開 API を使うと、外部システムからコンタクトの登録・即時架電・通話結果の取得ができます。各 API のパラメータとレスポンスは、生成された APIリファレンス を参照してください。
ベースURL
Section titled “ベースURL”https://api.nocall.ai/api/v1新しい連携では /api/v1 を使用してください。
APIキーを取得する
Section titled “APIキーを取得する”- nocall コンソールで対象のプロジェクトを開きます。
- 左サイドバーの「APIキー」を開きます。
- 「APIキーを作成」を選び、用途が分かる名前を入力します。
- 作成直後に表示されるキーを安全な場所へ保存します。
APIキーの値は一度だけ表示されます。ブラウザやモバイルアプリへ直接埋め込まず、サーバー側の環境変数やシークレット管理サービスで保管してください。
すべての API リクエストで、次のどちらかのヘッダーを指定します。
x-api-key: NOCALL_API_KEYAuthorization: Bearer NOCALL_API_KEYAPIキーごとのレート制限は、目安として1分あたり100リクエストです。429 Too Many Requests を受け取った場合は、時間を置いて再試行してください。
IDを確認する
Section titled “IDを確認する”agentId はエージェント詳細画面、userGroupId はコンタクトグループ詳細画面で確認できます。各画面に表示されるIDをクリックしてコピーしてください。
agentId または userGroupId を省略すると、プロジェクト内の既定候補が選択されます。意図しない対象を使わないよう、外部連携では明示することを推奨します。
旧フィールドから移行する
Section titled “旧フィールドから移行する”familyName、givenName、familyNameKana、givenNameKana、companyName、email は互換性のため受け付けますが、非推奨です。新しい連携では attributions に属性を指定してください。
{ "phoneNumber": "+818011119999", "userGroupId": "ugp_XXX", "agentId": "agt_XXX", "attributions": [ { "label": "姓", "value": "山田" }, { "label": "名", "value": "太郎" }, { "label": "会社名", "value": "株式会社テスト" } ]}attributions の label は同じリクエスト内で重複できません。エージェントが必須としている属性もすべて指定してください。
- エンドユーザーを作成して即時架電する
- 通話結果一覧を取得する
- 通話IDから通話結果詳細を取得する
- 架電タスクIDから通話結果詳細を取得する
- 通話IDから録音音声URLを取得する
- 架電タスクIDから録音音声URLを取得する
各ページには、固定URL、認証方法、パラメータ、リクエストボディ、ステータスコード別レスポンス、レスポンスフィールド、curl などのコード例が表示されます。
APIの仕様変更に関する注意事項
Section titled “APIの仕様変更に関する注意事項”以下の「重要な非互換変更に含まれない変更」に記載する変更は、予告なく実施することがあります。
重要な非互換変更
Section titled “重要な非互換変更”「重要な非互換変更」とは、変更の名称、形式又は実施方法を問わず、本サービスの正式版APIについて、公開仕様又は公開仕様により保証された外部から観測可能な動作を変更することにより、公開仕様に適合し、かつ利用者が本番環境で現に使用している既存の連携が、そのままでは停止し、正常に機能せず、又は従前と実質的に同一の処理結果若しくは利用目的を維持できなくなり、その継続のために利用者側の開発対応を必要とする変更をいいます。
「開発対応」とは、ソースコード、APIクライアント、SDK、認証処理、データ構造、データマッピング、Webhook処理、システム構成その他の連携処理の変更、依存ソフトウェアの更新、データ移行、試験又は本番環境への反映をいいます。ただし、通常の設定変更、認証情報の更新又は運用手順の変更のみで対応できる場合を除きます。
次の各号のいずれかに該当し、かつ前項の要件を満たす変更は、重要な非互換変更に含まれます。
- APIインターフェース又はデータ契約の変更 エンドポイント、HTTPメソッド、リクエスト若しくはレスポンスのパラメータ、ヘッダー、フィールド、型、形式、階層、必須・任意の区分、値の制約、列挙値、ステータスコード、エラーコード又はエラー形式の削除、追加、名称変更、意味変更その他の変更
- 認証、認可又は技術要件の変更 認証方式、署名方式、権限要件、アクセス制御、通信プロトコル、暗号方式、証明書、SDK、ランタイム、ライブラリその他の技術要件の変更又はサポート終了
- 入力条件又は処理結果に関する変更 入力値の受付条件、検証条件、デフォルト値、デフォルト動作、計算方法、丸め方法、単位、タイムゾーン、データの意味、作成・更新・削除される対象、状態遷移、処理完了条件又は副作用の変更
- 処理及びデータ取得の動作に関する変更 同期・非同期の別、処理順序、一覧の並び順、フィルタ条件、検索条件、重複排除、ページネーション、トランザクションの単位、原子性、冪等性、重複実行防止、再試行、整合性又はデータ反映時期の変更
- Webhookその他のイベント連携に関する変更 イベント名、イベントの発生条件、データ形式、配信条件、配信時期、配信順序、重複配信、再送、署名又は検証方法の変更
- 利用上限又は処理能力に関する変更 レート制限、最大リクエストサイズ、最大処理件数、最大取得件数、タイムアウト、同時実行数その他の利用上限又は処理条件の引下げ
- データのライフサイクルに関する変更 データの保存、取得、更新、削除、保持期間、取得可能期間、アーカイブ又は復元に関する条件若しくはタイミングの変更
- API又は機能の廃止若しくは利用制限 API、エンドポイント、APIバージョン、機能、フィールド、イベント、SDKその他の提供終了、サポート終了、利用停止又は利用可能範囲の縮小
- その他の実質的な非互換変更 前各号に明示されていない変更であっても、APIの公開仕様又は公開仕様により保証された動作を変更し、公開仕様に適合する既存連携を継続するために、利用者側の開発対応を必要とするもの
重要な非互換変更に含まれない変更
Section titled “重要な非互換変更に含まれない変更”次の各号に該当する変更は、重要な非互換変更に含まれません。
- 新たなAPI、任意パラメータ、任意のレスポンスフィールド又は新機能を追加する変更
- 公開仕様に適合しない利用者側の実装のみが影響を受ける変更
- 利用者が新機能を選択又は有効化する場合に限って開発対応を要する変更
- 管理画面の表示、内部インフラ、内部アルゴリズム、処理方式又は当社内部のシステム構成の変更であって、APIの公開仕様及び利用者側の連携処理に影響しないもの
- 公開仕様に反する動作又は不具合を、公開仕様どおりの動作に修正する変更。ただし、公開仕様に適合する既存連携についても重大な影響が生じ、かつ利用者側の開発対応が必要になることを当社が合理的に予見できる場合を除く
- プレビュー版、ベータ版、試験提供中又はサポート対象外として明示されたAPI若しくは機能の変更
- 利用者側のライブラリ、インフラ又は第三者サービスの変更に起因して必要となる対応
- 通常の設定変更、認証情報の更新又は運用手順の変更のみで対応可能な変更
- 公開仕様において保証していない処理順序、応答時間、内部処理その他の未定義の挙動に関する変更
- 公開仕様に定められた範囲内における応答時間、処理結果又は出力内容の変動
- ドキュメントの説明、例示又は表現のみを修正し、実際のAPIの仕様又は動作を変更しないもの
- 利用者が使用していないAPI、バージョン、エンドポイント又は機能のみに影響する変更
- 利用者側の既存連携を変更することなく、当社が提供する互換レイヤー、旧バージョン又は代替手段によって従前と実質的に同一の利用を継続できる変更
- APIの利用可否又は既存連携の正常な動作に影響しない、軽微な性能改善、セキュリティ強化又は保守上の変更
公開仕様において特定の結果、精度又は表現が保証されていないAIその他の非決定的な処理について、その出力内容、表現、精度又は傾向が変動することは、重要な非互換変更に含まれません。ただし、出力形式、必須項目その他の公開仕様上の保証を変更する場合は、この限りではありません。
