認証POST
コード認証を開始
認証コードによるログインフローを開始します。呼び出し後 /auth/code でコードを送信し、二要素が必要なら /auth/password を続けて呼び出します。WhatsApp の電話番号ペアリングも同じエンドポイントを使用します。電話番号はアカウントから読み込まれる(作成時に provider_data.phone で保存)ため、ここで再度指定する必要はありません。
https://api.unifyport.ai/v1/accounts/{account_id}/auth/startヘッダー
X-Api-Keystring必須
ワークスペース API キー。このヘッダーからワークスペースを特定します。
Content-Typestring必須
JSON のリクエストボディを送る場合は application/json を使用します。
パスパラメータ
account_idstring必須
authentication ルートで使用される識別子。
リクエストボディ
このエンドポイントは JSON ボディを必要としません。
レスポンスボディ
account_idstring
このレスポンスが対象とするプロバイダアカウント。
statusstring
現在の認証フロー状態。awaiting_code、awaiting_qr_scan、authorized、cancelled など。
auth_fieldsobject[]
次のステップで何が必要かを示します。各エントリは type と必須かどうかを持ちます。
auth_payloadobject
qr_code や verify_code など、次のステップを描画するためにクライアントが必要とする情報。
expires_atstring
現在の auth_payload が無効になる時刻の RFC3339 タイムスタンプ。
レスポンス
200200 OK
リクエスト成功。レスポンスボディの例を参照してください。
400Bad Request
リクエストボディ、パス、またはパラメータが不正です。
401Unauthorized
X-Api-Key ヘッダが欠落しているか無効です。
409Conflict
要求された操作が、既存のプロバイダアカウントまたはリソースと競合しています。
500Internal Server Error
サービスで予期しないエラーが発生しました。
リクエスト
curl -X POST https://api.unifyport.ai/v1/accounts/{account_id}/auth/start \
-H "X-Api-Key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{}'レスポンス
{
"data": {
"account_id": "acc_example",
"status": "awaiting_code",
"auth_fields": [
{ "type": "code", "required": true }
],
"auth_payload": {
"verify_code": "ABCD-EFGH"
},
"expires_at": "2026-01-01T00:00:00Z"
}
}