您可以使用企業管理 API,來建立和管理 WhatsApp Business 帳戶和訊息範本等與 WhatsApp 相關的商家資產。此 API 建於推廣 API 的基礎之上,並且會使用其部分的端點,因此本文件可能會在適當時加入此推廣 API 文件的連結。
此平台支援以下存取憑證類型。您使用的類型取決於您的應用程式將供哪些用戶使用,以及您是否為解決方案供應商。
系統用戶存取憑證代表您、您的企業或機構,或您企業或機構內的用戶。這類憑證的主要優點是不會過期,並且可以在您企業中代表自動化服務,而無需用戶輸入任何資料。
解決方案合作夥伴如要與新加入的顧客共用信用額度,只可使用系統用戶存取憑證。
在產生系統用戶存取憑證之前,您必須建立系統用戶。大多數端點都會檢查以此憑證所識別出的用戶是否有權限存取所查詢的資源。如果用戶無權存取相關資源,系統就會拒絕要求,並傳回錯誤代碼 200
。
員工系統用戶必須獲得由 Meta 商家擁有或與之分享的個別 WhatsApp Business 帳戶之存取權。如果您的應用程式只需要就您擁有的幾個 WhatsApp Business 帳戶取得存取權,員工系統用戶就已能滿足需要。
建立後,您必須對向系統用戶所需存取的每個 WhatsApp Business 帳戶授予部分或完整商家資產存取權。
管理員系統用戶預設在所有 WhatsApp Business 帳戶中,以及由您或您企業擁有或有份共用的資產中擁有完整管理權限。
如果您的應用程式需要存取最近與您企業共用的 WhatsApp Business 帳戶,管理員系統用戶便相當實用;如果您是使用員工系統用戶,就必須手動向與您共用的每個 WhatsApp Business 帳戶授予商家資產存取權。
請注意,您可以按不同 WhatsApp Business 帳戶授予部分存取權,以覆寫管理員系統用戶的預設商家資產存取權。請查看商家資產存取權,了解如何設定和覆寫存取權。
如要建立系統用戶,請按照下列步驟操作:
如要在建立系統用戶後產生系統用戶存取憑證,請按照下列步驟操作:
企業整合工具系統用戶存取憑證分別專屬於各個已加入的顧客,技術供應商和解決方案合作夥伴在存取已加入顧客資料時應使用此憑證。
應用程式如果會在顧客 WhatsApp Business 帳戶上執行自動程序化操作,這類憑證便非常實用,無需依賴應用程式用戶輸入資料,之後也無需重新驗證。
如要產生企業整合工具系統用戶存取憑證,您必須執行以商家專用 Facebook 登入設定的內嵌註冊流程,並交換顧客完成流程時傳回給您的代碼。
請參閱內嵌註冊文件企業整合工具系統用戶存取憑證文件,進一步了解這些憑證及其產生方式。
儘管我們支援所有應用程式開發人員使用用戶存取憑證,但您可能只會在首次使用應用程式管理中心傳送第一則測試訊息時才會用到用戶存取憑證。但是,在開發應用程式時,您很可能會改用系統用戶存取憑證;而如果您是技術供應商或解決方案供應商,則可能最終會改用企業系統用戶存取憑證。這是因為用戶存取憑證很快就會過期,每隔幾小時就需要產生新憑證。
有幾種方法可以產生用戶存取憑證:
發出 API 要求時,請在授權要求標題中加入您的憑證,並且注意憑證前應加上前綴 Bearer
。例如:
curl 'https://graph.facebook.com/v18.0/102290129340398/message_templates' \ -H 'Authorization: Bearer EAAJB...' \
建立系統用戶後,您必須設定商家資產存取權級別。許多端點也會要求憑證包含在 API 要求內的系統用戶,需擁有所查詢 WhatsApp Business 帳戶或其資產的部分或完整商家資產存取權。如果系統用戶沒有相應的存取權,這些端點就會傳回錯誤代碼 200
。
請注意,如果您將系統用戶在 WhatsApp Business 帳戶上的商家資產存取權設定為授予部分存取權,則可以進一步限制用戶對 WhatsApp Business 帳戶特定資產或操作的存取權。舉例來說,如果您擁有一間大型企業,並希望特定部門對 WhatsApp Business 帳戶的範本和企業電話號碼資料只有讀取權限,便可以為相關部門建立系統用戶,並將細項存取權設為僅限查看相關資料。
如要設定 WhatsApp Business 帳戶的商家資產存取權,請按照下列步驟操作:
我們建議使用 Postman 收藏或 cURL 來測試端點。雖然您可以使用 Graph API 測試工具,但此工具會將憑證作為查詢字串參數傳遞,我們並不建議這種傳遞方式;請改為在要求標題中傳遞憑證。
如要取得特定商家的相關資訊,請向 WhatsAppBusinessAccount
端點傳送 GET
要求,其中 <WHATSAPP_BUSINESS_ACCOUNT_ID>
是您的 WhatsApp Business 帳戶編號。
curl -i -X GET 'https://graph.facebook.com/v21.0
/<WHATSAPP_BUSINESS_ACCOUNT_ID>' \
-H 'Authorization: Bearer <ACCESS_TOKEN>'
{ "id": "<WHATSAPP_BUSINESS_ACCOUNT_ID>", "name": "Your WhatsApp Business Account Name", "timezone_id": "1", "message_template_namespace": "05155c78_261e_4b2f_82b3_d7958d4cf75f" }
如要取得特定商家的特定資訊(例如名稱、訊息範本和手機號碼),請向 WhatsAppBusinessAccount
端點傳送 GET
要求(其中 <WHATSAPP_BUSINESS_ACCOUNT_ID>
是您的 WhatsApp Business 帳戶編號),並將 fields
參數設定為要被傳回的項目清單。
curl -i -X GET 'https://graph.facebook.com/v21.0
/<WHATSAPP_BUSINESS_ACCOUNT_ID>?fields=id,name,message_templates,phone_numbers' \
-H 'Authorization: Bearer <ACCESS_TOKEN>'
{ "id": "<WHATSAPP_BUSINESS_ACCOUNT_ID>", "name": "Your WhatsApp Business Account Name", "message_templates": { "data": [ { "name": "hello_world", "components": [ { "type": "HEADER", "format": "TEXT", "text": "Hello World" }, { "type": "BODY", "text": "Welcome and congratulations!! This message demonstrates your ability to send a message notification from WhatsApp Business Platform. Thank you for taking the time to test with us." }, { "type": "FOOTER", "text": "WhatsApp Business Team" } ], "language": "en_US", "status": "APPROVED", "category": "ACCOUNT_UPDATE", "id": "307191531401674" }, { "name": "sample_flight_confirmation", "components": [ { "type": "HEADER", "format": "DOCUMENT" }, { "type": "BODY", "text": "Confirmamos tu vuelo a {{1}}-{{2}} para el {{3}}." }, { "type": "FOOTER", "text": "Este mensaje proviene de un negocio no verificado." } ], "language": "es", "status": "APPROVED", "category": "TICKET_UPDATE", }, ...
呼叫類型 | 端點 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
呼叫類型 | 端點 |
---|---|
|
|
|
|
|
|
|
|