Skip to main content
template combines what Texter knows (routing rules, departments, send defaults) with what WhatsApp knows (provider_template: approval status and localized content). A template you just created lives in localizationDrafts until you submit it; approved content appears under provider_template.localizations.
Example template object

Top-level

Reply behavior

What happens after the recipient replies to this template.

provider_template

Localizations

Each item of provider_template.localizations[] describes one language variant as seen by WhatsApp.
The WhatsApp provider also passes through raw fields that vary by account type: WhatsApp Cloud accounts add id, name, category, previous_category, parameter_format; other account types add createdAt, lastUpdated and qualityScore ({score, reasons} - e.g. GREEN, YELLOW, RED).

Components

Each item of a localization’s components[] array:

defaults

Per-language values prefilled when sending the template if the caller does not provide overrides. Keyed by language code.

localizationDrafts

Map of language code to a draft localization - content created in Texter but not yet submitted to WhatsApp. Same component structure as approved localizations, without status.

Localization status values

Category values: MARKETING · UTILITY - WhatsApp may recategorize on approval. More enums and the ID cheat sheet: Enums & Common Fields.