Delete a template
Deletes a template by ID. Optionally, you can also delete the template from WhatsApp/Meta by setting delete_from_meta=true.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X DELETE "https://example.com/v3/templates/7ba7b820-9dad-11d1-80b4-00c04fd430c8" \ -H "Content-Type: application/json" \ -d '{ "delete_from_meta": false, "sandbox": false }'{
"success": false,
"data": null,
"error": {
"code": "VALIDATION_001",
"message": "Invalid template ID format.",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-09-11T11:33:05.8970276+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "RESOURCE_002",
"message": "Template not found",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-09-11T11:33:05.8970292+00:00",
"version": "v3"
}
}{
"success": false,
"data": null,
"error": {
"code": "INTERNAL_001",
"message": "An unexpected error occurred while deleting the template",
"details": null,
"doc_url": "https://docs.sent.dm/reference/api/error-catalog"
},
"meta": {
"request_id": "req_7X9zKp2jDw",
"timestamp": "2026-09-11T11:33:05.8970296+00:00",
"version": "v3"
}
}Update a template PUT
Updates an existing template's name, category, language, definition, or submits it for review.
List sender profiles GET
Lists the sender profiles under your organization, newest first, paginated with `page` and `page_size`. Each entry is the same document `GET /v3/sender-profiles/{id}` returns, with one difference: **listed markets carry no `compliance`**. Working out what a market still owes means a catalog lookup and a document read per market, and doing that for every profile on a page would turn one request into dozens to answer a question you did not ask. Read a single profile for that. `compliance` being **absent** is not the same as it being **empty**. Absent means it was not worked out here; empty means the market owes nothing. `api_key` is never returned. It is shown once, by create.