GET /v1/templates/{template_id}
Returns one template by its template_id: WhatsApp’s own template ID, the id field in
list and create responses.
curl "$HELLO_API_URL/v1/templates/1234567890123456" \ -H "Authorization: Bearer $HELLO_API_KEY"A common use is polling a newly created template until its status changes from PENDING to
APPROVED or REJECTED.
Response 200
Section titled “Response 200”{ "id": "1234567890123456", "waba_id": "9999999999987654", "name": "order_shipped", "language": "en", "status": "REJECTED", "category": "UTILITY", "components": [ { "type": "BODY", "text": "Hi {{1}}, your order {{2}} has shipped.", "example": { "body_text": [["Asha", "#10432"]] } } ], "rejected_reason": "INVALID_FORMAT", "quality_score": { "score": "UNKNOWN" }, "status_updated_at": "2026-09-26T11:02:00Z", "created_at": "2026-09-26T11:00:00Z", "updated_at": "2026-09-26T11:02:00Z"}The template object
Section titled “The template object”| Field | Type | Description |
|---|---|---|
id |
string | WhatsApp’s own template ID (numeric) |
waba_id |
string | The WhatsApp Business Account the template belongs to (Hello extension) |
name |
string | Template name, used when sending |
language |
string | Language code, used when sending |
status |
string | APPROVED, PENDING, REJECTED, PAUSED, DISABLED and so on. Only APPROVED templates can be sent. |
category |
string | MARKETING, UTILITY or AUTHENTICATION |
parameter_format |
string | NAMED or POSITIONAL, when set |
components |
array | Header, body, footer, buttons and any other component type, in WhatsApp’s own template format — stored and returned without loss |
rejected_reason |
string | Why WhatsApp rejected the template, when status is REJECTED |
quality_score |
object | WhatsApp’s quality rating |
status_updated_at, quality_updated_at |
timestamp | When status or quality last changed (Hello extension) |
created_at, updated_at |
timestamp | Hello extension |
Fields with no value are left out. Every other field WhatsApp puts on a template object
(sub_category, carousel cards, authentication and limited-time-offer fields, and so on) is
included as Meta returns it.
Errors
Section titled “Errors”| Status | code |
Cause |
|---|---|---|
401 |
UNAUTHORIZED |
Missing, wrong or disabled API key |
404 |
NOT_FOUND |
No such template in your organization |
500 |
Temporary server error. Retry. |