API リファレンス
認証POST

コード認証を開始

認証コードによるログインフローを開始します。呼び出し後 /auth/code でコードを送信し、二要素が必要なら /auth/password を続けて呼び出します。WhatsApp の電話番号ペアリングも同じエンドポイントを使用します。電話番号はアカウントから読み込まれる(作成時に provider_data.phone で保存)ため、ここで再度指定する必要はありません。

https://api.unifyport.ai/v1/accounts/{account_id}/auth/start

ヘッダー

X-Api-Key
string必須

ワークスペース API キー。このヘッダーからワークスペースを特定します。

Content-Type
string必須

JSON のリクエストボディを送る場合は application/json を使用します。

パスパラメータ

account_id
string必須

authentication ルートで使用される識別子。

リクエストボディ

このエンドポイントは JSON ボディを必要としません。

レスポンスボディ

account_id
string

このレスポンスが対象とするプロバイダアカウント。

status
string

現在の認証フロー状態。awaiting_code、awaiting_qr_scan、authorized、cancelled など。

auth_fields
object[]

次のステップで何が必要かを示します。各エントリは type と必須かどうかを持ちます。

auth_payload
object

qr_code や verify_code など、次のステップを描画するためにクライアントが必要とする情報。

expires_at
string

現在の auth_payload が無効になる時刻の RFC3339 タイムスタンプ。

レスポンス

200
200 OK

リクエスト成功。レスポンスボディの例を参照してください。

400
Bad Request

リクエストボディ、パス、またはパラメータが不正です。

401
Unauthorized

X-Api-Key ヘッダが欠落しているか無効です。

409
Conflict

要求された操作が、既存のプロバイダアカウントまたはリソースと競合しています。

500
Internal 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"
  }
}