チャネル
WhatsApp Protocol 認証
WhatsApp Protocol は provider=whatsapp-protocol で指定する独立したチャネルです。現在はセッションのインポート(auth_mode=session)のみに対応し、既存のセッション認証情報でアカウントを認証します。
はじめる
- 1
プロバイダのリージョン一覧
whatsapp-protocol のリージョンを照会し、allocatable=true のものを選びます。割り当て可能なリージョンがない場合、そこでは現在アカウントを作成できません。
プロバイダのリージョン一覧curl -X GET "https://api.unifyport.ai/v1/providers/whatsapp-protocol/regions" \ -H "X-Api-Key: <YOUR_API_KEY>" - 2
アカウント作成
provider=whatsapp-protocol、auth_mode=session で作成し、data.id を account_id として保存します。認証情報は /auth/session のみに渡し、provider_data に含めません。
アカウント作成curl -X POST "https://api.unifyport.ai/v1/accounts" \ -H "X-Api-Key: <YOUR_API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "name": "WhatsApp Protocol", "provider": "whatsapp-protocol", "region": "<REGION>", "auth_mode": "session" }' - 3
認証セッションをインポート
次の whatsapp-protocol オブジェクトを送信します。このフローでは phone と 4 つのキーが必須です。キーは書き込み専用で応答には含まれません。非推奨項目と edge_routing は送信しません。
認証セッションをインポートcurl -X POST "https://api.unifyport.ai/v1/accounts/<ACCOUNT_ID>/auth/session" \ -H "X-Api-Key: <YOUR_API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "whatsapp-protocol": { "phone": "8600000000000", "static_pub_key": "<STATIC_PUBLIC_KEY>", "static_pri_key": "<STATIC_PRIVATE_KEY>", "identity_pub_key": "<IDENTITY_PUBLIC_KEY>", "identity_pri_key": "<IDENTITY_PRIVATE_KEY>" } }' - 4
送信できる状態を確認
インポート後に account_id で認証と実行状態を確認します。authorized は接続完了を意味しません。オフラインなら状態を更新してから送信します。
Runtime 状態を更新curl -X GET "https://api.unifyport.ai/v1/accounts/<ACCOUNT_ID>/auth" \ -H "X-Api-Key: <YOUR_API_KEY>" curl -X POST "https://api.unifyport.ai/v1/accounts/<ACCOUNT_ID>/runtime/refresh" \ -H "X-Api-Key: <YOUR_API_KEY>"
注記
- 対応は text、image、連絡先詳細です。引用返信、mentions、連絡先一覧・書き込み、会話・グループ操作には非対応です。イベントはテキスト/画像 message.received、account.started、account.status.updated、account.auth.failed に対応し、実際の配信は上流アカウントに依存します。
- 連絡先詳細には既存の LID(xxx@lid)が必要です。data.sender.id または data.conversation.id が @lid で終わる場合のみ再利用できます。Protocol に連絡先一覧 API はなく、この API も電話番号から LID を求められません。LID がなければ照会できません。成功応答でもプロフィール項目が省略される場合があります。