Get Templates
Lists an application’s WhatsApp templates with cursor pagination, status / category / language filters, name-or-content search, and optional component expansion.
Read fresh directly from Meta, with no caching.
Pagination. Do not pass a cursor on the first request. Take pagingMetadata.nextCursor from the response and send it as after on the next one. An empty result returns "data": [] with pageSize: 0.
Authorizations
Secret key in Bearer sk_... format. Server-to-server only — never embed it in a browser or mobile client. The organization is resolved from the key, so organization_id is never passed explicitly.
Path Parameters
Application ID. Must belong to the organization resolved from your secret key, otherwise the request returns 404 with APPLICATION_004.
"app_7poyXj8GXuv76e"
Query Parameters
Maximum records per page.
1 <= x <= 100Next-page cursor — the nextCursor from a previous response. Do not pass it on the first request.
Previous-page cursor — the previousCursor from a response. Cannot be combined with after.
Status filter. Any other value returns 422.
Review and lifecycle status. UNKNOWN means Meta reported a status this API does not recognise.
APPROVED, PENDING, REJECTED, PAUSED, DISABLED, IN_APPEAL, PENDING_DELETION, DELETED, LIMIT_EXCEEDED, UNKNOWN Category filter. Any other value returns 422.
Determines which components are allowed. UTILITY for transactional messages, MARKETING for promotional, AUTHENTICATION for one-time passcodes.
UTILITY, MARKETING, AUTHENTICATION Language filter, a BCP-47 code such as en or tr. Unlike the language field on create, this filter is a plain string passed to Meta as-is and is not restricted to the closed language list.
Meta name_or_content search — matches the template name or its body text.
Repeatable. components also returns the components, which are omitted by default. Any other value is rejected with 422.
components