### Get all payment configurations sample request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/payments/payments-in/onboarding-apis Example cURL command to fetch payment configurations using a Bearer token for authentication. ```curl curl 'https://graph.facebook.com/v16.0/102290129340398/payment_configurations' \ -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### Implement URL button example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/components A concrete example of a URL button configured with a variable for dynamic content. ```json { "type": "URL", "text": "Shop Now", "url": "https://www.luckyshrub.com/shop?promo={{1}}", "example": [ "summer2023" ] } ``` -------------------------------- ### Example API Request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-library A cURL request example for searching templates by a specific keyword. ```bash curl 'https://graph.facebook.com/v25.0/102290129340398/message_templates?search="payments"' -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### Example Migration Response Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/pricing/change-billing-currency A concrete example of the JSON response returned after a successful migration initiation. ```json { "migration_id": "mig_01HZYK3ABCDEF4567890", "migration_status": "INITIATED" } ``` -------------------------------- ### Body Component Creation Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/components A concrete example of a body component using named parameters. ```json { "type": "body", "text": "Thank you, {{first_name}}! Your order number is {{order_number}}.", "example": { "body_text_named_params": [ { "param_name": "first_name", "example": "Pablo" }, { "param_name": "order_number", "example": "860198-230332" } ] } } ``` -------------------------------- ### Example Authentication Template Request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/authentication-templates/copy-code-button-authentication-templates A concrete example of a request payload for sending a verification code template. ```bash curl -L 'https://graph.facebook.com/v25.0/105954558954427/messages' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAJB...' \ -d '{ "messaging_product": "whatsapp", "recipient_type": "individual", "to": "12015553931", "type": "template", "template": { "name": "verification_code", "language": { "code": "en_US" }, "components": [ { "type": "body", "parameters": [ { "type": "text", "text": "J$FpnYnP" } ] }, { "type": "button", "sub_type": "url", "index": "0", "parameters": [ { "type": "text", "text": "J$FpnYnP" } ] } ] } }' ``` -------------------------------- ### List Signups Example Request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/in-app-signup A concrete example of a request to list signups with a limit of 10 items per page. ```bash curl 'https://graph.facebook.com/v25.0/102290129340398/signups?limit=10' \ -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### Get phone number alternate callback example response Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/override Example JSON response showing configured alternate callback URLs. ```json { "webhook_configuration": { "phone_number": "https://my-phone-alternate-callback.com/webhook", "whatsapp_business_account": "https://my-waba-alternate-callback.com/webhook", "application": "https://my-production-callback.com/webhook" }, "id": "106540352242922" } ``` -------------------------------- ### Example Template Configuration Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/payments/payments-in/enhanced-payment-links A sample template structure showing the body text and dynamic button configuration for a payment request. ```bash Body: "Hi {{1}}, reminder to pay for your insurance renewal #{{2}}. Amount: ₹{{3}}" Button: - Type of Action: "Visit website" - Button Text: "Pay Now" - URL Type: Dynamic - Website URL: https://pg.io/i/ ``` -------------------------------- ### Get business profile API response Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/business-profiles.md Example JSON response returned upon a successful GET request to the business profile endpoint. ```json { "data": [ { "about": "Succulent specialists!", "address": "1 Hacker Way, Menlo Park, CA 94025", "description": "At Lucky Shrub, we specialize in providing a...", "email": "lucky@luckyshrub.com", "profile_picture_url": "https://pps.whatsapp.net/v/t61.24...", "websites": [ "https://www.luckyshrub.com/" ], "vertical": "RETAIL", "messaging_product": "whatsapp" } ] } ``` -------------------------------- ### Get phone number alternate callback example request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/override Example cURL request to fetch the webhook configuration for a specific phone number ID. ```bash curl 'https://graph.facebook.com/v25.0/106540352242922?fields=webhook_configuration' \ -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### Example Metadata Response Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/solution-providers/manage-phone-numbers Sample JSON response containing display name status and onboarding information. ```json { "data": [ { "id": "1972385232742141", "display_phone_number": "+1 631-555-1111", "last_onboarded_time": "2023-08-22T19:05:53+0000", "name_status": "APPROVED", "new_name_status": "APPROVED" } ] } ``` -------------------------------- ### Get a specific sequence request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/ctwa/welcome-message-sequences.md Example cURL request to fetch a sequence by its ID. ```curl curl -X GET \ -F 'sequence_id="6987565"' "https://graph.facebook.com/v14.0/395394933592466/welcome_message_sequences" -H 'Authorization: Bearer BEAiil...' ``` -------------------------------- ### Full Embedded Signup Implementation Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/embedded-signup/implementation.md Complete script containing SDK initialization, message event listener, login callback, and launch method. ```html ``` -------------------------------- ### Get Subscribed Apps Sample Request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/solution-providers/manage-webhooks Example cURL request to fetch subscribed apps for a WABA. ```curl curl \ 'https://graph.facebook.com/v25.0/102289599326934/subscribed_apps' \ -H 'Authorization: Bearer EAAJi...' ``` -------------------------------- ### Example request for template previews Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/authentication-templates/authentication-templates A cURL command demonstrating how to fetch authentication template previews with specific parameters. ```bash curl 'https://graph.facebook.com/v17.0/102290129340398/message_template_previews?category=AUTHENTICATION&languages=en_US,es_ES&add_security_recommendation=true&code_expiration_minutes=10&button_types=OTP' \ -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### View Conversational Components Configuration Response Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/business-phone-numbers/conversational-components.md Example response showing the currently configured prompts and commands. ```json { "conversational_automation": { "prompts": [ "Find the best hotels in the area", "Find deals on rental cars" ], "commands": [ { "command_name": "tickets", "command_description": "Book flight tickets" }, { "command_name": "hotel", "command_description": "Book hotel" } ] }, "id": "123456" } ``` -------------------------------- ### Get a single phone number sample request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/business-phone-numbers/phone-numbers.md Example cURL request to fetch phone number details using an access token. ```curl curl \ 'https://graph.facebook.com/v15.0/105954558954427/' \ -H 'Authorization: Bearer EAAFl...' ``` -------------------------------- ### Create a Seasonal Promotion Template Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/components Example request for a marketing template featuring a text header, body with variables, footer, and quick-reply buttons. ```bash curl -L 'https://graph.facebook.com/v25.0/102290129340398/message_templates' \ -H 'Authorization: Bearer EAAJB...' \ -H 'Content-Type: application/json' \ -d ' { "name": "seasonal_promotion", "language": "en_US", "category": "MARKETING", "components": [ { "type": "HEADER", "format": "TEXT", "text": "Our {{1}} is on!", "example": { "header_text": [ "Summer Sale" ] } }, { "type": "BODY", "text": "Shop now through {{1}} and use code {{2}} to get {{3}} off of all merchandise.", "example": { "body_text": [ [ "the end of August","25OFF","25%" ] ] } }, { "type": "FOOTER", "text": "Use the buttons below to manage your marketing subscriptions" }, { "type":"BUTTONS", "buttons": [ { "type": "QUICK_REPLY", "text": "Unsubscribe from Promos" }, { "type":"QUICK_REPLY", "text": "Unsubscribe from All" } ] } ] }' ``` -------------------------------- ### Example Error Response: Phone Number Not Eligible for Encryption Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/reference/whatsapp-business-phone-number/business-encryption-api/v23.0.md This JSON structure indicates that the phone number is not eligible for encryption configuration. Ensure the phone number meets all prerequisites for encryption setup. ```json { "error": { "message": "Phone number is not eligible for encryption configuration", "type": "GraphMethodException", "code": 100, "fbtrace_id": "AXsgnV2Cm3ZMGF3dF_cfYIn" } } ``` -------------------------------- ### GET /{Version}/{Business-ID}/client_whatsapp_business_accounts Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/reference/business/client-whatsapp-business-accounts-api/v25.0.md Retrieves a list of WhatsApp Business Accounts shared with the specified business. This is useful for monitoring WABA relationships, verifying configurations, and managing multi-business WhatsApp messaging setups. ```APIDOC ## GET /{Version}/{Business-ID}/client_whatsapp_business_accounts ### Description Get Client WhatsApp Business Accounts Retrieve a list of WhatsApp Business Accounts that have been shared with the specified business. **Use Cases:** - Monitor shared WABA relationships and permissions - Verify WABA configuration and status information - Retrieve WABA details for business integrations - Manage multi-business WhatsApp messaging setups ### Method GET ### Endpoint `https://graph.facebook.com/{Version}/{Business-ID}/client_whatsapp_business_accounts` ### Header Parameters - **User-Agent** (string) - The user agent string identifying the client software making the request. - **Authorization** (string) - Required - Bearer token for API authentication. This should be a valid access token obtained through the appropriate OAuth flow or system user token. ### Path Parameters - **Version** (string) - Required - Graph API version to use for this request. Determines the API behavior and available features. - **Business-ID** (string) - Required - Your Business ID. This ID can be found in your Meta Business Suite URL or through business management APIs. ### Query Parameters - **fields** (string) - Comma-separated list of fields to include in the response. If not specified, default fields will be returned (id, name, currency, timezone_id). Available fields: id, name, account_review_status, purchase_order_number, audiences, ownership_type, subscribed_apps, business_verification_status, country, currency, timezone_id, on_behalf_of_business_info, schedules, is_enabled_for_insights, dcc_config, message_templates, phone_numbers - **business_type** (array of One of "STANDARD", "PREMIUM", "ENTERPRISE") - Filter results by WhatsApp Business Account type - **limit** (integer) - Maximum number of WhatsApp Business Accounts to return per page. Default is 25, maximum is 100. - **after** (string) - Cursor for pagination. Use this to get the next page of results. - **before** (string) - Cursor for pagination. Use this to get the previous page of results. - **find** (string) - Find a specific WhatsApp Business Account by ID ### Response #### Success Response (200) - **id** (string) - The unique identifier for the WhatsApp Business Account. - **name** (string) - The name of the WhatsApp Business Account. - **currency** (string) - The currency associated with the WhatsApp Business Account. - **timezone_id** (string) - The timezone ID for the WhatsApp Business Account. *Note: Other fields may be returned based on the `fields` query parameter.* ``` -------------------------------- ### Handling INIT Action Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/gettingstarted/personalised-offer Processes the initial request when a user opens the flow to display the product selector. ```javascript // handle initial request when opening the flow and display PRODUCT_SELECTOR screen if (action === "INIT") { return { ...SCREEN_RESPONSES.PRODUCT_SELECTOR }; } ``` -------------------------------- ### Verify Locust Installation Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/support/load-testing Check the installed version of Locust. ```bash locust -V ``` -------------------------------- ### Launch WhatsApp Signup with v3 Configuration Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/embedded-signup/version-3.md Use this syntax to initialize the Embedded Signup flow with the required v3 versioning and feature configuration. ```javascript // Launch method and callback registration const launchWhatsAppSignup = () => { FB.login(fbLoginCallback, { config_id: '', // your configuration ID goes here response_type: 'code', override_default_response_type: true, extras: { version: 'v3' setup: {}, features: [], featureType: '' } } ``` -------------------------------- ### Handle Flow Initialization Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/gettingstarted/pre-approved-loan Responds to the INIT action to display the initial loan screen. ```javascript // handle initial request when opening the flow and display LOAN screen if (action === "INIT") { return { ...SCREEN_RESPONSES.LOAN, }; } ``` -------------------------------- ### UNSUPPORTED_FLOW_JSON_VERSION Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/reference/error-codes Example of a deprecated or unsupported version number. ```json { "version": 100, "screens": [ ... ] } ``` -------------------------------- ### Webhook Payload Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/message_template_quality_update A concrete example of a message_template_quality_update webhook payload. ```json { "entry": [ { "id": "102290129340398", "time": 1674864290, "changes": [ { "value": { "previous_quality_score": "GREEN", "new_quality_score": "YELLOW", "message_template_id": 806312974732579, "message_template_name": "welcome_template", "message_template_language": "en-US" }, "field": "message_template_quality_update" } ] } ], "object": "whatsapp_business_account" } ``` -------------------------------- ### Create a business phone number example request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/solution-providers/registering-phone-numbers A cURL example demonstrating how to create a business phone number. ```bash curl 'https://graph.facebook.com/v25.0/102290129340398/phone_numbers' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAH7...' \ -d '{ "cc": "1", "phone_number": "14195551518", "verified_name": "Lucky Shrub" }' ``` -------------------------------- ### Webhook Payload Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/business_capability_update A concrete example of a business_capability_update webhook payload. ```json { "entry": [ { "id": "524126980791429", "time": 1739321024, "changes": [ { "value": { "max_daily_conversations_per_business": 2000, "max_phone_numbers_per_waba": 25 }, "field": "business_capability_update" } ] } ], "object": "whatsapp_business_account" } ``` -------------------------------- ### Example Template Migration Request Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-migration A concrete example showing how to migrate templates using query parameters for the source WABA and page number. ```bash curl -X POST 'https://graph.facebook.com/v25.0/104996122399160/migrate_message_templates?source_waba_id=102290129340398&page_number=0' \ -H 'Authorization: Bearer EAAJB...' ``` -------------------------------- ### RichText Image Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/guides/components Example of including a base64 encoded image. ```json { "type": "RichText", "text": ["![Image alt text](data:image/png;base64,)"] } ``` -------------------------------- ### Create an Order Confirmation Template Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/components Example request for a utility template including a document header, body with variables, and phone/URL buttons. ```bash curl -L 'https://graph.facebook.com/v16.0/102290129340398/message_templates' \ -H 'Authorization: Bearer EAAJB...' \ -H 'Content-Type: application/json' \ -d '  {    "name": "order_confirmation",    "language": "en_US",    "category": "UTILITY",    "components": [      {        "type": "HEADER",        "format": "DOCUMENT",        "example": {          "header_handle": [            "4::YX..."          ]        }      },      {        "type": "BODY",        "text": "Thank you for your order, {{1}}! Your order number is {{2}}. Tap the PDF linked above to view your receipt. If you have any questions, please use the buttons below to contact support. Thank you for being a customer!",        "example": {          "body_text": [            [              "Pablo","860198-230332"            ]          ]        }      },      {        "type": "BUTTONS",        "buttons": [          {            "type": "PHONE_NUMBER",            "text": "Call",            "phone_number": "15550051310"          },          {            "type": "URL",            "text": "Contact Support",            "url": "https://www.luckyshrub.com/support"          }        ]      }    ]  }' ``` -------------------------------- ### UNAVAILABLE_FLOW_JSON_VERSION Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/reference/error-codes Example of a version that is not enabled for the current WABA ID. ```json { "version": "A.B", "screens": [ ... ] } ``` -------------------------------- ### Interactive Preview URL Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/guides/flowsapi Example of a configured preview URL with interactive mode, flow action, and debug parameters enabled. ```text https://business.facebook.com/wa/manage/flows/550.../preview/?token=b9d6...&interactive=true&flow_action=navigate&flow_action_payload=%7B%22screen%22%3A%22FIRST_SCREEN%22%2C%22data%22%3A%7B%22screen_heading%22%3A%22hello%20world%22%7D%7D&debug=true ``` -------------------------------- ### Start RtpEngine Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/calling/integration-examples.md Command to initialize the RtpEngine service with specific network interfaces. ```https /usr/bin/rtpengine --listen-ng={local-ip}:22222 --interface={local-ip}\!{public-ip} -f -E ``` -------------------------------- ### RichText Link Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/guides/components Example of creating a hyperlink within the RichText component. ```json { "type": "RichText", "text": [ "[WhatsApp Flows let you build rich, interactive screens](https://business.whatsapp.com/products/whatsapp-flows)" ] } ``` -------------------------------- ### Call the Intent API Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/marketing-messages/onboard-business-customers Use this request to initiate the onboarding process for an end business. Requires a System User Access Token with advanced permissions. ```bash curl -i -X POST \ "https://graph.facebook.com///onboard_partners_to_mm_lite?access_token=" ``` -------------------------------- ### RichText Formatting Examples Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/guides/components Examples of bold, italic, and strikethrough text formatting. ```json { "type": "RichText", "text": [ "Let's make a **bold** statement" ] } ``` ```json { "type": "RichText", "text": [ "Let's make this text *italic*" ] } ``` ```json { "type": "RichText", "text": [ "Let's make this text ~~Strikethrough~~" ] } ``` ```json { "type": "RichText", "text": [ "This text is ~~***really important***~~" ] } ``` -------------------------------- ### MISSING_FLOW_JSON_VERSION Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/reference/error-codes Example where the required version field is omitted from the Flow JSON. ```json { "data_api_version": "3.0", "screens": [ ... ] } ``` -------------------------------- ### Create an Order Delivery Update Template Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/components Example request for a utility template with a location header, body text, footer, and a quick reply button. ```bash curl 'https://graph.facebook.com/v25.0/102290129340398/message_templates' \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer EAAJB...' \ -d ' { "name": "order_delivery_update", "language": "en_US", "category": "UTILITY", "components": [ { "type": "HEADER", "format": "LOCATION" }, { "type": "BODY", "text": "Good news {{1}}! Your order #{{2}} is on its way to the location above. Thank you for your order!", "example": { "body_text": [ [ "Mark", "566701" ] ] } }, { "type": "FOOTER", "text": "To stop receiving delivery updates, tap the button below." }, { "type":"BUTTONS", "buttons": [ { "type": "QUICK_REPLY", "text": "Stop Delivery Updates" } ] } ] }' ``` -------------------------------- ### INVALID_FLOW_JSON_VERSION Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/flows/reference/error-codes Example of an invalid version string provided in the Flow JSON. ```json { "version": "2024.0", ... } ``` -------------------------------- ### Accept the solution Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/solution-providers/multi-partner-solution-embedded-creation Use the system user access token and the solution ID to accept the created solution. ```curl curl -X POST 'https://graph.facebook.com/v20.0/795033096057724/accept' \ -H 'Authorization: Bearer EAAAT... ``` ```json { "success": true } ``` -------------------------------- ### Business Object Syntax Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/embedded-signup/pre-filled-data.md Define the business portfolio details to pre-fill the business portfolio screen using the setup object. ```html setup: { business: { id: , name: '', email: '', website: '', address: { streetAddress1: '', streetAddress2: '', city: '', state: '', zipPostal: '', country: '' }, phone: { code: , number: '' }, timezone: '' } } ``` -------------------------------- ### Example preVerifiedPhone object Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/embedded-signup/pre-filled-data.md A concrete example of the preVerifiedPhone object with a sample ID. ```js setup: { preVerifiedPhone: { ids: [ '106540352242922' ] } } ``` -------------------------------- ### partner_solutions Webhook Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/partner_solutions A concrete example of a webhook payload indicating a solution has been created. ```json { "entry": [ { "changes": [ { "field": "partner_solutions", "value": { "event": "SOLUTION_CREATED", "solution_id": "774485461512159", "solution_status": "INITIATED" } } ], "id": "506914307656634", "time": 1739321024 } ], "object": "whatsapp_business_account" } ``` -------------------------------- ### Launch with existing business portfolio Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/embedded-signup/pre-filled-data.md Configures the signup flow to use an existing business portfolio ID along with pre-verified phone and display profile data. ```js // Launch method and callback registration const launchWhatsAppSignup = () => { FB.login(fbLoginCallback, { config_id: '31602279155865', response_type: 'code', override_default_response_type: true, extras: { setup: { business: { id: '2729063490586005' }, preVerifiedPhone: { ids: [ '106540352242922' ] }, phone: { displayName: 'Wind & Wool', category: 'APPAREL', description: 'Bespoke artisan apparel and lifestyle goods from upcoming designers.' } }, featureType: '', sessionInfoVersion: '3', } }); } ``` -------------------------------- ### Start Janus Server Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/calling/integration-examples.md Command to launch the Janus gateway with specific debugging, STUN server, and configuration file parameters. ```bash /usr/share/janus/bin/janus --debug-level=6 --libnice-debug=on -S stun.l.google.com:19302 --log-file=/var/log/janus.log --config=/usr/share/janus/etc/janus/janus.jcfg ``` -------------------------------- ### message_template_components_update Webhook Example Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/message_template_components_update A concrete example of a webhook payload for a template component update. ```json { "entry": [ { "id": "102290129340398", "time": 1751250234, "changes": [ { "value": { "message_template_id": 1315502779341834, "message_template_name": "order_confirmation", "message_template_language": "en_US", "message_template_title": "Your order is confirmed!", "message_template_element": "Thank you for your order, {{1}}! Your order number is {{2}}. If you have any questions, contact support using the buttons below. Thanks again!", "message_template_footer": "Lucky Shrub: the Succulent Specialists!", "message_template_buttons": [ { "message_template_button_type": "PHONE_NUMBER", "message_template_button_text": "Phone support", "message_template_button_phone_number": "+15550783881" }, { "message_template_button_type": "URL", "message_template_button_text": "Email support", "message_template_button_url": "https://www.luckyshrub.com/support" } ] }, "field": "message_template_components_update" } ] } ], "object": "whatsapp_business_account" } ```