API 參考
渠道方對比

WhatsApp 接入授權

WhatsApp 支援 QR 配對同手機號配對,統一透過標準認證介面完成。

qrcode

WhatsApp QR 配對:叫 /auth/qr/start 起裝置會話。QR 字串透過 account.auth.required 事件推到你個 webhook,同時亦會 cache 喺 /auth/qr/check 畀同步輪詢。

  1. 1. POST /v1/accounts,provider=whatsapp,auth_mode=qrcode。可以選擇傳 provider_data.device_os / device_platform / proxy_config 嚟控制手機端顯示嘅設備指紋。
  2. 2. POST /v1/accounts/{account_id}/auth/qr/start 啟動裝置。返 status=awaiting_qr_scan,但 QR 字串係非同步到達。
  3. 3. 監聽 webhook 嘅 account.auth.required 事件 —— auth_payload.qr_code 係要前端 render 做二維碼圖嘅原始字串。亦可以 poll /auth/qr/check。
  4. 4. 掃碼成功之後,account.auth.succeeded 事件會帶埋 provider_account_ref 到達你個 webhook,緊跟住 account.started 事件。POST /v1/accounts/{account_id}/runtime/start 喺呢個之後係 no-op。
  • provider_data.device_os配對過程中顯示嘅可選裝置標籤。除非要自訂顯示名,否則可以留空。
  • provider_data.device_platform裝置平台數字編碼(1=CHROME,2=FIREFOX,5=SAFARI,14=IOS_PHONE,16=ANDROID_PHONE,...)。必須同 device_os 同時傳入先生效。
  • provider_data.proxy_config企業部署可選嘅網絡路由設定。

code

WhatsApp 手機號配對:建立帳號嗰陣保存手機號,跟住喺手機端打 8 位 verify_code(已連結嘅裝置 → 用電話號碼連結)。

  1. 1. POST /v1/accounts,provider=whatsapp、auth_mode=code,provider_data.phone 填 E.164 純數字。手機號會持久化喺帳號上,後續嘅認證動作會自動複用。
  2. 2. POST /v1/accounts/{account_id}/auth/start,body 留空。已保存嘅手機號會被複用;回應嘅 auth_payload 入面攜帶 8 位 verify_code。
  3. 3. 將 verify_code show 畀用戶。手機端接受時間大概 3 分鐘,過咗就要重啟流程。
  4. 4. 配對完成後,account.auth.succeeded 同 account.started 經 webhook 到達,同 QR 流程一樣。
  • provider_data.phoneE.164 電話號碼(純數字,例如 15551234567)。建立帳號嗰陣填喺 provider_data.phone 入面;後續嘅認證動作會自動複用呢個號碼。

備註

  • QR 碼係經 webhook 嘅 account.auth.required 事件非同步推送,唔係 /auth/qr/start 同步返。啟動流程之前一定要先配好 webhook 接收端。
  • /auth/start 返嘅 verify_code 係 show 畀最終用戶睇,唔需要再回傳俾 API。WhatsApp 預期用戶喺 3 分鐘內將佢打入手機端。
  • WhatsApp 嘅表情反應會以 message.reaction 事件下發 —— emoji 喺 data.event.reaction,被反應訊息 id 喺 data.message.target_message_id。
  • 超出大小限制(音訊 50MB / 影片 60MB / 文件 50MB)嘅媒體,會產出 url 為空 + metadata.is_big_file=true 嘅 attachment。