Get App Templates (paginated)

Returns one page of the app's WhatsApp templates, with optional filters for status, category, type, quality, and language. Use this when an app has too many templates to fetch at once. Pages start at 1, unlike the 0-based pageNo on the unpaginated template list; request the next page while the returned page is full. Templates are sorted by last modified time, newest first. The Self Serve response is returned unchanged.

Rate limit: 10 requests per second per app, shared with the Bizgate route. Over the limit returns 429; see the X-Rate-Limit-Retry-After-Seconds header.

Request parameters

Headers

KeyDescriptionValuesData TypeRequired/Optional
AuthorizationYour app token, please refer Get access token api to get the token from partner documentation.sk_987654xxxxxxxxxxxxxxxxxxxxxxxxxxxxxStringRequired

Path parameters

KeyDescriptionValuesData TypeRequired/Optional
appIdThe unique identifier of the partner application657c0203-0b4d-xxxx-xxxx-xxxxxxx35a16StringRequired

Query parameters

KeyDescriptionValuesData TypeRequired/Optional
pageNoPage number, starting at 1. Defaults to 1. Below 1 is rejected (400).1IntegerOptional
pageSizeTemplates per page, 1 to 100. Defaults to 100. Outside that range is rejected (400).20IntegerOptional
templateStatusFilter by template statusAPPROVEDStringOptional
templateCategoryFilter by template category: MARKETING, UTILITY or AUTHENTICATION. Comma-separated for several.UTILITYStringOptional
templateTypeFilter by template type. Comma-separated for several.TEXTStringOptional
qualityFilter by template quality. Comma-separated for several.GREENStringOptional
languageCodeFilter by template language code. Comma-separated for several.enStringOptional

Sample cURL — Get App Templates (paginated).

curl --request GET \
  --url 'https://partner.gupshup.io/partner/app/657c0203-0b4d-xxxx-xxxx-xxxxxxx35a16/template/list?pageNo=1&pageSize=20&templateStatus=APPROVED&templateCategory=UTILITY&templateType=TEXT&quality=GREEN&languageCode=en' \
  --header 'Authorization: sk_987654xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
  --header 'Accept: application/json'

Sample success response (200)

{
  "status": "success",
  "templates": [
    {
      "appId": "657c0203-0b4d-xxxx-xxxx-xxxxxxx35a16",
      "category": "UTILITY",
      "createdOn": 1761804000000,
      "data": "Hi {{1}}, your order {{2}} has been shipped.",
      "elementName": "order_shipped",
      "id": "0d6c3b2a-5f1e-4c7b-9a8d-2e4f6a1b3c5d",
      "externalId": "1284736501928374",
      "languageCode": "en",
      "languagePolicy": "deterministic",
      "master": true,
      "meta": "{\"example\":\"Hi John, your order #1234 has been shipped.\"}",
      "modifiedOn": 1761890400000,
      "namespace": "a1b2c3d4_e5f6_7a8b_9c0d_e1f2a3b4c5d6",
      "status": "APPROVED",
      "templateType": "TEXT"
    }
  ]
}
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required

The unique identifier of the partner application

Query Params
integer
≥ 1
Defaults to 1

Page number, starting at 1. Defaults to 1.

integer
1 to 100
Defaults to 100

Templates per page, 1 to 100. Defaults to 100.

string

Template status, e.g. APPROVED

string

Template category: MARKETING, UTILITY or AUTHENTICATION. Comma-separated for several, e.g. UTILITY,MARKETING.

string

Template type, e.g. TEXT. Comma-separated for several.

string

Template quality, e.g. GREEN. Comma-separated for several.

string

Template language code, e.g. en. Comma-separated for several.

Headers
string
required

Your app token, please refer Get access token api to get the token from partner documentation.

Responses

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json