Skip to content

Template parameters are checked before sending

Released: October 9, 2026

POST /v1/{phone_number_id}/messages with type: "template" now compares your components with the approved template before accepting the request. Previously these sends returned 202 and failed a moment later with a generic Meta error such as 100 or 132000.

The request is rejected with 400 invalid_request_error, code invalid_field_value, when:

  • the header or body parameter count differs from the template;
  • a text parameter is missing, null, or blank;
  • a text parameter contains a newline, a tab, or more than 4 consecutive spaces;
  • a media header or a URL button with a variable has no value.

The message names the component, for example URL button "Pay now" (index 0) requires a parameter. No message or contact is created for a rejected request.

Sends that match the template are unchanged. Authentication and carousel templates, and templates Kirimdev has not synced yet, are not checked here.