Template Category
The category of a WhatsApp message template; determines the component rules. Used by: Create Template, Get Templates, Get Template Detail, and Update Template.Template Status
The review/lifecycle status of a template. Used by: Get Templates, Get Template Detail, Create Template, and Update Template.Template Component Type
Thetype of an entry in a response components array. Used by: Get Templates, Get Template Detail, and Update Template — all with expand=components.
Card Component Type
Thetype of a component inside a carousel card (components[].cards[].components[]). A card is a reduced template: it has no footer and no limited-time offer. Used by: Get Template Detail.
Header Format
The format of a template header (header.format), and of each carousel card header. Used by: Create Template and Update Template.
Requests and responses differ slightly. On the way in,
NONE is valid and is the default. On the way out, a HEADER component never reports NONE (the component is simply absent) but may report CAROUSEL for a carousel template’s header component.Not every format is valid everywhere:
AUTHENTICATION allows no header at all, a carousel card header must be IMAGE or VIDEO, and a limited-time offer header is limited to NONE / IMAGE / VIDEO.Button Type
The type of a template button (buttons[].type). Used by: Create Template and Update Template.
Category and component rules narrow this list:
AUTHENTICATION accepts only OTP, UTILITY accepts no OTP and no COPY_CODE, a carousel card accepts only QUICK_REPLY / URL / PHONE_NUMBER, and a limited-time offer accepts only COPY_CODE / URL.OTP Type
The sub-type of anOTP button (buttons[].otpType), used by AUTHENTICATION templates. Used by: Create Template and Update Template.
Template Expand
Optional expansions requested through the repeatableexpand query parameter. Used by: Get Templates and Get Template Detail.
Any other value is rejected with
422.
Template Language
The language code a template is created in (language). This is a closed list — a code outside it is rejected with 422, so it is not free-form BCP-47. Used by: Create Template.
The
language query filter on Get Templates is a plain string and is passed to Meta as-is, so it is not restricted to this list.Template Quality Score
The quality rating of a template, derived by Meta from user feedback. Used by: Get Templates and Get Template Detail.Template Parameter Format
How variables are referenced within a template. Used by: Get Templates and Get Template Detail.Template Rejected Reason
Why Meta rejected a template. Used by: Get Templates and Get Template Detail (rejectedReason).
Template Metrics Granularity
The time-bucket period for template analytics. Used by: Get Template Metrics (granularity query parameter; default DAILY).
Template Metrics Metric Type
Which metrics Meta should return. Repeatable via themetricType query parameter; omit it to get the core set. Anything outside the core set is surfaced per bucket under additionalMetrics. Used by: Get Template Metrics.
Template Metrics Product Type
The messaging product the metrics are scoped to. Used by: Get Template Metrics (productType query parameter; omit for all products).
Template Metrics Click Type
How a button click was recorded. Appears astype inside clicksBreakdown. Used by: Get Template Metrics.
Template Metrics Cost Type
The kind of cost line reported. Appears astype inside costBreakdown. Used by: Get Template Metrics.