WhatsApp error 131009: Parameter value is not valid
Last verified against Meta for Developers - Cloud API error codes
One or more parameter values are invalid.What error 131009 means
Code 131009 means the request had the right fields but at least one value is outside what the endpoint accepts. It complements 131008 (missing field) and 100 (unknown field). The messaging layer recognized the parameter and rejected its content: an unsupported type string, a recipient that does not parse as a phone number, a media ID that does not exist, a language code the template does not have, or a value that exceeds a documented length.
Meta's documentation adds a specific hint for this code: if the invalid value is a phone number, see the phone numbers documentation for how to add a number to a WhatsApp Business Account, which tells you the check also covers sender numbers, not just recipients. In the Marketing Messages API context the same code is returned while a template is still syncing to an ad, which can take up to ten minutes.
It is not a permissions or quality problem, and the same input will fail consistently until corrected.
Why it happens
- Recipient phone number with a leading plus, spaces, dashes, or a national leading zero.
- type set to a value that is not a supported message type, or with different casing.
- Template language code that does not exist for that template, such as en instead of en_US.
- A media ID that has expired (media IDs last 30 days) or belongs to another phone number.
- A body or caption longer than the documented maximum.
- Using a phone number ID that is not registered on the WABA.
How to fix WhatsApp error 131009
- 1Read error_data.details; it typically identifies the offending parameter.
- 2Normalize recipients to country code plus national number, digits only.
- 3Verify template name and language against WhatsApp Manager and use the exact locale string.
- 4Re-upload media and use the fresh ID if the asset is older than 30 days.
- 5Confirm the sender phone number ID via GET /{waba-id}/phone_numbers and that its status is CONNECTED.
- 6Retry with corrected values.
How to stop it recurring
Validate and normalize inputs at the boundary of your system: phone numbers on write, template locale from a cached list of approved templates, media IDs with their upload timestamps so expiry is known. Keep a table of documented maximums and enforce them before building the request so the platform never sees an out-of-range value. Template-specific value problems have their own codes - 132001 for the name-language pair, 132012 for parameter formats - and template payloads can be validated with the template checker before sending.
Official reference: Meta for Developers - Cloud API error codes. See all WhatsApp error codes or the WhatsApp limits and quotas.
Related codes
- 100: Invalid parameterThe request included one or more unsupported or misspelled parameters.
- 131008: Required parameter is missingThe request is missing a required parameter.
- 132001: Template does not existThe template does not exist in the specified language or the template has not…
- 33: Parameter value is not validThe business phone number has been deleted.
Error 131009 - quick answers
What does WhatsApp error 131009 mean?
Code 131009 means the request had the right fields but at least one value is outside what the endpoint accepts. It complements 131008 (missing field) and 100 (unknown field).
How do I fix WhatsApp error 131009?
1. Read error_data.details; it typically identifies the offending parameter. 2. Normalize recipients to country code plus national number, digits only. 3. Verify template name and language against WhatsApp Manager and use the exact locale string. 4. Re-upload media and use the fresh ID if the asset is older than 30 days. 5. Confirm the sender phone number ID via GET /{waba-id}/phone_numbers and that its status is CONNECTED. 6. Retry with corrected values.
Stop debugging WhatsApp by hand
Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.