channels
whatsapp
whatsapp-service-management
whatsapp-template-management

Create WhatsApp Template

Create a WhatsApp template. Once created, Infobip submits a template for WhatsApp's review and approval. When approved, a template can be sent to end users. Refer to template guidelines for additional info.

post/whatsapp/2/senders/{sender}/templates

Request

  • Base URL
    https://api.infobip.com (the document declares no server; this is the origin it was published from)
  • Auth
    • OAuth 2
      Client credentials
      Token URL: https://api.infobip.com/auth/1/oauth2/token
    • or API key in header Authorization
    • or API key in header Authorization
    • or HTTP basic

Path parameters

senderstring required

Registered WhatsApp sender number. Must be in international format.

Request body

namestring required

Template name. Must only contain lowercase alphanumeric characters and underscores.

language'af' | 'sq' | 'ar' | 'ar_EG' | 'ar_AE' | 'ar_LB' | 'ar_MA' | 'ar_QA' | 'az' | 'bn' | 'bn_IN' | 'bg' | 'ca' | 'zh_CN' | 'zh_HK' | 'zh_TW' | 'hr' | 'cs' | 'da' | 'nl' | 'nl_BE' | 'en' | 'en_GB' | 'en_US' | 'en_AE' | 'en_AU' | 'en_CA' | 'en_GH' | 'en_IE' | 'en_IN' | 'en_JM' | 'en_MY' | 'en_NZ' | 'en_QA' | 'en_SG' | 'en_UG' | 'en_ZA' | 'et' | 'fil' | 'fi' | 'fr' | 'fr_BE' | 'fr_CA' | 'fr_CH' | 'fr_CI' | 'fr_MA' | 'ka' | 'de' | 'de_AT' | 'de_CH' | 'el' | 'gu' | 'ha' | 'he' | 'hi' | 'hu' | 'id' | 'ga' | 'it' | 'ja' | 'kn' | 'kk' | 'rw_RW' | 'ko' | 'ky_KG' | 'lo' | 'lv' | 'lt' | 'mk' | 'ms' | 'ml' | 'mr' | 'nb' | 'fa' | 'pl' | 'pt_BR' | 'pt_PT' | 'pa' | 'ro' | 'ru' | 'sr' | 'si_LK' | 'sk' | 'sl' | 'es' | 'es_AR' | 'es_CL' | 'es_CO' | 'es_CR' | 'es_DO' | 'es_EC' | 'es_HN' | 'es_MX' | 'es_PA' | 'es_PE' | 'es_ES' | 'es_UY' | 'sw' | 'sv' | 'ta' | 'te' | 'th' | 'tr' | 'uk' | 'ur' | 'uz' | 'vi' | 'zu' | 'unknown' required

Template language, one template with same name can have multiple transliterations.

category'MARKETING' | 'AUTHENTICATION' | 'UTILITY' required

Category of the template. Mind that each category has different fields available for the endpoint. If you're sending traffic in India, for AUTHENTICATION, use fields available for UTILITY with AUTHENTICATION as category. Note that category of the template can be automatically changed by Meta.

structureF9ccb6cb799d6a02d85ff0940902b67433383f1a3c972733a815fa9a18d16beaTemplateStructureApiData required

Example request

{
  "language": "en",
  "category": "MARKETING"
}

Response

Template created.

idstring

Template ID.

businessAccountIdinteger

Business account ID to which template belongs.

namestring

Name of the template.

language'af' | 'sq' | 'ar' | 'ar_EG' | 'ar_AE' | 'ar_LB' | 'ar_MA' | 'ar_QA' | 'az' | 'bn' | 'bn_IN' | 'bg' | 'ca' | 'zh_CN' | 'zh_HK' | 'zh_TW' | 'hr' | 'cs' | 'da' | 'nl' | 'nl_BE' | 'en' | 'en_GB' | 'en_US' | 'en_AE' | 'en_AU' | 'en_CA' | 'en_GH' | 'en_IE' | 'en_IN' | 'en_JM' | 'en_MY' | 'en_NZ' | 'en_QA' | 'en_SG' | 'en_UG' | 'en_ZA' | 'et' | 'fil' | 'fi' | 'fr' | 'fr_BE' | 'fr_CA' | 'fr_CH' | 'fr_CI' | 'fr_MA' | 'ka' | 'de' | 'de_AT' | 'de_CH' | 'el' | 'gu' | 'ha' | 'he' | 'hi' | 'hu' | 'id' | 'ga' | 'it' | 'ja' | 'kn' | 'kk' | 'rw_RW' | 'ko' | 'ky_KG' | 'lo' | 'lv' | 'lt' | 'mk' | 'ms' | 'ml' | 'mr' | 'nb' | 'fa' | 'pl' | 'pt_BR' | 'pt_PT' | 'pa' | 'ro' | 'ru' | 'sr' | 'si_LK' | 'sk' | 'sl' | 'es' | 'es_AR' | 'es_CL' | 'es_CO' | 'es_CR' | 'es_DO' | 'es_EC' | 'es_HN' | 'es_MX' | 'es_PA' | 'es_PE' | 'es_ES' | 'es_UY' | 'sw' | 'sv' | 'ta' | 'te' | 'th' | 'tr' | 'uk' | 'ur' | 'uz' | 'vi' | 'zu' | 'unknown'

Template language, one template with same name can have multiple transliterations.

status'APPROVED' | 'IN_APPEAL' | 'PENDING' | 'REJECTED' | 'PENDING_DELETION' | 'DELETED' | 'REINSTATED' | 'FLAGGED' | 'FIRST_PAUSED' | 'SECOND_PAUSED' | 'DISABLED' | 'ARCHIVED' | 'UNKNOWN'

Status of the template.

category'MARKETING' | 'AUTHENTICATION' | 'UTILITY'

Category of the template.

quality'HIGH' | 'MEDIUM' | 'LOW' | 'UNKNOWN'

Quality of the template.

createdAtstring date-time

Creation date of the template.

lastUpdatedAtstring date-time

Last update date of the template.

libraryTemplateNamestring

Name of the library template from which this template was created. If not present, the template was not created using the template library.

Example response

{
  "id": "111",
  "businessAccountId": 222,
  "name": "template_name",
  "language": "en",
  "status": "APPROVED",
  "category": "MARKETING",
  "quality": "HIGH"
}

Changes

No recorded changes to this operation across all 1 revision of this API.