Skip to main content
POST
/
api
/
v1
/
whatsapp
/
templates
curl --request POST \
  --url https://{subdomain}.mihu.ai/api/v1/whatsapp/templates \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data @- <<EOF
{
  "name": "welcome_message",
  "language": "en_US",
  "category": "MARKETING",
  "waba_id": "123456789012345",
  "components": [
    {
      "type": "BODY",
      "text": "Welcome to our service! We're glad to have you."
    }
  ]
}
EOF
{
  "success": true,
  "message": "Template created successfully",
  "data": {
    "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>",
    "language": "en_US",
    "category": "MARKETING",
    "status": "APPROVED",
    "content": "<string>",
    "components": [
      {}
    ],
    "template_id": "<string>",
    "waba_id": "<string>",
    "phone_number": "<string>",
    "type": "whatsapp",
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://developers.mindhunters.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Use a Bearer token to access these API endpoints. Example: "Bearer {your-token}"

Body

application/json
name
string
required

Template name. Must be lowercase snake_case, unique per (name, language) within the WABA. 1-512 chars.

Example:

"order_confirmation"

language
string
required

ISO language tag accepted by Meta (en_US, tr, es_ES, pt_BR, etc.).

Example:

"en_US"

category
enum<string>
required

Meta category. Determines pricing and approval requirements.

Available options:
MARKETING,
UTILITY,
AUTHENTICATION
Example:

"UTILITY"

waba_id
string
required

The WhatsApp Business Account id this template belongs to. The template will be submitted under this WABA.

Example:

"123456789012345"

components
object[]
required

Meta components array. Must contain exactly one BODY. May contain at most one HEADER (text/image/video/document), one FOOTER, and one BUTTONS group (max 10 buttons). Each item is a WaComponent — see oneOf variants for the exact shape required per type.

Minimum array length: 1

TEXT header. Up to 60 chars. May contain at most one {{1}} placeholder; if present, example.header_text is required.

Response

Template submitted to Meta and stored locally. data.status is typically PENDING.

success
boolean
Example:

true

message
string
Example:

"Template created successfully"

data
object

WhatsApp message template stored locally and synced with Meta. Status reflects Meta's approval state.