Table of Contents
New Feature in the WhatsApp Template API: Sending Buttons with Dynamic URLs via Variables
wolkvox Manager incorporates a new enhancement to its WhatsApp Template API, now allowing the inclusion of buttons with dynamic URLs (variables) in Utility and Marketing type templates.
This update expands the personalization capabilities in messages sent via WhatsApp, making it possible for each action button to redirect the user to a unique link, adapted to their profile, interest, or context.
This way, more interactive and specific templates can be built, facilitating the connection between automated campaigns and the sales or service flows of each company.
Benefits
- Advanced Personalization: Each button can contain a personalized URL per user, campaign, or flow.
- Greater Control from the API: The URL variable is dynamically replaced during message sending, without needing to edit the template in Meta.
- Operational Flexibility: Allows including up to two buttons per template, each with its own variable parameter.
- Total Compatibility: Works with Utility and Marketing type templates, approved by Meta Business.
- Campaign Optimization: Boosts conversion strategies by redirecting the customer to specific pages, products, or forms according to their needs.
WhatsApp Template Configuration
The template must be of type Utility or Marketing and have the following configuration:
- In the Buttons section, select the type “Visit Website” and indicate the URL type: “Dynamic URL”.
- In the URL field, write the structure with the variable {{1}} for both buttons, for example:
- In the Example for Variable 1 field, place the complete URL replacing the variable, for example:
- You can add up to two buttons, repeating the previous configuration.
- Note: If you select “Static URL”, the template will show an error when attempting to send it.
- Save the template and synchronize it once it is approved by Meta.
API Configuration
To send a message with dynamic buttons, use the API with the following raw format:
{
"connector_id": "",
"telephone": "",
"template_name": "",
"template_vars": "",
"customer_id": "",
"url_attach": "",
"url_params": [
{
"index": 0,
"text": ""
},
{
"index": 1,
"text": ""
}
]
}
Explanation of the main parameters:
- connector_id: ID of the WhatsApp connector configured in wolkvox Manager.
- telephone: customer's number in international format.
- template_name: exact name of the template approved by Meta.
- template_vars: replacement values for the message body variables.
- url_attach: Public URL of a file (image, video, or document) if the template supports it.
- url_params: array that defines the buttons to be included in the message.
- index: position of the button (0 for the first, 1 for the second).
- text: value that will replace the variable within the dynamic URL.
Example:
If the template URL is https://www.wolkvox.com/soluciones/{{1}} and "text": "sales" is sent in the API, the final link visible to the customer will be https://www.wolkvox.com/solutions/sales.
Result in WhatsApp
Upon receiving the message, the customer will see the personalized buttons. For example:
- sales → opens https://www.wolkvox.com/solutions/sales
- cobranza → opens https://www.wolkvox.com/solutions/collections
This allows each user to directly access the link corresponding to their context or interest.

Important Notes
- Only up to 2 buttons can be added per template.
- If you try to include more than two, the sending will result in an error.
- The variable in the URL must obligatorily be **{{1}}** for both buttons.
- This is fundamental for the API to correctly replace the values of the dynamic URLs.
- Both buttons must be of type “Visit Website” with “Dynamic URL”.
- If a static URL is configured, the message sending will fail.
- The button name (visible text) is not variable; what changes dynamically is the value within the URL.
- To read the official API documentation [click here].
Concurrency Control in API Execution in wolkvox Manager
With the aim of improving the stability, performance, and reliability of the integration ecosystem, wolkvox Manager incorporates a new concurrency control mechanism in the execution of its APIs.
This enhancement ensures that when an API is in the process of execution, it cannot be called again until its operation is completed. This prevents the simultaneous execution of multiple identical requests, especially in APIs with prolonged response processes or those that involve high resource consumption.
The system returns an informational response when it detects that the same API is already being processed:
{
"code": "409",
"error": "Conflict",
"msg": "This request is already being processed. Please wait a few seconds and try again."
}This change contributes to a more controlled operation, reducing the possibility of overloads or inconsistencies during the execution of critical integrations.
Benefits
- Greater Stability: Prevents duplicate executions that could affect system performance or cause data conflicts.
- Performance Optimization: Frees up server resources by preventing unnecessary simultaneous requests.
- Error Prevention: Reduces the risk of processing errors and ensures more predictable responses.
- Controlled Behavior in External Integrations: Applications consuming wolkvox Manager APIs will receive a clear response when a previous execution is underway.
- Automatic Lock Management: The control is automatically released upon completion of the active execution, without manual intervention.
New “button url (api cloud)” template for sending messages with a link button on WhatsApp
In chat-type routing points within wolkvox Studio, a new template called “button url (api cloud)” has been incorporated into the “Reply chat” component, which allows sending WhatsApp messages that include buttons with links (URL), and optionally, attached text, image, or document.
This enhancement facilitates the creation of promotional, informational, or self-service messages without the need for a previously approved template in the WhatsApp connector, thus streamlining communication between businesses and customers.
Benefits
- Communication Agility: It is no longer required to create or approve templates in Meta Business to send messages with buttons on WhatsApp.
- Total Customization: The message text, header, footer, and button can be freely configured.
- Multimedia Support: Allows including images, videos, or documents directly from a public URL.
- Immediate Interaction: Customers can access the desired link with one click, boosting marketing, sales, or self-service campaigns.
- Flexible Integration: The “Reply chat” component can use this template within bot flows or automated campaigns.
Configuration
- Open the configuration window for the “Reply chat” component.
- Go to the “Advanced” tab.
- Select the “button url (api cloud)” template.
- Click the “Load template” button.
- The template JSON will load. Modify the template according to your needs.
- Save the changes made.
{
"type": "button_url",
"display_text": "Button text",
"url": "https:\/\/example.com\/landing",
"body_text": "(Optional) Body text",
"footer_text": "(Optional) Footer text",
"header": {
"type": "(Optional) image, video, document, text",
"url": "(Optional) https:\/\/example.com\/banner.png",
"text_header": "(Optional) Header text"
}
}
JSON Field Configuration
| Field | Description |
| type | Keep the value "button_url" unchanged. |
| display\_text | Text that will be displayed on the button. |
| url | The link that the button will direct to. |
| body\_text | Message body (optional). |
| footer\_text | Footer text (optional). |
| header.type | Defines the header type: image, video, document, or text. |
| header.url | Public URL of the multimedia resource (if applicable). |
| header.text\_header | Header text (only if type is text). |
Notes
- If you define "text" in `header.type`, you must delete the "url" field and use "text\_header".
- If you choose "image", "video", or "document", delete "text\_header" and keep "url".
Result on WhatsApp
The customer will receive a rich-formatted message that includes:
- Image or multimedia header.
- Informational or promotional text.
- An interactive button with the configured link.
