Deep links
Updated: Nov 18, 2025 Marketing Messages API for WhatsApp (formerly known as Marketing Messages Lite API) is now generally available. You can map an Android deep link to a marketing template URL button that, when tapped, loads a particular location or content within your app.
If you have not onboarded to the Marketing Messages API for WhatsApp (MM API for WhatsApp), your marketing templates will not display any conversion metrics. Learn more about how to measure conversion.
Template creation via WhatsApp Manager
To create a template with a button mapped to an Android deep link: Access WhatsApp Manager. Navigate to the Message templates > Manage templates panel and click the Create template button. Select Marketing (tab) > Custom (radio button) and click the Next button. In the Buttons section, click the + Add buttons dropdown menu and select Visit website. Check the Track app conversions checkbox to reveal the deep link fields (pictured below). Complete each field using their tooltips or form field descriptions below as guidance. Add any additional components you’d like your template to use, name your template, and submit it for approval. Note that you can also use the Manage templates panel to edit an existing template and add a deep link-mapped button, but the template will have to undergo template review again.
Form fields
| Field label | Description | Example value |
|---|---|---|
| Android deep link | Required. Android deep link URI. | luckyshrub://deals/summer_solstice |
| Android fallback URL | Optional. Fallback URL. If the WhatsApp client cannot load the deep link URI, the client will load this URL in the device’s default web browser. If omitted, the client will attempt to load the URL specified in the Website URL field instead. | https://www.luckyshrub.com/deals/summer_solstice |
| Button Text | Required. Button label text. Maximum 25 characters. | View deal |
| Meta app ID | Required. This is a list of the Meta app(s) associated with your business portfolio. Select the app whose access token you will use to send the template. | Lucky Shrub (634974688087057) |
| Type of Action | Required. Must be set to Visit website. | Visit website |
| URL Type | Required. Set to Static if your Android deep link or Android fallback URL has no dynamic values, otherwise set to Dynamic. | Static |
| Website URL | Required. URL of a website to load if the WhatsApp user views the message on a non-Android device, or if the WhatsApp client cannot load your Android deep link URI and no Android fallback URL is specified. | https://www.luckyshrub.com/ |
Template creation via API
Use the POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/message_templates endpoint to create the template and include a URL button component mapped to your Android deep link. Note that you can also use the POST /<TEMPLATE_ID> endpoint to edit an existing template and add a URL button component, but the template will have to undergo template review again.Request syntax
Template components can vary based on your needs. This example syntax creates a marketing template with the following components: text header, without parameters body, without parameters URL button, mapped to a deep link URI and fallback URLRequest parameters
| Placeholder | Description | Example value |
|---|---|---|
<ACCESS_TOKEN> String | Required. System token or business token. | EAAJB... |
<ANDROID_DEEP_LINK> String | Required if using a URL button component mapped to a deep link. Android deep link URI. The WhatsApp client will attempt to load this URI if the WhatsApp user taps the button on an Android device. | luckyshrub://deals/summer/ |
<API_VERSION> String | Optional Graph API version. | v22.0 |
<BODY_TEXT> String | Required if using a body component. Template body text. Variables are supported. Maximum 1024 characters. | Beat the heat with our sizzling summer deals on succulents! At Lucky Shrub, we... |
<BUTTON_LABEL_TEXT> String | Required if using a URL button component. Button label text. Maximum 25 characters. | View Deals |
<BUTTON_URL> String | Required if using a URL button component. URL of a website that the WhatsApp client will attempt to load in the device’s default web browser when the button is tapped. For deep links, this URL only be used if the WhatsApp user taps the button on a non-Android device. | https://www.luckyshrub.com/deals/summer/ |
<FALLBACK_URL> String | Required if using a URL button mapped to a deep link. URL of a website that the WhatsApp client will attempt to load in the device’s default web browser when the button is tapped but unable to load the Android deep link URI. | https://www.luckyshrub.com/deals/summer/ |
<HEADER_TEXT> String | Required if using a text header component. Template header text string. Supports up to 1 parameter. If this string contains a parameter, you must include an example property.Maximum 60 characters. | Sizzling Summer Deals at Lucky Shrub |
<META_APP_ID> Integer | Required if using a URL button mapped to a deep link. Your Meta app ID. | 634974688087057 |
<TEMPLATE_LANGUAGE> String | Required. Template language and locale code. | en_US |
<TEMPLATE_NAME> String | Required. Template name. Maximum 512 characters. | summer_deals_deep_link_v1 |
<WHATSAPP_BUSINESS_ACCOUNT_ID> String | Required. WhatsApp Business Account ID. | 102290129340398 |

