Whatsapp Create Template
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
Request
Meta language code, e.g. en_US or es_MX.
How the body’s placeholders are written: POSITIONAL for {{1}}, {{2}} or NAMED for {{first_name}}. Omit for Meta’s default, POSITIONAL. A template’s format also dictates the shape you must send: positional templates take an array of variables, named templates take an object keyed by parameter name.
Meta’s component array, passed through as given. Must include a BODY. Required unless library_template_name is set, which supplies its own. Positional: [{“type”: “BODY”, “text”: “Your order {{1}} has shipped.”, “example”: {“body_text”: [[“1234”]]}}]. Named: [{“type”: “BODY”, “text”: “Thanks {{first_name}}!”, “example”: {“body_text_named_params”: [{“param_name”: “first_name”, “example”: “Pablo”}]}}]. Components containing variables require an example or Meta rejects the submission.
Build from Meta’s Template Library instead of authoring one. Use the library entry’s slug, e.g. “appointment_confirmation_1” (visible under each card in WhatsApp Manager > Template library). A library template used unchanged skips Meta’s review and is usable immediately, so this is the fastest route to a sendable template. Omit components when using it.
Library templates only: toggles the optional body lines a library entry offers. code_expiration_minutes.

