{
  "info": {
    "_postman_id": "85154fae-6927-4824-b44b-b05893d3d747",
    "name": "WhatsApp Cloud API — Messages & Templates (Atmik Bharat)",
    "description": "# WhatsApp Cloud API — Messages & Templates\n\nComplete collection for Atmik Bharat: webhook setup, message utility, template creation, template sending, and service messages (standard, interactive, commerce).\n\n## Setup order\n1. Fill the **Variables** tab: access_token, phone_number_id, waba_id, app_id, app_secret, verify_token, recipient_phone.\n2. **00 · Webhooks & setup** → run *Subscribe the App* then *Subscribe the WABA*. *GET handshake* shows what Meta sends you.\n3. **02 · Template — Creation** → create templates (POST /{waba-id}/message_templates). Approval lands on the **Template status webhook**.\n4. **03 · Template — Sending** & **04 · Service Messages** → send to /{phone-number-id}/messages.\n\n## Conventions\n- Auth = Bearer {{access_token}} (inherited). The *Subscribe the App* call uses the app token {{app_id}}|{{app_secret}}.\n- Verify X-Hub-Signature-256 = HMAC-SHA256(raw body, app secret) on every inbound POST.\n- Media = public link, never an uploaded id.\n- Sends carry a Graph response example, plus an inbound-webhook example where the user can reply.\n- response_json (flows/address) is a JSON string — JSON.parse() in a try/catch.\n\n\n## Required query parameter — `waba_id`\nEvery outbound call (message utility, template creation, template sending and service messages) must include `?waba_id={{waba_id}}` as a query parameter. It is already added to each request in this collection; just set the **waba_id** variable. Webhook/subscription and media-wrapper calls do not take it.\n\n## Commerce (order_details / order_status)\n**02 & 03 → Commerce** folders cover checkout button, order details and order status. Sending shows all four combinations: catalog (retailer_id) / custom (name) products × payment_gateway / payment_link. The creation template is the same for every combination. A **Payment status webhook** example lives in **00 · Webhooks & setup**.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{access_token}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "1",
      "value": "<1>",
      "type": "string"
    },
    {
      "key": "2",
      "value": "<2>",
      "type": "string"
    },
    {
      "key": "access_token",
      "value": "<ACCESS_TOKEN>",
      "type": "string"
    },
    {
      "key": "app_id",
      "value": "<META_APP_ID>",
      "type": "string"
    },
    {
      "key": "app_secret",
      "value": "<META_APP_SECRET>",
      "type": "string"
    },
    {
      "key": "base_url",
      "value": "https://graph.facebook.com/v23.0",
      "type": "string"
    },
    {
      "key": "business_phone",
      "value": "15550000000",
      "type": "string"
    },
    {
      "key": "callback_url",
      "value": "https://your-domain.example.com/webhooks/whatsapp",
      "type": "string"
    },
    {
      "key": "catalog_id",
      "value": "<CATALOG_ID>",
      "type": "string"
    },
    {
      "key": "conversation_id",
      "value": "<CONVERSATION_ID>",
      "type": "string"
    },
    {
      "key": "flow_id",
      "value": "<FLOW_ID>",
      "type": "string"
    },
    {
      "key": "flow_token",
      "value": "flow-token-abc123",
      "type": "string"
    },
    {
      "key": "media_api",
      "value": "https://whatsappmessagingapi.vertexsuite.in",
      "type": "string"
    },
    {
      "key": "media_audio_url",
      "value": "https://your-cdn.example.com/sample.mp3",
      "type": "string"
    },
    {
      "key": "media_document_url",
      "value": "https://your-cdn.example.com/sample.pdf",
      "type": "string"
    },
    {
      "key": "media_image_url",
      "value": "https://your-cdn.example.com/sample.jpg",
      "type": "string"
    },
    {
      "key": "media_sticker_url",
      "value": "https://your-cdn.example.com/sample.webp",
      "type": "string"
    },
    {
      "key": "media_upload_url",
      "value": "https://whatsappmessagingapi.vertexsuite.in/media/upload",
      "type": "string"
    },
    {
      "key": "media_video_url",
      "value": "https://your-cdn.example.com/sample.mp4",
      "type": "string"
    },
    {
      "key": "phone_number_id",
      "value": "<PHONE_NUMBER_ID>",
      "type": "string"
    },
    {
      "key": "product_retailer_id",
      "value": "<PRODUCT_RETAILER_ID>",
      "type": "string"
    },
    {
      "key": "recipient_phone",
      "value": "91XXXXXXXXXX",
      "type": "string"
    },
    {
      "key": "recipient_wa_id",
      "value": "91XXXXXXXXXX",
      "type": "string"
    },
    {
      "key": "sender_wa_id",
      "value": "91XXXXXXXXXX",
      "type": "string"
    },
    {
      "key": "verify_token",
      "value": "my-verify-token-123",
      "type": "string"
    },
    {
      "key": "waba_id",
      "value": "<WHATSAPP_BUSINESS_ACCOUNT_ID>",
      "type": "string"
    },
    {
      "key": "wamid",
      "value": "wamid.HBgLXXXXXXXXXXXXXXXX",
      "type": "string"
    },
    {
      "key": "wamid_incoming",
      "value": "wamid.HBgLINCOMINGXXXXXXXX",
      "type": "string"
    },
    {
      "key": "wamid_of_message",
      "value": "wamid.HBgLSENTBYYOUXXXXXX",
      "type": "string"
    },
    {
      "key": "wamid_of_template",
      "value": "wamid.HBgLTEMPLATEXXXXXXXX",
      "type": "string"
    },
    {
      "key": "wamid_to_react_to",
      "value": "wamid.HBgLREACTTOXXXXXXXX",
      "type": "string"
    },
    {
      "key": "wamid_to_reply_to",
      "value": "wamid.HBgLREPLYTOXXXXXXXX",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "00 · Webhooks & setup",
      "description": "Verify & subscribe your callback, then the inbound reference payloads (message, status, template status).",
      "item": [
        {
          "name": "Webhook verification (GET handshake)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{callback_url}}?hub.mode=subscribe&hub.verify_token={{verify_token}}&hub.challenge=1158201444",
              "host": [
                "{{callback_url}}"
              ],
              "path": [],
              "query": [
                {
                  "key": "hub.mode",
                  "value": "subscribe"
                },
                {
                  "key": "hub.verify_token",
                  "value": "{{verify_token}}"
                },
                {
                  "key": "hub.challenge",
                  "value": "1158201444"
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "`GET · hub.challenge`\n\nMeta's one-time verification handshake. On saving the callback URL Meta sends this GET; your server checks `hub.verify_token` against `{{verify_token}}` and, on match, replies 200 with the raw `hub.challenge` as text/plain.\n\nThis request simulates Meta calling your endpoint."
          },
          "response": [
            {
              "name": "✅ 200 — echo challenge",
              "originalRequest": {
                "method": "GET",
                "header": [],
                "url": {
                  "raw": "{{callback_url}}?hub.mode=subscribe&hub.verify_token={{verify_token}}&hub.challenge=1158201444",
                  "host": [
                    "{{callback_url}}"
                  ],
                  "path": [],
                  "query": [
                    {
                      "key": "hub.mode",
                      "value": "subscribe"
                    },
                    {
                      "key": "hub.verify_token",
                      "value": "{{verify_token}}"
                    },
                    {
                      "key": "hub.challenge",
                      "value": "1158201444"
                    }
                  ]
                },
                "auth": {
                  "type": "noauth"
                },
                "description": "`GET · hub.challenge`\n\nMeta's one-time verification handshake. On saving the callback URL Meta sends this GET; your server checks `hub.verify_token` against `{{verify_token}}` and, on match, replies 200 with the raw `hub.challenge` as text/plain.\n\nThis request simulates Meta calling your endpoint."
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "text",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "1158201444"
            }
          ]
        },
        {
          "name": "Subscribe the App (set callback + fields)",
          "request": {
            "method": "POST",
            "header": [],
            "url": {
              "raw": "{{base_url}}/{{app_id}}/subscriptions",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{app_id}}",
                "subscriptions"
              ]
            },
            "body": {
              "mode": "urlencoded",
              "urlencoded": [
                {
                  "key": "object",
                  "value": "whatsapp_business_account"
                },
                {
                  "key": "callback_url",
                  "value": "{{callback_url}}"
                },
                {
                  "key": "verify_token",
                  "value": "{{verify_token}}"
                },
                {
                  "key": "fields",
                  "value": "messages,message_template_status_update,message_template_quality_update"
                },
                {
                  "key": "access_token",
                  "value": "{{app_id}}|{{app_secret}}"
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "`POST /{app-id}/subscriptions`\n\nApp-level step: register your `callback_url`, `verify_token`, and webhook `fields`. Uses an app access token (`{{app_id}}|{{app_secret}}`). Triggers the GET handshake. Do this once per app."
          },
          "response": [
            {
              "name": "✅ 200",
              "originalRequest": {
                "method": "POST",
                "header": [],
                "url": {
                  "raw": "{{base_url}}/{{app_id}}/subscriptions",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{app_id}}",
                    "subscriptions"
                  ]
                },
                "body": {
                  "mode": "urlencoded",
                  "urlencoded": [
                    {
                      "key": "object",
                      "value": "whatsapp_business_account"
                    },
                    {
                      "key": "callback_url",
                      "value": "{{callback_url}}"
                    },
                    {
                      "key": "verify_token",
                      "value": "{{verify_token}}"
                    },
                    {
                      "key": "fields",
                      "value": "messages,message_template_status_update,message_template_quality_update"
                    },
                    {
                      "key": "access_token",
                      "value": "{{app_id}}|{{app_secret}}"
                    }
                  ]
                },
                "auth": {
                  "type": "noauth"
                },
                "description": "`POST /{app-id}/subscriptions`\n\nApp-level step: register your `callback_url`, `verify_token`, and webhook `fields`. Uses an app access token (`{{app_id}}|{{app_secret}}`). Triggers the GET handshake. Do this once per app."
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"success\": true\n}"
            }
          ]
        },
        {
          "name": "Subscribe the WABA (start delivery)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{access_token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/subscribed_apps",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "subscribed_apps"
              ]
            },
            "description": "`POST /{waba-id}/subscribed_apps`\n\nSubscribe your app to this WABA's events so messages, statuses and template updates start arriving. Run once per WABA. Uses Bearer `{{access_token}}`."
          },
          "response": [
            {
              "name": "✅ 200",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Authorization",
                    "value": "Bearer {{access_token}}"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/subscribed_apps",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "subscribed_apps"
                  ]
                },
                "description": "`POST /{waba-id}/subscribed_apps`\n\nSubscribe your app to this WABA's events so messages, statuses and template updates start arriving. Run once per WABA. Uses Bearer `{{access_token}}`."
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"success\": true\n}"
            }
          ]
        },
        {
          "name": "Common message webhook",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              {\n                \"profile\": { \"name\": \"John Doe\" },\n                \"wa_id\": \"{{sender_wa_id}}\"\n              }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"timestamp\": \"1718533200\",\n                \"type\": \"text\",\n                \"text\": { \"body\": \"Hello\" }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{callback_url}}",
              "host": [
                "{{callback_url}}"
              ],
              "path": []
            },
            "description": "`value.messages[]`\n\nThe full envelope every inbound user message arrives in. The messages[] object carries a type field that tells you which sub-object to read (text shown here). A context object is present when the user replied to one of your messages.\n\n> ⚠️ **Inbound — reference only.** Meta posts this to *your* `{{callback_url}}`; you do not send it.\n\n#### Fields\n| Field | Type | Always? | Notes |\n| --- | --- | --- | --- |\n| object | string | Always | \"whatsapp_business_account\". |\n| entry[].id | string | Always | WABA id. |\n| changes[].field | string | Always | \"messages\". |\n| value.metadata | object | Always | display_phone_number, phone_number_id. |\n| value.contacts[] | array | With messages | profile.name, wa_id of the sender. |\n| value.messages[] | array | Conditional | Present for user messages (not for statuses). |\n| messages[].type | string | Always | text / image / interactive / order / location / button … |\n| messages[].context | object | Optional | Present when the user replied to a message: from, id. |\n"
          },
          "response": []
        },
        {
          "name": "Message status webhook",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"statuses\": [\n              {\n                \"id\": \"{{wamid}}\",\n                \"status\": \"delivered\",\n                \"timestamp\": \"1718533210\",\n                \"recipient_id\": \"{{recipient_wa_id}}\",\n                \"conversation\": {\n                  \"id\": \"{{conversation_id}}\",\n                  \"origin\": { \"type\": \"utility\" }\n                },\n                \"pricing\": {\n                  \"billable\": true,\n                  \"pricing_model\": \"CBP\",\n                  \"category\": \"utility\"\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{callback_url}}",
              "host": [
                "{{callback_url}}"
              ],
              "path": []
            },
            "description": "`value.statuses[]`\n\nDelivery receipts for messages you sent: sent → delivered → read , or failed . Same outer envelope as a message webhook, but value carries statuses[] instead of messages[] .\n\n> ⚠️ **Inbound — reference only.** Meta posts this to *your* `{{callback_url}}`; you do not send it.\n\n#### Fields\n| Field | Type | Always? | Notes |\n| --- | --- | --- | --- |\n| statuses[].id | string (wamid) | Always | wamid of the message you sent. |\n| statuses[].status | string | Always | sent / delivered / read / failed. |\n| statuses[].recipient_id | string | Always | wa_id of the recipient. |\n| statuses[].conversation | object | Optional | id + origin.type (marketing / utility / authentication / service). |\n| statuses[].pricing | object | Optional | billable, pricing_model, category. |\n| statuses[].errors[] | array | On failed | code, title, error_data.details. |\n"
          },
          "response": []
        },
        {
          "name": "Template status webhook",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"time\": 1718533200,\n      \"changes\": [\n        {\n          \"field\": \"message_template_status_update\",\n          \"value\": {\n            \"event\": \"APPROVED\",\n            \"message_template_id\": 1234567890,\n            \"message_template_name\": \"order_confirmation\",\n            \"message_template_language\": \"en_US\",\n            \"reason\": \"NONE\"\n          }\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{callback_url}}",
              "host": [
                "{{callback_url}}"
              ],
              "path": []
            },
            "description": "`value · message_template_status_update`\n\nFired whenever a template's review status changes — approval, rejection, pausing, etc. Arrives under the message_template_status_update field (not messages ). Use it to flag templates as sendable or to alert your team on a rejection.\n\n> ⚠️ **Inbound — reference only.** Meta posts this to *your* `{{callback_url}}`; you do not send it.\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| changes[].field | string | Always | \"message_template_status_update\". |\n| value.event | string | Always | APPROVED / REJECTED / PENDING / FLAGGED / PAUSED / DISABLED / PENDING_DELETION. |\n| value.message_template_id | number | Always | Numeric template id. |\n| value.message_template_name | string | Always | Template name. |\n| value.message_template_language | string | Always | Language & locale, e.g. en_US. |\n| value.reason | string | Optional | Rejection reason, or NONE. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Subscribe field | message_template_status_update |\n| Related fields | message_template_quality_update, template_category_update |\n| event | drives whether the template is sendable |\n"
          },
          "response": []
        },
        {
          "name": "Payment status webhook",
          "request": {
            "method": "POST",
            "auth": {
              "type": "noauth"
            },
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{callback_url}}",
              "host": [
                "{{callback_url}}"
              ],
              "path": []
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"statuses\": [\n              {\n                \"id\": \"{{wamid}}\",\n                \"recipient_id\": \"{{recipient_phone}}\",\n                \"status\": \"sent\",\n                \"type\": \"payment\",\n                \"payment\": {\n                  \"reference_id\": \"{{order_reference_id}}\",\n                  \"currency\": \"INR\",\n                  \"amount\": {\n                    \"offset\": 100,\n                    \"value\": 53764\n                  },\n                  \"transaction\": {\n                    \"id\": \"txn_abc123\",\n                    \"type\": \"razorpay\",\n                    \"status\": \"captured\"\n                  }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Inbound example: payment result for an order_details checkout. Gateway payments report here; payment-link confirmations come from your provider's webhook."
          },
          "response": []
        }
      ]
    },
    {
      "name": "01 · Message Utility",
      "description": "Read receipts, typing indicator, contextual reply.",
      "item": [
        {
          "name": "Read receipts",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"status\": \"read\",\n  \"message_id\": \"{{wamid_incoming}}\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`status: read`\n\nMarks an incoming message as read — the two blue ticks appear on the user's side. There is no to ; the recipient is inferred from the message_id.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| messaging_product | string | Required | Always \"whatsapp\". |\n| status | string | Required | Must be \"read\". |\n| message_id | string (wamid) | Required | wamid of the inbound message to mark read. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Applies to | incoming (user → business) messages only |\n| message_id | a recent received wamid from the webhook |\n| to field | not used — omit it |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"status\": \"read\",\n  \"message_id\": \"{{wamid_incoming}}\"\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"success\": true\n}"
            }
          ]
        },
        {
          "name": "Typing indicator",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"status\": \"read\",\n  \"message_id\": \"{{wamid_incoming}}\",\n  \"typing_indicator\": {\n    \"type\": \"text\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`status: read · typing_indicator`\n\nMarks the message read and shows the \"typing…\" bubble on the user's side while you prepare a reply. Same envelope as a read receipt, plus a typing_indicator object.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| status | string | Required | Must be \"read\" — also marks the message read. |\n| message_id | string (wamid) | Required | wamid of the inbound message. |\n| typing_indicator | object | Required | Enables the typing bubble. |\n| typing_indicator.type | string | Required | Currently \"text\". |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Duration | up to 25 seconds, or until you send a message |\n| Dismissed by | sending the next outbound message |\n| Best practice | only show if you are actually going to reply |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"status\": \"read\",\n  \"message_id\": \"{{wamid_incoming}}\",\n  \"typing_indicator\": {\n    \"type\": \"text\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"success\": true\n}"
            }
          ]
        },
        {
          "name": "Contextual reply",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"context\": {\n    \"message_id\": \"{{wamid_to_reply_to}}\"\n  },\n  \"type\": \"text\",\n  \"text\": {\n    \"body\": \"Replying to your earlier message\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`context`\n\nQuotes a previous message above your reply. Add a context object to any outbound message — the rest of the payload is a normal send of that type (text shown here).\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| context | object | Required | Marks this message as a reply. |\n| context.message_id | string (wamid) | Required | wamid of the message being quoted. |\n| type + its object | varies | Required | Standard send body for the chosen type. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Works with | most message types (text, media, interactive …) |\n| message_id | valid wamid in the same conversation |\n| Quoted message | must still exist (not deleted) |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"context\": {\n    \"message_id\": \"{{wamid_to_reply_to}}\"\n  },\n  \"type\": \"text\",\n  \"text\": {\n    \"body\": \"Replying to your earlier message\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            }
          ]
        }
      ]
    },
    {
      "name": "02 · Template — Creation",
      "description": "Upload media (wrapper) for media headers, then create & submit templates via POST /{waba-id}/message_templates.",
      "item": [
        {
          "name": "Upload media (wrapper → handle)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{access_token}}"
              }
            ],
            "url": {
              "raw": "{{media_upload_url}}",
              "host": [
                "{{media_upload_url}}"
              ],
              "path": []
            },
            "body": {
              "mode": "formdata",
              "formdata": [
                {
                  "key": "file",
                  "type": "file",
                  "src": []
                },
                {
                  "key": "type",
                  "value": "image",
                  "type": "text"
                }
              ]
            },
            "description": "`POST media/upload` — Vertex Suite media wrapper (never Graph).\n\nUpload an image / video / document once; get back a **handle** (for media-header template creation) and a hosted **media_url** (use as the `link` when sending). `type` = image | video | document | audio | sticker.\n\n**Accepted:** image jpg/png ≤ 5 MB · video mp4/3gp ≤ 16 MB · audio ≤ 16 MB · document ≤ 100 MB · sticker webp 100 KB (static) / 500 KB (animated). Hard cap 100 MB per file."
          },
          "response": [
            {
              "name": "✅ 200 — handle + url",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Authorization",
                    "value": "Bearer {{access_token}}"
                  }
                ],
                "url": {
                  "raw": "{{media_upload_url}}",
                  "host": [
                    "{{media_upload_url}}"
                  ],
                  "path": []
                },
                "body": {
                  "mode": "formdata",
                  "formdata": [
                    {
                      "key": "file",
                      "type": "file",
                      "src": []
                    },
                    {
                      "key": "type",
                      "value": "image",
                      "type": "text"
                    }
                  ]
                },
                "description": "`POST media/upload` — Vertex Suite media wrapper (never Graph).\n\nUpload an image / video / document once; get back a **handle** (for media-header template creation) and a hosted **media_url** (use as the `link` when sending). `type` = image | video | document | audio | sticker.\n\n**Accepted:** image jpg/png ≤ 5 MB · video mp4/3gp ≤ 16 MB · audio ≤ 16 MB · document ≤ 100 MB · sticker webp 100 KB (static) / 500 KB (animated). Hard cap 100 MB per file."
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"handle\": \"4:aW1hZ2U...:e:1700000000:...\",\n  \"media_url\": \"https://whatsappmessagingapi.vertexsuite.in/media/abc123.jpg\",\n  \"type\": \"image\",\n  \"mime_type\": \"image/jpeg\",\n  \"file_size\": 204800\n}"
            }
          ]
        },
        {
          "name": "Create a template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"order_confirmation\",\n  \"language\": \"en_US\",\n  \"category\": \"utility\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"text\",\n      \"text\": \"Order {{1}}\",\n      \"example\": { \"header_text\": [\"#A1234\"] }\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, your order {{2}} is confirmed.\",\n      \"example\": { \"body_text\": [[\"John\", \"#A1234\"]] }\n    },\n    {\n      \"type\": \"footer\",\n      \"text\": \"Atmik Bharat\"\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"quick_reply\", \"text\": \"Track order\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`POST · message_templates`\n\nSubmit a template for approval. Body = name , language , category , and a components[] array (header, body, footer, buttons). Variables are numbered: {{1}} , {{2}} , … — each one needs an example so reviewers can preview it.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| name | string | Required | Lowercase a–z, 0–9, underscores only. |\n| language | string | Required | Language & locale code, e.g. en_US. |\n| category | string | Required | utility / marketing / authentication. |\n| components[] | array | Required | Optional header + required body + optional footer + optional buttons. |\n| component.example | object | If variables | header_text / body_text — numbered example values. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Template name | ≤ 512 chars; lowercase a–z, 0–9, _ only |\n| Header — text | ≤ 60 chars; max 1 variable |\n| Header — media | image / video / document via handle (no id/URL) |\n| Body | ≤ 1024 chars; can’t start/end with a variable; no two adjacent variables |\n| Footer | ≤ 60 chars; plain text, no variables |\n| Button title | ≤ 25 chars (every button type) |\n| URL button | URL ≤ 2000 chars; HTTPS only; max 2 |\n| Phone button | max 1 per template |\n| Copy-code value | ≤ 15 chars; A–Z and 0–9 only |\n| Quick-reply | title ≤ 25; no id (tap returns the title as payload) |\n| Buttons total | max 10; same-type buttons must be consecutive |\n| Variables | numbered {{1}}, {{2}}…; each needs an example |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"order_confirmation\",\n  \"language\": \"en_US\",\n  \"category\": \"utility\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"text\",\n      \"text\": \"Order {{1}}\",\n      \"example\": { \"header_text\": [\"#A1234\"] }\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, your order {{2}} is confirmed.\",\n      \"example\": { \"body_text\": [[\"John\", \"#A1234\"]] }\n    },\n    {\n      \"type\": \"footer\",\n      \"text\": \"Atmik Bharat\"\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"quick_reply\", \"text\": \"Track order\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create authentication template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"auth_copy_code\",\n  \"language\": \"en_US\",\n  \"category\": \"authentication\",\n  \"message_send_ttl_seconds\": 600,\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"add_security_recommendation\": true\n    },\n    {\n      \"type\": \"footer\",\n      \"code_expiration_minutes\": 10\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"otp\", \"otp_type\": \"copy_code\", \"text\": \"Copy code\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`category · authentication`\n\nAuth templates have fixed body/footer — you don’t write copy, you toggle options. The OTP button comes in three flavours: copy-code (user taps to copy), one-tap (autofill, needs your app package + signature hash), and zero-tap (app reads the code automatically). All three full payloads below.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| category | string | Required | Must be \"authentication\". |\n| body.add_security_recommendation | boolean | Optional | Appends Meta’s standard security line. |\n| footer.code_expiration_minutes | number | Optional | Shows an expiry note; 1–90. |\n| button.otp_type | string | Required | copy_code / one_tap / zero_tap. |\n| package_name + signature_hash | string | one_tap / zero_tap | Android app identity for autofill. |\n| zero_tap_terms_accepted | boolean | zero_tap | Must be true to use zero-tap. |\n| message_send_ttl_seconds | number | Optional | How long Cloud API keeps trying to deliver. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Body / footer | config flags, not free text |\n| OTP code | passed at send into body + button |\n| one_tap / zero_tap | Android only; need package + signature hash |\n| zero_tap | also requires accepted terms + a one-tap fallback |\n| Button title | ≤ 25 chars |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"auth_copy_code\",\n  \"language\": \"en_US\",\n  \"category\": \"authentication\",\n  \"message_send_ttl_seconds\": 600,\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"add_security_recommendation\": true\n    },\n    {\n      \"type\": \"footer\",\n      \"code_expiration_minutes\": 10\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"otp\", \"otp_type\": \"copy_code\", \"text\": \"Copy code\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create carousel template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"product_carousel\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"New arrivals for you, {{1}}!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"carousel\",\n      \"cards\": [\n        {\n          \"components\": [\n            {\n              \"type\": \"header\",\n              \"format\": \"image\",\n              \"example\": { \"header_handle\": [\"4:aW1hZ2U...:e:...\"] }\n            },\n            {\n              \"type\": \"body\",\n              \"text\": \"{{1}} for just {{2}}\",\n              \"example\": { \"body_text\": [[\"Cactus\", \"499\"]] }\n            },\n            {\n              \"type\": \"buttons\",\n              \"buttons\": [\n                { \"type\": \"quick_reply\", \"text\": \"Buy now\" },\n                { \"type\": \"url\", \"text\": \"View\", \"url\": \"https://ex.com/p/{{1}}\", \"example\": [\"sku-1\"] }\n              ]\n            }\n          ]\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`components · carousel`\n\nA body message followed by up to 10 swipeable cards. Every card must share the same component structure (same header media type and the same button set).\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| carousel.cards[] | array | Required | 1–10 cards. |\n| cards[].components | array | Required | header (media) + body + buttons per card. |\n| card buttons | array | Required | Same type & count across every card. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Cards | up to 10 |\n| Uniformity | all cards share the same structure |\n| Header | image or video media handle per card |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"product_carousel\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"New arrivals for you, {{1}}!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"carousel\",\n      \"cards\": [\n        {\n          \"components\": [\n            {\n              \"type\": \"header\",\n              \"format\": \"image\",\n              \"example\": { \"header_handle\": [\"4:aW1hZ2U...:e:...\"] }\n            },\n            {\n              \"type\": \"body\",\n              \"text\": \"{{1}} for just {{2}}\",\n              \"example\": { \"body_text\": [[\"Cactus\", \"499\"]] }\n            },\n            {\n              \"type\": \"buttons\",\n              \"buttons\": [\n                { \"type\": \"quick_reply\", \"text\": \"Buy now\" },\n                { \"type\": \"url\", \"text\": \"View\", \"url\": \"https://ex.com/p/{{1}}\", \"example\": [\"sku-1\"] }\n              ]\n            }\n          ]\n        }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create limited-time offer template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"lto_offer\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"image\",\n      \"example\": { \"header_handle\": [\"4:aW1hZ2U...:e:...\"] }\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, grab this before it ends!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"limited_time_offer\",\n      \"limited_time_offer\": { \"text\": \"Expiring soon!\", \"has_expiration\": true }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"copy_code\", \"example\": \"SAVE20\" },\n        { \"type\": \"url\", \"text\": \"Shop now\", \"url\": \"https://ex.com\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`components · limited_time_offer`\n\nAdds a live countdown driven by an expiry you pass at send. Pair it with a copy-code coupon button.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| limited_time_offer.text | string | Required | Offer caption shown by the timer. |\n| limited_time_offer.has_expiration | boolean | Optional | Show the live countdown. |\n| buttons | array | Required | Typically copy_code + url. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | marketing |\n| Expiry | expiration_time_ms passed at send |\n| Buttons | copy_code carries the coupon |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"lto_offer\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"image\",\n      \"example\": { \"header_handle\": [\"4:aW1hZ2U...:e:...\"] }\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, grab this before it ends!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"limited_time_offer\",\n      \"limited_time_offer\": { \"text\": \"Expiring soon!\", \"has_expiration\": true }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"copy_code\", \"example\": \"SAVE20\" },\n        { \"type\": \"url\", \"text\": \"Shop now\", \"url\": \"https://ex.com\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create catalog template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"catalog_promo\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Browse our catalog, {{1}}!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"catalog\", \"text\": \"View catalog\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`buttons · catalog`\n\nA body + a single catalog button that opens your whole catalog. Requires a catalog connected to the WABA.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| button.type | string | Required | \"catalog\". |\n| body.text | string | Required | Supports numbered variables. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Prerequisite | catalog connected to the WABA |\n| Thumbnail | set at send via thumbnail_product_retailer_id |\n| Tap | opens catalog; cart submit → order webhook |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"catalog_promo\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Browse our catalog, {{1}}!\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"catalog\", \"text\": \"View catalog\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create single-product (SPM) template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"spm_offer\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"product\"\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Use code {{1}} to get {{2}} off our newest succulent!\",\n      \"example\": { \"body_text\": [[\"15OFF\", \"15%\"]] }\n    },\n    {\n      \"type\": \"footer\",\n      \"text\": \"Offer ends soon\"\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"spm\", \"text\": \"View\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`buttons · spm`\n\nA marketing template that shows one product (image, title, price from the catalog) with a non-customizable spm View button. Header must be format: \"product\" ; the product itself is chosen at send time. Body uses numbered variables.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| header.format | string | Required | Must be \"product\". |\n| button.type | string | Required | \"spm\"; text is the View label (≤ 25). |\n| body.text | string | Required | ≤ 160 chars; numbered variables. |\n| footer.text | string | Optional | ≤ 60 chars. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | marketing |\n| Body | ≤ 160 chars |\n| Product | product_retailer_id + catalog_id supplied at send |\n| Client | WhatsApp v2.22.24+; forwarding disabled |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"spm_offer\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"product\"\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Use code {{1}} to get {{2}} off our newest succulent!\",\n      \"example\": { \"body_text\": [[\"15OFF\", \"15%\"]] }\n    },\n    {\n      \"type\": \"footer\",\n      \"text\": \"Offer ends soon\"\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"spm\", \"text\": \"View\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create multi-product (MPM) template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"mpm_bestsellers\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"text\",\n      \"text\": \"Bestsellers\"\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, here are our picks.\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"mpm\", \"text\": \"View items\" }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`buttons · mpm`\n\nA text header + body + a single mpm button. Sections and products are supplied at send time.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| header.format | string | Required | \"text\" header. |\n| button.type | string | Required | \"mpm\". |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Sections | up to 10, 30 products total (at send) |\n| Prerequisite | catalog connected to the WABA |\n| Tap | opens product list; cart submit → order webhook |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"mpm_bestsellers\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"header\",\n      \"format\": \"text\",\n      \"text\": \"Bestsellers\"\n    },\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, here are our picks.\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        { \"type\": \"mpm\", \"text\": \"View items\" }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Create flow template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"appointment_flow\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, book your slot.\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        {\n          \"type\": \"flow\",\n          \"text\": \"Book now\",\n          \"flow_id\": \"1234567890\",\n          \"navigate_screen\": \"APPOINTMENT\",\n          \"flow_action\": \"navigate\"\n        }\n      ]\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{waba_id}}",
                "message_templates"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`buttons · flow`\n\nBody + a flow button that launches a published Flow. Reference an existing flow_id (or inline flow_json ) and the first screen to open.\n\n**Endpoint:** `POST {{base_url}}/{{waba_id}}/message_templates`\n\n> Result (APPROVED / REJECTED / …) arrives later via the **Template status webhook** (`message_template_status_update`).\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| button.type | string | Required | \"flow\". |\n| button.flow_id | string | If published | Id of an existing Flow (or use flow_json). |\n| button.navigate_screen | string | Required | First screen id to open. |\n| button.flow_action | string | Optional | navigate (default) or data_exchange. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Reference | flow_id (published) or inline flow_json |\n| Tap | opens the Flow; completion → nfm_reply webhook |\n| Window | send via template anytime; data in response_json |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Template created",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"appointment_flow\",\n  \"language\": \"en_US\",\n  \"category\": \"marketing\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, book your slot.\",\n      \"example\": { \"body_text\": [[\"John\"]] }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        {\n          \"type\": \"flow\",\n          \"text\": \"Book now\",\n          \"flow_id\": \"1234567890\",\n          \"navigate_screen\": \"APPOINTMENT\",\n          \"flow_action\": \"navigate\"\n        }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"id\": \"1234567890\",\n  \"status\": \"PENDING\",\n  \"category\": \"MARKETING\"\n}"
            }
          ]
        },
        {
          "name": "Commerce",
          "description": "Order_details checkout templates. The template is identical for gateway vs payment_link and catalog vs custom — only the send payload differs.",
          "item": [
            {
              "name": "Create checkout button template",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"order_checkout\",\n  \"language\": \"en_US\",\n  \"category\": \"utility\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, your order {{2}} is ready. Tap below to review the items and pay securely.\",\n      \"example\": {\n        \"body_text\": [\n          [\n            \"John\",\n            \"#A1234\"\n          ]\n        ]\n      }\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        {\n          \"type\": \"order_details\",\n          \"text\": \"Review and pay\"\n        }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "Body + order_details (Review and pay) button. Same template works for gateway or payment_link, catalog or custom items — those are chosen at send time."
              },
              "response": []
            },
            {
              "name": "Create order details template",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"order_details\",\n  \"language\": \"en_US\",\n  \"category\": \"utility\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Hi {{1}}, here is the breakdown for order {{2}}. Review the items, taxes and total, then pay.\",\n      \"example\": {\n        \"body_text\": [\n          [\n            \"John\",\n            \"#A1234\"\n          ]\n        ]\n      }\n    },\n    {\n      \"type\": \"footer\",\n      \"text\": \"Complete payment before the order expires\"\n    },\n    {\n      \"type\": \"buttons\",\n      \"buttons\": [\n        {\n          \"type\": \"order_details\",\n          \"text\": \"Review and pay\"\n        }\n      ]\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "Body + footer + order_details button. Itemized order supplied at send."
              },
              "response": []
            },
            {
              "name": "Create order status template",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{waba_id}}/message_templates?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{waba_id}}",
                    "message_templates"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"name\": \"order_status_update\",\n  \"language\": \"en_US\",\n  \"category\": \"utility\",\n  \"components\": [\n    {\n      \"type\": \"body\",\n      \"text\": \"Order {{1}} is now {{2}}. {{3}}\",\n      \"example\": {\n        \"body_text\": [\n          [\n            \"#A1234\",\n            \"shipped\",\n            \"Track: https://track.example.com/A1234\"\n          ]\n        ]\n      }\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "Transactional template for order status updates (variables: order id, status, tracking)."
              },
              "response": []
            }
          ]
        }
      ]
    },
    {
      "name": "03 · Template — Sending",
      "description": "Send approved templates by filling header / body / button variables.",
      "item": [
        {
          "name": "Utility template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_confirmation\",\n    \"language\": { \"code\": \"en\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"John\" },\n          { \"type\": \"text\", \"text\": \"#A1234\" }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · utility`\n\nBody-only template for transactional updates (order, payment, appointment). Parameters map positionally to the template's {{1}}, {{2}} …\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| template.name | string | Required | Exact approved template name. |\n| template.language.code | string | Required | e.g. en, en_US, hi. |\n| components[] | array | Conditional | Required only if the template has variables. |\n| components[].type | string | Required | header / body / button. |\n| parameters[].type | string | Required | text / currency / date_time / image … |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | UTILITY (approved at creation) |\n| Parameters | must match the template's variable count & order |\n| Window | sendable anytime (no 24h limit) |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_confirmation\",\n    \"language\": { \"code\": \"en\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"John\" },\n          { \"type\": \"text\", \"text\": \"#A1234\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Marketing template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"summer_sale\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"20%\" }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"quick_reply\",\n        \"index\": \"0\",\n        \"parameters\": [\n          { \"type\": \"payload\", \"payload\": \"STOP_PROMOS\" }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · marketing`\n\nPromotional template with a media header, body variables and a quick-reply button. Quick-reply taps return a button -type webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| header parameters[].image.link | string (URL) | If media header | Public URL; matches the header format. |\n| button.sub_type | string | Required | quick_reply / url / phone_number / copy_code … |\n| button.index | string | Required | Zero-based button position. |\n| button parameters[].payload | string | quick_reply | Returned to you on tap. |\n| messages[].button.payload | string | Webhook | The payload you set, echoed on tap. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | MARKETING |\n| Quick-reply tap | arrives as type:\"button\" (not interactive) |\n| Per-user pacing | subject to marketing template limits |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"summer_sale\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"20%\" }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"quick_reply\",\n        \"index\": \"0\",\n        \"parameters\": [\n          { \"type\": \"payload\", \"payload\": \"STOP_PROMOS\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            },
            {
              "name": "📥 Inbound webhook (example)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"summer_sale\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"20%\" }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"quick_reply\",\n        \"index\": \"0\",\n        \"parameters\": [\n          { \"type\": \"payload\", \"payload\": \"STOP_PROMOS\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"button\",\n                \"button\": {\n                  \"payload\": \"STOP_PROMOS\",\n                  \"text\": \"Stop promotions\"\n                },\n                \"context\": {\n                  \"from\": \"{{business_phone}}\",\n                  \"id\": \"{{wamid_of_template}}\"\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Authentication template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"otp_code\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"123456\" }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"url\",\n        \"index\": \"0\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"123456\" }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · authentication`\n\nOne-time password delivery with a copy-code / one-tap autofill button. The code parameter appears in both the body and the button.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| body parameters[0].text | string | Required | The OTP code. |\n| button.sub_type | string | Required | url (one-tap) or copy_code. |\n| button parameters[0].text | string | Required | Must equal the OTP in the body. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | AUTHENTICATION (fixed body text) |\n| Code | body and button code must match |\n| No webhook | copy/autofill does not send an inbound message |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"otp_code\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"123456\" }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"url\",\n        \"index\": \"0\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"123456\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Carousel template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"product_carousel\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"carousel\",\n        \"cards\": [\n          {\n            \"card_index\": 0,\n            \"components\": [\n              {\n                \"type\": \"header\",\n                \"parameters\": [\n                  { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n                ]\n              },\n              {\n                \"type\": \"body\",\n                \"parameters\": [ { \"type\": \"text\", \"text\": \"Item 1\" } ]\n              },\n              {\n                \"type\": \"button\",\n                \"sub_type\": \"quick_reply\",\n                \"index\": \"0\",\n                \"parameters\": [ { \"type\": \"payload\", \"payload\": \"CARD_0_BUY\" } ]\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · carousel`\n\nA body message followed by scrollable cards, each with its own media header and buttons. Variables are filled per card.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| components[].type | string | Required | \"carousel\" component. |\n| carousel.cards[] | array | Required | One entry per template card. |\n| cards[].card_index | integer | Required | Matches the approved card order. |\n| cards[].components[] | array | Required | header + body + button params per card. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Cards | up to 10 |\n| Card buttons | same set across all cards (per approval) |\n| quick-reply tap | arrives as type:\"button\" |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"product_carousel\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"carousel\",\n        \"cards\": [\n          {\n            \"card_index\": 0,\n            \"components\": [\n              {\n                \"type\": \"header\",\n                \"parameters\": [\n                  { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n                ]\n              },\n              {\n                \"type\": \"body\",\n                \"parameters\": [ { \"type\": \"text\", \"text\": \"Item 1\" } ]\n              },\n              {\n                \"type\": \"button\",\n                \"sub_type\": \"quick_reply\",\n                \"index\": \"0\",\n                \"parameters\": [ { \"type\": \"payload\", \"payload\": \"CARD_0_BUY\" } ]\n              }\n            ]\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Limited-time offer template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"lto_offer\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"limited_time_offer\",\n        \"parameters\": [\n          {\n            \"type\": \"limited_time_offer\",\n            \"limited_time_offer\": { \"expiration_time_ms\": 1718620000000 }\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"copy_code\",\n        \"index\": \"0\",\n        \"parameters\": [ { \"type\": \"coupon_code\", \"coupon_code\": \"SAVE20\" } ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · limited_time_offer`\n\nPromo with a live countdown and a copy-code coupon button. The expiry drives the on-screen timer.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| limited_time_offer.expiration_time_ms | integer | Required | Unix epoch in milliseconds. |\n| button.sub_type | string | Required | copy_code. |\n| button parameters[].coupon_code | string | Required | Code copied on tap. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Category | MARKETING |\n| Timer | expiration_time_ms must be in the future |\n| copy_code | no inbound webhook on tap |\n"
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"lto_offer\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"limited_time_offer\",\n        \"parameters\": [\n          {\n            \"type\": \"limited_time_offer\",\n            \"limited_time_offer\": { \"expiration_time_ms\": 1718620000000 }\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"copy_code\",\n        \"index\": \"0\",\n        \"parameters\": [ { \"type\": \"coupon_code\", \"coupon_code\": \"SAVE20\" } ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Catalog template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"catalog_promo\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"catalog\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": { \"thumbnail_product_retailer_id\": \"{{product_retailer_id}}\" }\n          }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · catalog`\n\nTemplate that opens your full catalog via a catalog button. Cart submissions return an order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| button.sub_type | string | Required | catalog. |\n| action.thumbnail_product_retailer_id | string | Optional | Cover product for the button. |\n| messages[].order.product_items[] | array | Webhook | product_retailer_id, quantity, item_price, currency. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Prerequisite | connected Commerce catalog |\n| Order | arrives as type:\"order\" in messages[] |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"catalog_promo\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"catalog\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": { \"thumbnail_product_retailer_id\": \"{{product_retailer_id}}\" }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            },
            {
              "name": "📥 Inbound webhook (example)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"catalog_promo\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"catalog\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": { \"thumbnail_product_retailer_id\": \"{{product_retailer_id}}\" }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"text\": \"Optional note from customer\",\n                  \"product_items\": [\n                    {\n                      \"product_retailer_id\": \"SKU-1\",\n                      \"quantity\": \"2\",\n                      \"item_price\": \"499.00\",\n                      \"currency\": \"INR\"\n                    }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Single-product (SPM) template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"spm_offer\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"product\",\n            \"product\": {\n              \"product_retailer_id\": \"SKU-1\",\n              \"catalog_id\": \"{{catalog_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"25OFF\" },\n          { \"type\": \"text\", \"text\": \"25%\" }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · spm`\n\nSends an approved SPM template. The product image/title/price are pulled from the catalog via the product header parameter; the body fills numbered variables in order. Cart submit → order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| header parameters[].type | string | Required | \"product\". |\n| product.product_retailer_id | string | Required | SKU shown in the card. |\n| product.catalog_id | string | Required | Connected catalog id. |\n| body parameters[] | array | If body vars | Numbered, in order — no parameter_name. |\n| order.product_items[] | array | Webhook | Returned on cart submit. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Header | must be the product parameter |\n| Body | numbered parameters, in order |\n| Webhook | type:\"order\" |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"spm_offer\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"product\",\n            \"product\": {\n              \"product_retailer_id\": \"SKU-1\",\n              \"catalog_id\": \"{{catalog_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"25OFF\" },\n          { \"type\": \"text\", \"text\": \"25%\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            },
            {
              "name": "📥 Inbound webhook (example)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"spm_offer\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"product\",\n            \"product\": {\n              \"product_retailer_id\": \"SKU-1\",\n              \"catalog_id\": \"{{catalog_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          { \"type\": \"text\", \"text\": \"25OFF\" },\n          { \"type\": \"text\", \"text\": \"25%\" }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\", \"quantity\": \"1\", \"item_price\": \"499.00\", \"currency\": \"INR\" }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Multi-product template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"mpm_template\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"Bestsellers\" } ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"mpm\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"thumbnail_product_retailer_id\": \"SKU-1\",\n              \"sections\": [\n                {\n                  \"title\": \"Featured\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\" },\n                    { \"product_retailer_id\": \"SKU-2\" }\n                  ]\n                }\n              ]\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · mpm`\n\nTemplate that opens a curated set of catalog products grouped into sections. Cart submissions return an order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| button.sub_type | string | Required | mpm. |\n| action.sections[] | array | Required | title + product_items[]. |\n| product_items[].product_retailer_id | string | Required | SKU from your catalog. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Sections | up to 10, up to 30 products total |\n| Order | arrives as type:\"order\" |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"mpm_template\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"Bestsellers\" } ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"mpm\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"thumbnail_product_retailer_id\": \"SKU-1\",\n              \"sections\": [\n                {\n                  \"title\": \"Featured\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\" },\n                    { \"product_retailer_id\": \"SKU-2\" }\n                  ]\n                }\n              ]\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            },
            {
              "name": "📥 Inbound webhook (example)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"mpm_template\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"Bestsellers\" } ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"mpm\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"thumbnail_product_retailer_id\": \"SKU-1\",\n              \"sections\": [\n                {\n                  \"title\": \"Featured\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\" },\n                    { \"product_retailer_id\": \"SKU-2\" }\n                  ]\n                }\n              ]\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\", \"quantity\": \"1\", \"item_price\": \"499.00\", \"currency\": \"INR\" },\n                    { \"product_retailer_id\": \"SKU-2\", \"quantity\": \"3\", \"item_price\": \"199.00\", \"currency\": \"INR\" }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Flow template",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"appointment_flow\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"flow\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"flow_token\": \"{{flow_token}}\",\n              \"flow_action_data\": {}\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "{{phone_number_id}}",
                "messages"
              ],
              "query": [
                {
                  "key": "waba_id",
                  "value": "{{waba_id}}",
                  "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                }
              ]
            },
            "description": "`template · flow`\n\nTemplate whose button launches a WhatsApp Flow (a multi-screen form). On completion you receive an nfm_reply webhook with the answers in response_json .\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| button.sub_type | string | Required | flow. |\n| action.flow_token | string | Required | Your correlation token, echoed back. |\n| nfm_reply.response_json | string (JSON) | Webhook | JSON-encoded string; parse server-side. Keys depend on the flow. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| response_json | a string — JSON.parse() it, wrapped in try/catch |\n| flow_token | use it to tie the reply to a session |\n| body | \"Sent\" — not the user data |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
          },
          "response": [
            {
              "name": "✅ 200 — Graph API send response",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"appointment_flow\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"flow\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"flow_token\": \"{{flow_token}}\",\n              \"flow_action_data\": {}\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
            },
            {
              "name": "📥 Inbound webhook (example)",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"appointment_flow\",\n    \"language\": { \"code\": \"en_US\" },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [ { \"type\": \"text\", \"text\": \"John\" } ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"flow\",\n        \"index\": \"0\",\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"flow_token\": \"{{flow_token}}\",\n              \"flow_action_data\": {}\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"interactive\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_template}}\" },\n                \"interactive\": {\n                  \"type\": \"nfm_reply\",\n                  \"nfm_reply\": {\n                    \"name\": \"flow\",\n                    \"body\": \"Sent\",\n                    \"response_json\": \"{\\\"flow_token\\\":\\\"{{flow_token}}\\\",\\\"appointment_date\\\":\\\"2026-07-01\\\",\\\"slot\\\":\\\"10:00\\\"}\"\n                  }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
            }
          ]
        },
        {
          "name": "Commerce",
          "description": "All four combinations: catalog (retailer_id) / custom (name) products × payment_gateway / payment_link. order_status updates an existing order.",
          "item": [
            {
              "name": "Checkout button · Catalog · gateway",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_checkout\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"image\",\n            \"image\": {\n              \"id\": \"{{header_image_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"physical-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_gateway\",\n                    \"payment_gateway\": {\n                      \"type\": \"razorpay\",\n                      \"configuration_name\": \"{{payment_config}}\"\n                    }\n                  }\n                ],\n                \"shipping_info\": {\n                  \"country\": \"IN\",\n                  \"addresses\": [\n                    {\n                      \"name\": \"John Doe\",\n                      \"phone_number\": \"{{recipient_phone}}\",\n                      \"address\": \"12 MG Road\",\n                      \"city\": \"Raipur\",\n                      \"state\": \"Chhattisgarh\",\n                      \"in_pin_code\": \"492001\",\n                      \"house_number\": \"12\",\n                      \"building_name\": \"Vertex Tower\"\n                    }\n                  ]\n                },\n                \"order\": {\n                  \"items\": [\n                    {\n                      \"retailer_id\": \"SKU-EARBUDS\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"sale_amount\": {\n                        \"offset\": 100,\n                        \"value\": 44900\n                      },\n                      \"quantity\": 1,\n                      \"country_of_origin\": \"IN\"\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 44900\n                  },\n                  \"shipping\": {\n                    \"offset\": 100,\n                    \"value\": 4900\n                  },\n                  \"tax\": {\n                    \"offset\": 100,\n                    \"value\": 8964,\n                    \"description\": \"GST 18%\"\n                  },\n                  \"discount\": {\n                    \"offset\": 100,\n                    \"value\": 5000,\n                    \"description\": \"FIRST10\"\n                  },\n                  \"status\": \"pending\",\n                  \"expiration\": {\n                    \"timestamp\": \"1735660800\"\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 53764\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "physical-goods, catalog items (retailer_id), native gateway checkout. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Checkout button · Catalog · payment link",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_checkout\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"image\",\n            \"image\": {\n              \"id\": \"{{header_image_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"physical-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_link\",\n                    \"payment_link\": {\n                      \"uri\": \"{{payment_link_url}}\"\n                    }\n                  }\n                ],\n                \"shipping_info\": {\n                  \"country\": \"IN\",\n                  \"addresses\": [\n                    {\n                      \"name\": \"John Doe\",\n                      \"phone_number\": \"{{recipient_phone}}\",\n                      \"address\": \"12 MG Road\",\n                      \"city\": \"Raipur\",\n                      \"state\": \"Chhattisgarh\",\n                      \"in_pin_code\": \"492001\",\n                      \"house_number\": \"12\",\n                      \"building_name\": \"Vertex Tower\"\n                    }\n                  ]\n                },\n                \"order\": {\n                  \"items\": [\n                    {\n                      \"retailer_id\": \"SKU-EARBUDS\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"sale_amount\": {\n                        \"offset\": 100,\n                        \"value\": 44900\n                      },\n                      \"quantity\": 1,\n                      \"country_of_origin\": \"IN\"\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 44900\n                  },\n                  \"shipping\": {\n                    \"offset\": 100,\n                    \"value\": 4900\n                  },\n                  \"tax\": {\n                    \"offset\": 100,\n                    \"value\": 8964,\n                    \"description\": \"GST 18%\"\n                  },\n                  \"discount\": {\n                    \"offset\": 100,\n                    \"value\": 5000,\n                    \"description\": \"FIRST10\"\n                  },\n                  \"status\": \"pending\",\n                  \"expiration\": {\n                    \"timestamp\": \"1735660800\"\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 53764\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "physical-goods, catalog items, hosted payment link. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Checkout button · Custom · gateway",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_checkout\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"image\",\n            \"image\": {\n              \"id\": \"{{header_image_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"physical-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_gateway\",\n                    \"payment_gateway\": {\n                      \"type\": \"razorpay\",\n                      \"configuration_name\": \"{{payment_config}}\"\n                    }\n                  }\n                ],\n                \"shipping_info\": {\n                  \"country\": \"IN\",\n                  \"addresses\": [\n                    {\n                      \"name\": \"John Doe\",\n                      \"phone_number\": \"{{recipient_phone}}\",\n                      \"address\": \"12 MG Road\",\n                      \"city\": \"Raipur\",\n                      \"state\": \"Chhattisgarh\",\n                      \"in_pin_code\": \"492001\",\n                      \"house_number\": \"12\",\n                      \"building_name\": \"Vertex Tower\"\n                    }\n                  ]\n                },\n                \"order\": {\n                  \"items\": [\n                    {\n                      \"name\": \"Wireless Earbuds\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"sale_amount\": {\n                        \"offset\": 100,\n                        \"value\": 44900\n                      },\n                      \"quantity\": 1,\n                      \"country_of_origin\": \"IN\"\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 44900\n                  },\n                  \"shipping\": {\n                    \"offset\": 100,\n                    \"value\": 4900\n                  },\n                  \"tax\": {\n                    \"offset\": 100,\n                    \"value\": 8964,\n                    \"description\": \"GST 18%\"\n                  },\n                  \"discount\": {\n                    \"offset\": 100,\n                    \"value\": 5000,\n                    \"description\": \"FIRST10\"\n                  },\n                  \"status\": \"pending\",\n                  \"expiration\": {\n                    \"timestamp\": \"1735660800\"\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 53764\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "physical-goods, custom items (name), native gateway checkout. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Checkout button · Custom · payment link",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_checkout\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"header\",\n        \"parameters\": [\n          {\n            \"type\": \"image\",\n            \"image\": {\n              \"id\": \"{{header_image_id}}\"\n            }\n          }\n        ]\n      },\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"physical-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_link\",\n                    \"payment_link\": {\n                      \"uri\": \"{{payment_link_url}}\"\n                    }\n                  }\n                ],\n                \"shipping_info\": {\n                  \"country\": \"IN\",\n                  \"addresses\": [\n                    {\n                      \"name\": \"John Doe\",\n                      \"phone_number\": \"{{recipient_phone}}\",\n                      \"address\": \"12 MG Road\",\n                      \"city\": \"Raipur\",\n                      \"state\": \"Chhattisgarh\",\n                      \"in_pin_code\": \"492001\",\n                      \"house_number\": \"12\",\n                      \"building_name\": \"Vertex Tower\"\n                    }\n                  ]\n                },\n                \"order\": {\n                  \"items\": [\n                    {\n                      \"name\": \"Wireless Earbuds\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"sale_amount\": {\n                        \"offset\": 100,\n                        \"value\": 44900\n                      },\n                      \"quantity\": 1,\n                      \"country_of_origin\": \"IN\"\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 44900\n                  },\n                  \"shipping\": {\n                    \"offset\": 100,\n                    \"value\": 4900\n                  },\n                  \"tax\": {\n                    \"offset\": 100,\n                    \"value\": 8964,\n                    \"description\": \"GST 18%\"\n                  },\n                  \"discount\": {\n                    \"offset\": 100,\n                    \"value\": 5000,\n                    \"description\": \"FIRST10\"\n                  },\n                  \"status\": \"pending\",\n                  \"expiration\": {\n                    \"timestamp\": \"1735660800\"\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 53764\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "physical-goods, custom items, hosted payment link. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Order details · Catalog · gateway",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_details\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"digital-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_gateway\",\n                    \"payment_gateway\": {\n                      \"type\": \"razorpay\",\n                      \"configuration_name\": \"{{payment_config}}\"\n                    }\n                  }\n                ],\n                \"order\": {\n                  \"status\": \"pending\",\n                  \"items\": [\n                    {\n                      \"retailer_id\": \"SKU-EARBUDS\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"quantity\": 1\n                    },\n                    {\n                      \"retailer_id\": \"SKU-CASE\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 19900\n                      },\n                      \"quantity\": 1\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 69800\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 69800\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "digital-goods, catalog items (retailer_id), native gateway checkout. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Order details · Catalog · payment link",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_details\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"digital-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_link\",\n                    \"payment_link\": {\n                      \"uri\": \"{{payment_link_url}}\"\n                    }\n                  }\n                ],\n                \"order\": {\n                  \"status\": \"pending\",\n                  \"items\": [\n                    {\n                      \"retailer_id\": \"SKU-EARBUDS\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"quantity\": 1\n                    },\n                    {\n                      \"retailer_id\": \"SKU-CASE\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 19900\n                      },\n                      \"quantity\": 1\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 69800\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 69800\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "digital-goods, catalog items, hosted payment link. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Order details · Custom · gateway",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_details\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"digital-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_gateway\",\n                    \"payment_gateway\": {\n                      \"type\": \"razorpay\",\n                      \"configuration_name\": \"{{payment_config}}\"\n                    }\n                  }\n                ],\n                \"order\": {\n                  \"status\": \"pending\",\n                  \"items\": [\n                    {\n                      \"name\": \"Wireless Earbuds\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"quantity\": 1\n                    },\n                    {\n                      \"name\": \"Charging Case\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 19900\n                      },\n                      \"quantity\": 1\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 69800\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 69800\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "digital-goods, custom items (name), native gateway checkout. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Order details · Custom · payment link",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_details\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"John\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_details\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_details\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"currency\": \"INR\",\n                \"type\": \"digital-goods\",\n                \"payment_settings\": [\n                  {\n                    \"type\": \"payment_link\",\n                    \"payment_link\": {\n                      \"uri\": \"{{payment_link_url}}\"\n                    }\n                  }\n                ],\n                \"order\": {\n                  \"status\": \"pending\",\n                  \"items\": [\n                    {\n                      \"name\": \"Wireless Earbuds\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 49900\n                      },\n                      \"quantity\": 1\n                    },\n                    {\n                      \"name\": \"Charging Case\",\n                      \"amount\": {\n                        \"offset\": 100,\n                        \"value\": 19900\n                      },\n                      \"quantity\": 1\n                    }\n                  ],\n                  \"subtotal\": {\n                    \"offset\": 100,\n                    \"value\": 69800\n                  }\n                },\n                \"total_amount\": {\n                  \"offset\": 100,\n                  \"value\": 69800\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "digital-goods, custom items, hosted payment link. physical-goods → shipping_info required; digital-goods → omit it. Amounts in minor units (value+offset, 100 = paise/cents)."
              },
              "response": []
            },
            {
              "name": "Order status update",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account."
                    }
                  ]
                },
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"template\",\n  \"template\": {\n    \"name\": \"order_status_update\",\n    \"language\": {\n      \"policy\": \"deterministic\",\n      \"code\": \"en_US\"\n    },\n    \"components\": [\n      {\n        \"type\": \"body\",\n        \"parameters\": [\n          {\n            \"type\": \"text\",\n            \"text\": \"#A1234\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"shipped\"\n          },\n          {\n            \"type\": \"text\",\n            \"text\": \"Track: https://track.example.com/A1234\"\n          }\n        ]\n      },\n      {\n        \"type\": \"button\",\n        \"sub_type\": \"order_status\",\n        \"index\": 0,\n        \"parameters\": [\n          {\n            \"type\": \"action\",\n            \"action\": {\n              \"order_status\": {\n                \"reference_id\": \"{{order_reference_id}}\",\n                \"order\": {\n                  \"status\": \"shipped\",\n                  \"description\": \"Out for delivery, arriving today\"\n                }\n              }\n            }\n          }\n        ]\n      }\n    ]\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "description": "Updates a previously sent order by reference_id (status: pending → processing → partially_shipped → shipped → completed/canceled)."
              },
              "response": []
            }
          ]
        }
      ]
    },
    {
      "name": "04 · Service Messages",
      "description": "Free-form replies inside the 24-hour window.",
      "item": [
        {
          "name": "Standard",
          "description": "Text, media, contacts, location, reaction.",
          "item": [
            {
              "name": "Text",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"text\",\n  \"text\": {\n    \"preview_url\": true,\n    \"body\": \"As requested, here is the link to our latest product: https://www.example.com/product\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`text`\n\nA text body with an optional link preview. URLs in the body are auto-hyperlinked.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| text.body | string | Required | The message text. Max 4096 chars. |\n| text.preview_url | boolean | Optional | true = render a preview of the first URL in body. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| body | max 4096 characters |\n| preview_url | previews first URL only, when true |\n| URL scheme | must start with http:// or https:// |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"text\",\n  \"text\": {\n    \"preview_url\": true,\n    \"body\": \"As requested, here is the link to our latest product: https://www.example.com/product\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Audio",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"audio\",\n  \"audio\": {\n    \"link\": \"{{media_audio_url}}\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`audio`\n\nAn audio clip delivered from a public URL. Audio has no caption.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| audio.link | string (URL) | Required | Public URL of the audio file. Never a media id. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Max file size | 16 MB |\n| Formats | AAC, AMR, MP3, M4A, OGG (OPUS only, mono) |\n| Caption | Not supported |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"audio\",\n  \"audio\": {\n    \"link\": \"{{media_audio_url}}\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Image",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"image\",\n  \"image\": {\n    \"link\": \"{{media_image_url}}\",\n    \"caption\": \"Optional caption text\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`image`\n\nAn image delivered from a public URL, with an optional caption.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| image.link | string (URL) | Required | Public URL of the image. Never a media id. |\n| image.caption | string | Optional | Caption shown under the image. Max 1024 chars. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Max file size | 5 MB |\n| Formats | JPEG, PNG |\n| caption | max 1024 characters |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"image\",\n  \"image\": {\n    \"link\": \"{{media_image_url}}\",\n    \"caption\": \"Optional caption text\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Video",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"video\",\n  \"video\": {\n    \"link\": \"{{media_video_url}}\",\n    \"caption\": \"Optional caption text\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`video`\n\nA video delivered from a public URL, with an optional caption.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| video.link | string (URL) | Required | Public URL of the video. Never a media id. |\n| video.caption | string | Optional | Caption shown under the video. Max 1024 chars. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Max file size | 16 MB |\n| Formats | MP4, 3GPP — H.264 video + AAC audio only |\n| caption | max 1024 characters |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"video\",\n  \"video\": {\n    \"link\": \"{{media_video_url}}\",\n    \"caption\": \"Optional caption text\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Document",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"document\",\n  \"document\": {\n    \"link\": \"{{media_document_url}}\",\n    \"caption\": \"Optional caption text\",\n    \"filename\": \"document.pdf\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`document`\n\nA document (PDF, Office files, txt, etc.) delivered from a public URL.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| document.link | string (URL) | Required | Public URL of the document. Never a media id. |\n| document.caption | string | Optional | Caption shown with the document. Max 1024 chars. |\n| document.filename | string | Optional | Display filename; extension drives the file-type icon. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Max file size | 100 MB |\n| caption | max 1024 characters |\n| filename | display name; extension drives the file-type icon |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"document\",\n  \"document\": {\n    \"link\": \"{{media_document_url}}\",\n    \"caption\": \"Optional caption text\",\n    \"filename\": \"document.pdf\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Sticker",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"sticker\",\n  \"sticker\": {\n    \"link\": \"{{media_sticker_url}}\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`sticker`\n\nA WebP sticker delivered from a public URL. No caption.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| sticker.link | string (URL) | Required | Public URL of the .webp sticker. Never a media id. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Format | WebP only |\n| Static | max 100 KB |\n| Animated | max 500 KB |\n| Caption | Not supported |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"sticker\",\n  \"sticker\": {\n    \"link\": \"{{media_sticker_url}}\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Contacts",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"contacts\",\n  \"contacts\": [\n    {\n      \"name\": {\n        \"formatted_name\": \"John Doe\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\"\n      },\n      \"phones\": [\n        { \"phone\": \"+16505551234\", \"type\": \"WORK\", \"wa_id\": \"16505551234\" }\n      ],\n      \"emails\": [\n        { \"email\": \"john@example.com\", \"type\": \"WORK\" }\n      ],\n      \"org\": { \"company\": \"Example Inc\", \"department\": \"Sales\", \"title\": \"Manager\" },\n      \"urls\": [\n        { \"url\": \"https://www.example.com\", \"type\": \"WORK\" }\n      ],\n      \"addresses\": [\n        {\n          \"street\": \"1 Hacker Way\",\n          \"city\": \"Menlo Park\",\n          \"state\": \"CA\",\n          \"zip\": \"94025\",\n          \"country\": \"United States\",\n          \"country_code\": \"us\",\n          \"type\": \"WORK\"\n        }\n      ],\n      \"birthday\": \"1990-01-15\"\n    }\n  ]\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`contacts`\n\nOne or more contact cards. contacts is an array — each entry is a full contact.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| contacts | array | Required | Array of contact objects. |\n| contacts[].name | object | Required | Name object. |\n| name.formatted_name | string | Required | Full display name. |\n| name.first_name / last_name | string | Conditional | At least one required besides formatted_name. |\n| contacts[].phones | array | Optional | phone, type (HOME/WORK), wa_id. |\n| contacts[].emails | array | Optional | email, type. |\n| contacts[].org | object | Optional | company, department, title. |\n| contacts[].urls | array | Optional | url, type. |\n| contacts[].addresses | array | Optional | street, city, state, zip, country, country_code, type. |\n| contacts[].birthday | string | Optional | YYYY-MM-DD. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| name | formatted_name + at least 1 other name field |\n| type fields | HOME or WORK |\n| birthday | YYYY-MM-DD |\n| wa_id | makes the phone tappable to open a chat |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"contacts\",\n  \"contacts\": [\n    {\n      \"name\": {\n        \"formatted_name\": \"John Doe\",\n        \"first_name\": \"John\",\n        \"last_name\": \"Doe\"\n      },\n      \"phones\": [\n        { \"phone\": \"+16505551234\", \"type\": \"WORK\", \"wa_id\": \"16505551234\" }\n      ],\n      \"emails\": [\n        { \"email\": \"john@example.com\", \"type\": \"WORK\" }\n      ],\n      \"org\": { \"company\": \"Example Inc\", \"department\": \"Sales\", \"title\": \"Manager\" },\n      \"urls\": [\n        { \"url\": \"https://www.example.com\", \"type\": \"WORK\" }\n      ],\n      \"addresses\": [\n        {\n          \"street\": \"1 Hacker Way\",\n          \"city\": \"Menlo Park\",\n          \"state\": \"CA\",\n          \"zip\": \"94025\",\n          \"country\": \"United States\",\n          \"country_code\": \"us\",\n          \"type\": \"WORK\"\n        }\n      ],\n      \"birthday\": \"1990-01-15\"\n    }\n  ]\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Location",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"location\",\n  \"location\": {\n    \"latitude\": \"21.1938\",\n    \"longitude\": \"81.3509\",\n    \"name\": \"Atmik Bharat Industries\",\n    \"address\": \"Bhilai, Chhattisgarh, India\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`location`\n\nA pin on the map. Optionally labelled with a name and address.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| location.latitude | string/number | Required | Latitude. |\n| location.longitude | string/number | Required | Longitude. |\n| location.name | string | Optional | Label for the pin. |\n| location.address | string | Optional | Address under the name. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| latitude / longitude | required |\n| name + address | optional — set together so the pin shows a label |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"location\",\n  \"location\": {\n    \"latitude\": \"21.1938\",\n    \"longitude\": \"81.3509\",\n    \"name\": \"Atmik Bharat Industries\",\n    \"address\": \"Bhilai, Chhattisgarh, India\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Reaction",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"reaction\",\n  \"reaction\": {\n    \"message_id\": \"{{wamid_to_react_to}}\",\n    \"emoji\": \"\\ud83d\\udc4d\"\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`reaction`\n\nReact to a previous message with a single emoji.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| reaction.message_id | string (wamid) | Required | wamid being reacted to. |\n| reaction.emoji | string | Required | Single emoji, or \"\" to remove. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| message_id | valid wamid, 30 days old max, not deleted |\n| emoji | single emoji; \"\" removes the reaction |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"reaction\",\n  \"reaction\": {\n    \"message_id\": \"{{wamid_to_react_to}}\",\n    \"emoji\": \"\\ud83d\\udc4d\"\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            }
          ]
        },
        {
          "name": "Interactive",
          "description": "Reply buttons, list, CTA URL, carousel, flow, location request, address.",
          "item": [
            {
              "name": "Reply buttons",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"button\",\n    \"header\": {\n      \"type\": \"image\",\n      \"image\": { \"link\": \"{{media_image_url}}\" }\n    },\n    \"body\": { \"text\": \"Pick an option below.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"buttons\": [\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-1\", \"title\": \"Yes\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-2\", \"title\": \"No\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-3\", \"title\": \"Maybe\" } }\n      ]\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · button`\n\nUp to 3 quick-reply buttons under a body, with optional header and footer. A tap returns a button_reply webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"button\". |\n| interactive.body.text | string | Required | Body text. Max 1024. |\n| action.buttons | array | Required | 1–3 buttons. |\n| buttons[].reply.id | string | Required | Unique payload id. Max 256. |\n| buttons[].reply.title | string | Required | Label. Max 20. |\n| interactive.button_reply.id | string | Webhook | The id of the tapped button. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Buttons | 1 to 3 |\n| Button title | max 20 characters |\n| Button id | max 256 characters, unique per message |\n| body.text | max 1024 characters |\n| footer.text | max 60 characters |\n| Webhook | interactive.type = button_reply |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"button\",\n    \"header\": {\n      \"type\": \"image\",\n      \"image\": { \"link\": \"{{media_image_url}}\" }\n    },\n    \"body\": { \"text\": \"Pick an option below.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"buttons\": [\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-1\", \"title\": \"Yes\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-2\", \"title\": \"No\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-3\", \"title\": \"Maybe\" } }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"button\",\n    \"header\": {\n      \"type\": \"image\",\n      \"image\": { \"link\": \"{{media_image_url}}\" }\n    },\n    \"body\": { \"text\": \"Pick an option below.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"buttons\": [\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-1\", \"title\": \"Yes\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-2\", \"title\": \"No\" } },\n        { \"type\": \"reply\", \"reply\": { \"id\": \"btn-3\", \"title\": \"Maybe\" } }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"interactive\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"interactive\": {\n                  \"type\": \"button_reply\",\n                  \"button_reply\": { \"id\": \"btn-1\", \"title\": \"Yes\" }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "List",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our Menu\" },\n    \"body\": { \"text\": \"Choose an item from the list.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"button\": \"View options\",\n      \"sections\": [\n        {\n          \"title\": \"Channels\",\n          \"rows\": [\n            { \"id\": \"row-wa\", \"title\": \"WhatsApp\", \"description\": \"WABA messaging & calling\" },\n            { \"id\": \"row-ig\", \"title\": \"Instagram\", \"description\": \"DM & comment management\" }\n          ]\n        },\n        {\n          \"title\": \"Tools\",\n          \"rows\": [\n            { \"id\": \"row-flow\", \"title\": \"Workflows\", \"description\": \"No-code automation\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · list`\n\nA button that opens a list of selectable rows, grouped into sections. A selection returns a list_reply webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"list\". |\n| interactive.body.text | string | Required | Body text. Max 4096. |\n| action.button | string | Required | Opener label. Max 20. |\n| action.sections | array | Required | 1–10 sections. |\n| sections[].title | string | Conditional | Required if >1 section. Max 24. |\n| rows[].id | string | Required | Unique. Max 200. |\n| interactive.list_reply.id | string | Webhook | The id of the selected row. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Total rows | max 10 across all sections |\n| Sections | max 10 |\n| Row title | max 24 |\n| Row description | max 72 |\n| Button label | max 20 |\n| Webhook | interactive.type = list_reply |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our Menu\" },\n    \"body\": { \"text\": \"Choose an item from the list.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"button\": \"View options\",\n      \"sections\": [\n        {\n          \"title\": \"Channels\",\n          \"rows\": [\n            { \"id\": \"row-wa\", \"title\": \"WhatsApp\", \"description\": \"WABA messaging & calling\" },\n            { \"id\": \"row-ig\", \"title\": \"Instagram\", \"description\": \"DM & comment management\" }\n          ]\n        },\n        {\n          \"title\": \"Tools\",\n          \"rows\": [\n            { \"id\": \"row-flow\", \"title\": \"Workflows\", \"description\": \"No-code automation\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our Menu\" },\n    \"body\": { \"text\": \"Choose an item from the list.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"button\": \"View options\",\n      \"sections\": [\n        {\n          \"title\": \"Channels\",\n          \"rows\": [\n            { \"id\": \"row-wa\", \"title\": \"WhatsApp\", \"description\": \"WABA messaging & calling\" },\n            { \"id\": \"row-ig\", \"title\": \"Instagram\", \"description\": \"DM & comment management\" }\n          ]\n        },\n        {\n          \"title\": \"Tools\",\n          \"rows\": [\n            { \"id\": \"row-flow\", \"title\": \"Workflows\", \"description\": \"No-code automation\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"interactive\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"interactive\": {\n                  \"type\": \"list_reply\",\n                  \"list_reply\": {\n                    \"id\": \"row-wa\",\n                    \"title\": \"WhatsApp\",\n                    \"description\": \"WABA messaging & calling\"\n                  }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "URL button (CTA URL)",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"cta_url\",\n    \"header\": { \"type\": \"text\", \"text\": \"Special offer\" },\n    \"body\": { \"text\": \"Tap below to view the offer on our website.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"name\": \"cta_url\",\n      \"parameters\": {\n        \"display_text\": \"Visit website\",\n        \"url\": \"https://www.example.com/offer\"\n      }\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · cta_url`\n\nA tappable button that opens a URL in the device browser. Tapping just opens the link — no inbound webhook is sent.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"cta_url\". |\n| interactive.body.text | string | Required | Max 1024. |\n| action.name | string | Required | Must be \"cta_url\". |\n| action.parameters.display_text | string | Required | Button label. |\n| action.parameters.url | string (URL) | Required | Destination URL. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| display_text | around 20 characters |\n| body.text | max 1024 |\n| Webhook | none — opening a URL is not reported |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"cta_url\",\n    \"header\": { \"type\": \"text\", \"text\": \"Special offer\" },\n    \"body\": { \"text\": \"Tap below to view the offer on our website.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"name\": \"cta_url\",\n      \"parameters\": {\n        \"display_text\": \"Visit website\",\n        \"url\": \"https://www.example.com/offer\"\n      }\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Media carousel",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"carousel\",\n    \"body\": { \"text\": \"Here are three of our latest arrivals:\" },\n    \"action\": {\n      \"cards\": [\n        {\n          \"card_index\": 0,\n          \"type\": \"cta_url\",\n          \"header\": { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } },\n          \"body\": { \"text\": \"*Card one*\" },\n          \"action\": {\n            \"name\": \"cta_url\",\n            \"parameters\": { \"display_text\": \"Buy now\", \"url\": \"https://shop.example.com/item-1\" }\n          }\n        },\n        {\n          \"card_index\": 1,\n          \"type\": \"cta_url\",\n          \"header\": { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } },\n          \"body\": { \"text\": \"*Card two*\" },\n          \"action\": {\n            \"name\": \"cta_url\",\n            \"parameters\": { \"display_text\": \"Buy now\", \"url\": \"https://shop.example.com/item-2\" }\n          }\n        }\n      ]\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · carousel`\n\nHorizontally scrollable media cards with image/video headers and buttons. If cards use quick-reply buttons, taps arrive as a button_reply webhook (see Reply buttons); CTA-URL cards send nothing.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"carousel\". |\n| interactive.body.text | string | Required | Main body. Max 1024. |\n| action.cards | array | Required | 2–10 cards. |\n| cards[].header | object | Required | image/video via link. |\n| cards[].action | object | Required | cta_url params OR quick_reply buttons[] — must match across cards. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Cards | 2 to 10 |\n| Card body.text | optional, max 160 |\n| Card buttons | type & count must match across ALL cards |\n| Webhook | quick-reply cards -> button_reply; CTA cards -> none |\n"
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"carousel\",\n    \"body\": { \"text\": \"Here are three of our latest arrivals:\" },\n    \"action\": {\n      \"cards\": [\n        {\n          \"card_index\": 0,\n          \"type\": \"cta_url\",\n          \"header\": { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } },\n          \"body\": { \"text\": \"*Card one*\" },\n          \"action\": {\n            \"name\": \"cta_url\",\n            \"parameters\": { \"display_text\": \"Buy now\", \"url\": \"https://shop.example.com/item-1\" }\n          }\n        },\n        {\n          \"card_index\": 1,\n          \"type\": \"cta_url\",\n          \"header\": { \"type\": \"image\", \"image\": { \"link\": \"{{media_image_url}}\" } },\n          \"body\": { \"text\": \"*Card two*\" },\n          \"action\": {\n            \"name\": \"cta_url\",\n            \"parameters\": { \"display_text\": \"Buy now\", \"url\": \"https://shop.example.com/item-2\" }\n          }\n        }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Flow",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"flow\",\n    \"header\": { \"type\": \"text\", \"text\": \"Book appointment\" },\n    \"body\": { \"text\": \"Tap below to pick a slot.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"name\": \"flow\",\n      \"parameters\": {\n        \"flow_message_version\": \"3\",\n        \"flow_token\": \"{{flow_token}}\",\n        \"flow_id\": \"{{flow_id}}\",\n        \"flow_cta\": \"Book now\",\n        \"flow_action\": \"navigate\",\n        \"flow_action_payload\": {\n          \"screen\": \"APPOINTMENT\",\n          \"data\": {}\n        }\n      }\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · flow`\n\nLaunches a multi-screen Flow form via a CTA button inside the 24-hour window. On completion you receive an nfm_reply webhook with answers in response_json .\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"flow\". |\n| parameters.flow_token | string | Required | Your correlation token, echoed back. |\n| parameters.flow_id | string | Required | The published Flow id. |\n| parameters.flow_cta | string | Required | Button label. Max 20. |\n| parameters.flow_action | string | Optional | navigate (default) or data_exchange. |\n| nfm_reply.response_json | string (JSON) | Webhook | JSON-encoded string; parse server-side. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Window | send within the 24-hour service window (or use a Flow template) |\n| response_json | a string — JSON.parse() it in a try/catch |\n| flow_cta | max 20 chars, no emoji |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"flow\",\n    \"header\": { \"type\": \"text\", \"text\": \"Book appointment\" },\n    \"body\": { \"text\": \"Tap below to pick a slot.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"name\": \"flow\",\n      \"parameters\": {\n        \"flow_message_version\": \"3\",\n        \"flow_token\": \"{{flow_token}}\",\n        \"flow_id\": \"{{flow_id}}\",\n        \"flow_cta\": \"Book now\",\n        \"flow_action\": \"navigate\",\n        \"flow_action_payload\": {\n          \"screen\": \"APPOINTMENT\",\n          \"data\": {}\n        }\n      }\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"flow\",\n    \"header\": { \"type\": \"text\", \"text\": \"Book appointment\" },\n    \"body\": { \"text\": \"Tap below to pick a slot.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"name\": \"flow\",\n      \"parameters\": {\n        \"flow_message_version\": \"3\",\n        \"flow_token\": \"{{flow_token}}\",\n        \"flow_id\": \"{{flow_id}}\",\n        \"flow_cta\": \"Book now\",\n        \"flow_action\": \"navigate\",\n        \"flow_action_payload\": {\n          \"screen\": \"APPOINTMENT\",\n          \"data\": {}\n        }\n      }\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"interactive\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"interactive\": {\n                  \"type\": \"nfm_reply\",\n                  \"nfm_reply\": {\n                    \"name\": \"flow\",\n                    \"body\": \"Sent\",\n                    \"response_json\": \"{\\\"flow_token\\\":\\\"{{flow_token}}\\\",\\\"appointment_date\\\":\\\"2026-07-01\\\",\\\"slot\\\":\\\"10:00\\\"}\"\n                  }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Location request",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"location_request_message\",\n    \"body\": { \"text\": \"Please share your location so we can find the nearest store.\" },\n    \"action\": { \"name\": \"send_location\" }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · location_request_message`\n\nPrompts the user with a Send location button; the shared pin arrives as a location webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"location_request_message\". |\n| interactive.body.text | string | Required | Prompt. Max 1024. |\n| action.name | string | Required | Must be \"send_location\". |\n| messages[].location | object | Webhook | latitude, longitude, optional name/address. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| body.text | max 1024 characters |\n| action.name | must be send_location |\n| Webhook | type:\"location\" in messages[] |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"location_request_message\",\n    \"body\": { \"text\": \"Please share your location so we can find the nearest store.\" },\n    \"action\": { \"name\": \"send_location\" }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"location_request_message\",\n    \"body\": { \"text\": \"Please share your location so we can find the nearest store.\" },\n    \"action\": { \"name\": \"send_location\" }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"location\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"location\": {\n                  \"latitude\": 21.1938,\n                  \"longitude\": 81.3509,\n                  \"name\": \"Home\",\n                  \"address\": \"Civic Centre Road, Bhilai\"\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Address",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"address_message\",\n    \"body\": { \"text\": \"Please provide your delivery address.\" },\n    \"action\": {\n      \"name\": \"address_message\",\n      \"parameters\": {\n        \"country\": \"IN\",\n        \"values\": {\n          \"name\": \"John Doe\",\n          \"phone_number\": \"+919999999999\",\n          \"in_pin_code\": \"490001\",\n          \"house_number\": \"12\",\n          \"floor_number\": \"2\",\n          \"tower_number\": \"A\",\n          \"building_name\": \"Sunrise Apartments\",\n          \"address\": \"Civic Centre Road\",\n          \"landmark_area\": \"Near City Mall\",\n          \"city\": \"Bhilai\",\n          \"state\": \"Chhattisgarh\"\n        }\n      }\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · address_message`\n\nNative address form. Availability: India (IN) and Singapore (SG) only. The submitted form arrives as an nfm_reply webhook (name \"address_message\"), with the fields inside response_json .\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"address_message\". |\n| action.parameters.country | string | Required | \"IN\" or \"SG\". |\n| action.parameters.values | object | Optional | Pre-fill (country-specific). |\n| action.parameters.saved_addresses | array | Optional | Saved addresses to pick from. |\n| nfm_reply.response_json | string (JSON) | Webhook | Submitted address fields, JSON-encoded. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Availability | India (IN) & Singapore (SG) only |\n| IN values | in_pin_code, house_number, floor_number, building_name, landmark_area, city, state… |\n| SG values | sg_post_code, unit_number, floor_number… |\n| Webhook | nfm_reply.name = \"address_message\" |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"address_message\",\n    \"body\": { \"text\": \"Please provide your delivery address.\" },\n    \"action\": {\n      \"name\": \"address_message\",\n      \"parameters\": {\n        \"country\": \"IN\",\n        \"values\": {\n          \"name\": \"John Doe\",\n          \"phone_number\": \"+919999999999\",\n          \"in_pin_code\": \"490001\",\n          \"house_number\": \"12\",\n          \"floor_number\": \"2\",\n          \"tower_number\": \"A\",\n          \"building_name\": \"Sunrise Apartments\",\n          \"address\": \"Civic Centre Road\",\n          \"landmark_area\": \"Near City Mall\",\n          \"city\": \"Bhilai\",\n          \"state\": \"Chhattisgarh\"\n        }\n      }\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"address_message\",\n    \"body\": { \"text\": \"Please provide your delivery address.\" },\n    \"action\": {\n      \"name\": \"address_message\",\n      \"parameters\": {\n        \"country\": \"IN\",\n        \"values\": {\n          \"name\": \"John Doe\",\n          \"phone_number\": \"+919999999999\",\n          \"in_pin_code\": \"490001\",\n          \"house_number\": \"12\",\n          \"floor_number\": \"2\",\n          \"tower_number\": \"A\",\n          \"building_name\": \"Sunrise Apartments\",\n          \"address\": \"Civic Centre Road\",\n          \"landmark_area\": \"Near City Mall\",\n          \"city\": \"Bhilai\",\n          \"state\": \"Chhattisgarh\"\n        }\n      }\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"interactive\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"interactive\": {\n                  \"type\": \"nfm_reply\",\n                  \"nfm_reply\": {\n                    \"name\": \"address_message\",\n                    \"body\": \"address_message\",\n                    \"response_json\": \"{\\\"name\\\":\\\"John Doe\\\",\\\"phone_number\\\":\\\"+919999999999\\\",\\\"in_pin_code\\\":\\\"490001\\\",\\\"house_number\\\":\\\"12\\\",\\\"address\\\":\\\"Civic Centre Road\\\",\\\"city\\\":\\\"Bhilai\\\",\\\"state\\\":\\\"Chhattisgarh\\\"}\"\n                  }\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            }
          ]
        },
        {
          "name": "Commerce",
          "description": "Catalog, single-product, multi-product. Cart submit → order webhook.",
          "item": [
            {
              "name": "Catalog message",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"catalog_message\",\n    \"body\": { \"text\": \"Browse our full catalog and add items to your cart.\" },\n    \"action\": {\n      \"name\": \"catalog_message\",\n      \"parameters\": {\n        \"thumbnail_product_retailer_id\": \"SKU-1\"\n      }\n    },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · catalog_message`\n\nShows a button that opens your entire catalog, with one product as the cover thumbnail. Cart submissions return an order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"catalog_message\". |\n| interactive.body.text | string | Required | Body text. Max 1024. |\n| action.name | string | Required | Must be \"catalog_message\". |\n| parameters.thumbnail_product_retailer_id | string | Optional | Cover product SKU; defaults to first catalog item. |\n| order.product_items[] | array | Webhook | product_retailer_id, quantity, item_price, currency. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Prerequisite | connected Commerce Manager catalog |\n| footer.text | max 60 characters |\n| Webhook | type:\"order\" — item_price/currency are catalog values |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"catalog_message\",\n    \"body\": { \"text\": \"Browse our full catalog and add items to your cart.\" },\n    \"action\": {\n      \"name\": \"catalog_message\",\n      \"parameters\": {\n        \"thumbnail_product_retailer_id\": \"SKU-1\"\n      }\n    },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"catalog_message\",\n    \"body\": { \"text\": \"Browse our full catalog and add items to your cart.\" },\n    \"action\": {\n      \"name\": \"catalog_message\",\n      \"parameters\": {\n        \"thumbnail_product_retailer_id\": \"SKU-1\"\n      }\n    },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"text\": \"Optional note from customer\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\", \"quantity\": \"2\", \"item_price\": \"499.00\", \"currency\": \"INR\" }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Single product (SPM)",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product\",\n    \"body\": { \"text\": \"Check out this product.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"product_retailer_id\": \"SKU-1\"\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · product`\n\nHighlights one catalog product with a View / Add-to-cart action. Cart submissions return an order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"product\". |\n| action.catalog_id | string | Required | Commerce Manager catalog id. |\n| action.product_retailer_id | string | Required | SKU (content id) of the product. |\n| interactive.body / footer | object | Optional | Optional text around the card. |\n| order.product_items[] | array | Webhook | Returned on cart submit. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Prerequisite | catalog + product must be in stock / approved |\n| Webhook | type:\"order\" |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product\",\n    \"body\": { \"text\": \"Check out this product.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"product_retailer_id\": \"SKU-1\"\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product\",\n    \"body\": { \"text\": \"Check out this product.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"product_retailer_id\": \"SKU-1\"\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\", \"quantity\": \"1\", \"item_price\": \"499.00\", \"currency\": \"INR\" }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            },
            {
              "name": "Multi product (MPM)",
              "request": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product_list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our bestsellers\" },\n    \"body\": { \"text\": \"Pick items to add to your cart.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"sections\": [\n        {\n          \"title\": \"Featured\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-1\" },\n            { \"product_retailer_id\": \"SKU-2\" }\n          ]\n        },\n        {\n          \"title\": \"New arrivals\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-3\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                  "options": {
                    "raw": {
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{base_url}}/{{phone_number_id}}/messages?waba_id={{waba_id}}",
                  "host": [
                    "{{base_url}}"
                  ],
                  "path": [
                    "{{phone_number_id}}",
                    "messages"
                  ],
                  "query": [
                    {
                      "key": "waba_id",
                      "value": "{{waba_id}}",
                      "description": "Required on every Cloud API call routed through the Atmik Bharat wrapper. Identifies the WhatsApp Business Account for the request."
                    }
                  ]
                },
                "description": "`interactive · product_list`\n\nShows a curated set of catalog products grouped into sections, as a single browsable list. Cart submissions return an order webhook.\n\n**Endpoint:** `POST {{base_url}}/{{phone_number_id}}/messages`\n\n#### Fields\n| Field | Type | Required? | Notes |\n| --- | --- | --- | --- |\n| interactive.type | string | Required | Must be \"product_list\". |\n| interactive.header | object | Required | type:\"text\" header. |\n| action.catalog_id | string | Required | Commerce Manager catalog id. |\n| action.sections[] | array | Required | title + product_items[]. |\n| product_items[].product_retailer_id | string | Required | SKU per product. |\n| order.product_items[] | array | Webhook | Only the items the customer actually added. |\n\n\n#### Limits\n| Constraint | Value |\n| --- | --- |\n| Sections | up to 10 |\n| Products | up to 30 total across sections |\n| header | text header required |\n| Webhook | type:\"order\" |\n\n\n> 📥 **Webhook response.** When the user replies / submits, your callback receives the full `entry[].changes[].value.messages[]` envelope shown in the **“📥 Inbound webhook (example)”** saved response."
              },
              "response": [
                {
                  "name": "✅ 200 — Graph API send response",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product_list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our bestsellers\" },\n    \"body\": { \"text\": \"Pick items to add to your cart.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"sections\": [\n        {\n          \"title\": \"Featured\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-1\" },\n            { \"product_retailer_id\": \"SKU-2\" }\n          ]\n        },\n        {\n          \"title\": \"New arrivals\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-3\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"messaging_product\": \"whatsapp\",\n  \"contacts\": [\n    { \"input\": \"{{recipient_phone}}\", \"wa_id\": \"{{recipient_wa_id}}\" }\n  ],\n  \"messages\": [\n    { \"id\": \"{{wamid}}\" }\n  ]\n}"
                },
                {
                  "name": "📥 Inbound webhook (example)",
                  "originalRequest": {
                    "method": "POST",
                    "header": [
                      {
                        "key": "Content-Type",
                        "value": "application/json"
                      }
                    ],
                    "body": {
                      "mode": "raw",
                      "raw": "{\n  \"messaging_product\": \"whatsapp\",\n  \"recipient_type\": \"individual\",\n  \"to\": \"{{recipient_phone}}\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"product_list\",\n    \"header\": { \"type\": \"text\", \"text\": \"Our bestsellers\" },\n    \"body\": { \"text\": \"Pick items to add to your cart.\" },\n    \"footer\": { \"text\": \"Powered by Atmik Bharat\" },\n    \"action\": {\n      \"catalog_id\": \"{{catalog_id}}\",\n      \"sections\": [\n        {\n          \"title\": \"Featured\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-1\" },\n            { \"product_retailer_id\": \"SKU-2\" }\n          ]\n        },\n        {\n          \"title\": \"New arrivals\",\n          \"product_items\": [\n            { \"product_retailer_id\": \"SKU-3\" }\n          ]\n        }\n      ]\n    }\n  }\n}",
                      "options": {
                        "raw": {
                          "language": "json"
                        }
                      }
                    },
                    "url": {
                      "raw": "{{base_url}}/{{phone_number_id}}/messages",
                      "host": [
                        "{{base_url}}"
                      ],
                      "path": [
                        "{{phone_number_id}}",
                        "messages"
                      ]
                    }
                  },
                  "status": "OK",
                  "code": 200,
                  "_postman_previewlanguage": "json",
                  "header": [
                    {
                      "key": "Content-Type",
                      "value": "application/json"
                    }
                  ],
                  "cookie": [],
                  "body": "{\n  \"object\": \"whatsapp_business_account\",\n  \"entry\": [\n    {\n      \"id\": \"{{waba_id}}\",\n      \"changes\": [\n        {\n          \"field\": \"messages\",\n          \"value\": {\n            \"messaging_product\": \"whatsapp\",\n            \"metadata\": {\n              \"display_phone_number\": \"{{business_phone}}\",\n              \"phone_number_id\": \"{{phone_number_id}}\"\n            },\n            \"contacts\": [\n              { \"profile\": { \"name\": \"John Doe\" }, \"wa_id\": \"{{sender_wa_id}}\" }\n            ],\n            \"messages\": [\n              {\n                \"from\": \"{{sender_wa_id}}\",\n                \"id\": \"{{wamid}}\",\n                \"type\": \"order\",\n                \"context\": { \"from\": \"{{business_phone}}\", \"id\": \"{{wamid_of_message}}\" },\n                \"order\": {\n                  \"catalog_id\": \"{{catalog_id}}\",\n                  \"product_items\": [\n                    { \"product_retailer_id\": \"SKU-1\", \"quantity\": \"1\", \"item_price\": \"499.00\", \"currency\": \"INR\" },\n                    { \"product_retailer_id\": \"SKU-3\", \"quantity\": \"2\", \"item_price\": \"199.00\", \"currency\": \"INR\" }\n                  ]\n                }\n              }\n            ]\n          }\n        }\n      ]\n    }\n  ]\n}"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "05 · Media (wrapper)",
      "description": "Upload media via the wrapper Media API (no Graph). Returns a handle (template headers) + a link (sending).",
      "item": [
        {
          "name": "Upload media (handle + link)",
          "request": {
            "method": "POST",
            "header": [],
            "url": {
              "raw": "{{media_api}}/v1/media/upload",
              "host": [
                "{{media_api}}"
              ],
              "path": [
                "v1",
                "media",
                "upload"
              ]
            },
            "body": {
              "mode": "formdata",
              "formdata": [
                {
                  "key": "file",
                  "type": "file",
                  "src": []
                }
              ]
            },
            "description": "`wrapper · handle + link`\n\nUpload media through Atmik Bharat's **wrapper Media API** — no direct Graph / Resumable-Upload calls. The response gives a `handle` (for template-header `example.header_handle` at creation) and a public `link` (to send in media messages). A media `id` is never used.\n\n**Accepted media & max size**\n| Media | Formats | Max |\n| --- | --- | --- |\n| Image | jpeg, png | 5 MB |\n| Video | mp4, 3gp (H.264+AAC) | 16 MB |\n| Audio | aac, m4a, mp3, amr, ogg/opus | 16 MB |\n| Document | pdf, doc(x), ppt(x), xls(x), txt | 100 MB |\n| Sticker | webp 512×512 | 100 KB static · 500 KB animated |"
          },
          "response": [
            {
              "name": "✅ 200 — uploaded",
              "originalRequest": {
                "method": "POST",
                "header": [],
                "url": {
                  "raw": "{{media_api}}/v1/media/upload",
                  "host": [
                    "{{media_api}}"
                  ],
                  "path": [
                    "v1",
                    "media",
                    "upload"
                  ]
                },
                "body": {
                  "mode": "formdata",
                  "formdata": [
                    {
                      "key": "file",
                      "type": "file",
                      "src": []
                    }
                  ]
                },
                "description": "`wrapper · handle + link`\n\nUpload media through Atmik Bharat's **wrapper Media API** — no direct Graph / Resumable-Upload calls. The response gives a `handle` (for template-header `example.header_handle` at creation) and a public `link` (to send in media messages). A media `id` is never used.\n\n**Accepted media & max size**\n| Media | Formats | Max |\n| --- | --- | --- |\n| Image | jpeg, png | 5 MB |\n| Video | mp4, 3gp (H.264+AAC) | 16 MB |\n| Audio | aac, m4a, mp3, amr, ogg/opus | 16 MB |\n| Document | pdf, doc(x), ppt(x), xls(x), txt | 100 MB |\n| Sticker | webp 512×512 | 100 KB static · 500 KB animated |"
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "body": "{\n  \"handle\": \"4:aW1hZ2U...:e:1700000000:...\",\n  \"link\": \"https://cdn.vertexsuite.in/media/abc123.jpg\",\n  \"mime_type\": \"image/jpeg\"\n}"
            }
          ]
        }
      ]
    }
  ]
}