Create templates with media header from public URL
Released: June 17, 2026
Templates Changed
Section titled “Templates ”Media header samples via public URL
Section titled “Media header samples via public URL”POST /v1/{phone_number_id}/templates now resolves IMAGE / VIDEO /
DOCUMENT header samples from a public https:// URL:
- Preferred:
example.header_url: ["https://…"] - Compatible: the same URL in
example.header_handle(existing integrations that already sent a Supabase/CDN link)
Kirimdev downloads the file, uploads it to Meta’s Resumable Upload API using the connected account’s credentials, and submits the resulting asset handle to Meta. No Meta access token or manual upload step is required on the integrator side.
Pass-through of an existing Meta handle (4::…) in
example.header_handle is unchanged.
Clearer errors on create
Section titled “Clearer errors on create”When Meta rejects template content or the header media URL is
invalid, the API now returns 400 invalid_field_value
(param: "components") instead of a generic 502 whatsapp_upstream_error. Transient upstream failures still map to
502.
Documentation
Section titled “Documentation”New guide: Create templates — distinguishes
creation (example.header_url) from send-time header media
(image.link).