Skip to main content

WhatsApp Cloud

WhatsApp Cloud API is Meta's cloud-based messaging platform that enables businesses to send and receive messages, manage profiles, handle compliance, and maintain user block lists through WhatsApp. The WhatsApp Cloud connector enables you to send pre-approved template messages to customers, manage WhatsApp Business Account settings, and integrate WhatsApp messaging capabilities into your data workflows. This connector is particularly useful for applications that need to send automated notifications, deliver marketing messages, provide customer support via WhatsApp, or integrate WhatsApp messaging with CRM and other business systems.

WhatsApp Cloud icon

Power end-to-end data operations for your WhatsApp Cloud API with Nexla. Our bi-directional WhatsApp Cloud connector is purpose-built for WhatsApp Cloud, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to WhatsApp Cloud or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your WhatsApp Cloud workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a WhatsApp Cloud credential, you'll need to obtain an access token and WhatsApp Business Account (WABA) ID from your Meta Business account. WhatsApp Cloud API uses Meta's Graph API, requiring OAuth 2.0 access tokens with appropriate permissions.

To obtain WhatsApp Cloud API credentials:

  1. Log in to your Meta Business account at https://business.facebook.com or navigate to the Meta for Developers portal at https://developers.facebook.com.

  2. Navigate to Meta for Developers > My Apps or access your existing app in the Meta for Developers console.

  3. If you don't have an app, click Create App and select Business as the app type. Fill in the required app information, including app name and contact email.

  4. In your app settings, navigate to WhatsApp > Getting Started or WhatsApp > API Setup.

  5. In the WhatsApp Cloud API setup, you'll need to:

    • Create or select a WhatsApp Business Account (WABA)
    • Note your WABA ID (WhatsApp Business Account ID). This is a unique identifier for your WhatsApp Business account and can be found in the WhatsApp Business Account settings or in the API setup section.
  6. To obtain an access token:

    • Navigate to Tools > Graph API Explorer in the Meta for Developers console
    • Select your app from the dropdown menu
    • Select the appropriate permissions (scopes) for WhatsApp Cloud API, such as:
      • whatsapp_business_management
      • whatsapp_business_messaging
    • Click Generate Access Token to create a temporary access token
    • For production use, you'll need to set up a long-lived access token or use OAuth 2.0 flow. To create a long-lived token, navigate to Settings > Basic in your app, and use the Access Token Tool to exchange your short-lived token for a long-lived one.
  7. Copy the Access Token and WABA ID. Store them securely, as you'll need them to authenticate API requests.

  8. Note the API Version. The default API version is typically v18.0, but you should use the latest stable version available. You can check the current API version in the Graph API Explorer or in your app's API settings.

WhatsApp Cloud API uses Meta's Graph API with OAuth 2.0 access tokens. The access token is sensitive information and should be kept secure. Access tokens may expire, so you may need to refresh them periodically or set up a long-lived token. The WABA ID identifies your specific WhatsApp Business Account and is required for most API operations. For detailed information about obtaining access tokens, refer to the WhatsApp Business Management API Getting Started Guide.

For detailed information about WhatsApp Cloud API authentication and setup, refer to the WhatsApp Cloud API Reference and Meta Graph API Authentication Guide.

Authenticate

Credentials required

Bearer token authentication using Meta access token

FieldRequiredSecretDescription
Access TokenYesYesYour Meta access token with WhatsApp Business API permissions
WhatsApp Business Account IDYesNoYour WhatsApp Business Account (WABA) ID
API VersionYesNoFacebook Graph API version (e.g., v18.0)

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – WhatsApp Cloud

WhatsAppCloudCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. In the Access Token field, enter the Meta access token that you obtained from your Meta Business account. This is the OAuth 2.0 access token with WhatsApp Cloud API permissions.

  3. In the WhatsApp Business Account ID field, enter your WABA ID (WhatsApp Business Account ID) that you obtained from your Meta Business account. This is the unique identifier for your WhatsApp Business Account.

  4. In the API Version field, enter the Facebook Graph API version. The default value is v18.0. You should use the latest stable version available.

    The access token is sensitive information and should be kept secure. Access tokens may expire, so you may need to refresh them periodically or set up a long-lived token. The access token is used as a Bearer token in the Authorization header for all API requests. The WABA ID is required for most WhatsApp Cloud API operations.

  5. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the WhatsApp Cloud connector tile, then select the credential that will be used to connect to the WhatsApp Cloud API, and click Next; or, create a new WhatsApp Cloud credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common WhatsApp Cloud API endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Send Template Message

This endpoint sends a pre-approved WhatsApp template message using phone number ID. Use this endpoint when you need to send automated notifications, deliver marketing messages, or send templated messages to customers via WhatsApp.

  • Enter the schedule in the Schedule field. This is a cron expression that determines when messages will be sent. The default value is 0 * * * * (every hour).
  • Enter the Phone Number ID in the Phone Number ID field. This is the WhatsApp Cloud Phone Number ID for sending messages. You can find this in your WhatsApp Business Account settings.
  • Enter the API version in the API Version field. The default value is v22.0. Use the version that matches your Meta Graph API version.
  • Enter the recipient phone number in the Recipient Phone Number field. This should be in international E.164 format (e.g., +1234567890).
  • Enter the template name in the Template Name field. This is the name of your approved WhatsApp template (e.g., hello_world). Templates must be pre-approved by Meta before use.
  • Enter the template language code in the Template Language Code field. This should be in the format language_COUNTRY (e.g., en_US for English US, hi_IN for Hindi India). The default value is en_US.

The Send Template Message endpoint uses POST requests to send pre-approved template messages via the WhatsApp Cloud API. Template messages must be approved by Meta before they can be sent. You can create and submit templates for approval in the Meta Business Manager. For more information about sending template messages, refer to the WhatsApp Cloud API Send Messages Guide.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

WhatsApp Cloud data sources can also be manually configured to ingest data from any valid WhatsApp Cloud API endpoint, including endpoints not covered by the pre-built templates or requiring chained API calls, custom authentication headers, or request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

WhatsApp Cloud API endpoints typically follow the pattern https://graph.facebook.com/{api_version}/{phone_number_id}/messages, and most operations use the POST method. The request body should be JSON containing a messaging_product field (set to "whatsapp"), a to field (recipient phone number in E.164 format), a type field, and the message content. The Authorization header with Bearer token is automatically included from your credential. Common Path to Data values for WhatsApp Cloud API responses include $.messages or $.data[*] for nested arrays.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new WhatsApp Cloud data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.