Update WhatsApp Template
update-whatsapp-templateReplace a WhatsApp template's content and resubmit it to Meta for review; approved templates return to pending and cannot be sent until approved again.
Instructions
Replace a WhatsApp template's content and resubmit it to Meta. components is the whole new content, not a patch: read the current one with get-whatsapp-template first. Name, language and category cannot be changed.
The template returns to pending, and only approved templates can be sent, so editing an approved template takes it out of use until Meta approves it again. Meta also limits edits of an approved template to one per 24 hours and ten per 30 days. Before calling you MUST show the user the new content and confirm.
Only approved and rejected templates can be edited. Authentication templates and templates adopted from Meta's library cannot.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"id": "<id>",
"components": "<components>"
},
"name": "update-whatsapp-template"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The WhatsApp template id. | |
| components | Yes | The template content in Meta's component format, with `type`, `format` and button `type` in uppercase. Placeholders are named in lowercase snake_case, e.g. `{{first_name}}`: numbered ones such as `{{1}}` are refused, and a name can be used in the header or the body, not both. Example: [{"type":"HEADER","format":"TEXT","text":"Your order"},{"type":"BODY","text":"Hi {{first_name}}, order {{order_id}} has shipped."},{"type":"FOOTER","text":"Acme Store"},{"type":"BUTTONS","buttons":[{"type":"URL","text":"Track","url":"https://example.com/track"}]}] |