---
updatedAt: 2026-07-14T10:24:40.000Z
agentTools:
  projectIndex: https://partner-docs.gupshup.io/llms.txt
---

# Product

Use this API to send message with the Product template.

## Request Parameters

<Table align={["left","left","left","left","left","left"]}>
  <thead>
    <tr>
      <th>
        Key
      </th>

      <th>
        Description
      </th>

      <th>
        Value
      </th>

      <th>
        Data type
      </th>

      <th>
        Required/Optional
      </th>

      <th>
        Constraints
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        Authorization
      </td>

      <td>
        Access Token for the application
      </td>

      <td>
        `{{PARTNER_APP_TOKEN}}`
      </td>

      <td>
        String
      </td>

      <td>
        Required
      </td>

      <td>
        Should be a valid Partner App Access Token
      </td>
    </tr>

    <tr>
      <td>
        APP\_ID
      </td>

      <td>
        App ID to fetch the access token
      </td>

      <td>
        `{{APP_ID}}`
      </td>

      <td>
        String
      </td>

      <td>
        Required
      </td>

      <td>
        - The Id should be a valid app Id of Gupshup - The App must be associated with the account that owns the PARTNER\_APP\_TOKEN being used
      </td>
    </tr>

    <tr>
      <td>
        source
      </td>

      <td>
        Source Phone Number
      </td>

      <td>
        `{{SOURCE}}`
      </td>

      <td>
        Integer
      </td>

      <td>
        Required
      </td>

      <td>

      </td>
    </tr>

    <tr>
      <td>
        sandbox
      </td>

      <td>
        Boolean value
      </td>

      <td>
        `{{SANDBOX}}`
      </td>

      <td>
        Boolean
      </td>

      <td>
        Optional
      </td>

      <td>

      </td>
    </tr>

    <tr>
      <td>
        destination
      </td>

      <td>
        Destination Phone Number
      </td>

      <td>
        `{{DESTINATION}}`
      </td>

      <td>
        Integer
      </td>

      <td>
        Required
      </td>

      <td>

      </td>
    </tr>

    <tr>
      <td>
        template
      </td>

      <td>
        Json containing template details
      </td>

      <td>
        `{      "id":"{{TEMPLATE_ID}}",      "params":[         "{{PRODUCT_ID}}"      ],      "mpm":{         "sections":\[            {               "title":"{{TITLE}}",               "products":[                  "{{PRODUCT_ID}}"               ]            },            {               "title":"{{TITLE1}}",               "products":[                  "{{PRODUCT_ID}}"               ]            }         ]      }   }`
      </td>

      <td>
        String
      </td>

      <td>
        Required
      </td>

      <td>
        - Template must have valid template Id  - Params must include all params including a product id  - Sections param must be provided with valid ids`{     "id": "\<template_id>",     "params": [       <list_of_template_parameters>     ]`
      </td>
    </tr>

    <tr>
      <td>
        src.name
      </td>

      <td>
        App Name
      </td>

      <td>
        `{{APP_NAME}}`
      </td>

      <td>
        String
      </td>

      <td>
        Required
      </td>

      <td>

      </td>
    </tr>

    <tr>
      <td>
        channel
      </td>

      <td>
        Channel
      </td>

      <td>
        `{{CHANNEL_NAME}}`
      </td>

      <td>
        String
      </td>

      <td>

      </td>

      <td>
        Must be Whatsapp
      </td>
    </tr>

    <tr>
      <td>
        userId
      </td>

      <td>
        BSUID
      </td>

      <td>
        {{userId}}
      </td>

      <td>

      </td>

      <td>

      </td>

      <td>

      </td>
    </tr>
  </tbody>
</Table>

## Sample Request

```curl
curl --request POST \
     --url https://partner.gupshup.io/partner/app/947d28b8-459b-4dfe-9d4c-0ac8c6c245c9/template/msg \
     --header 'accept: application/json' \
     --header 'content-type: application/x-www-form-urlencoded' \
     --header 'token: sk_711916ad1d5d4f21a9520fdef20516a1' \
     --data source=919643874844 \
     --data destination=918886912227 \
     --data sandbox=true \
     --data src.name=ProdMonitoringCloud \
     --data 'userId={{BSUID}}' \
     --data 'template={
   "id":"3b9bf65b-979c-44d3-a269-dec2f20c4e52",
   "params":[
      "zqc2qfz5fm"
   ],
   "mpm":{
      "sections":[
         {
            "title":"Products",
            "products":[
               "zqc2qfz5fm"
            ]
         },
         {
            "title":"Products2",
            "products":[
               "xyli96fcbn"
            ]
         }
      ]
   }
}' \
     --data channel=whatsapp

```

## Sample Response

```json
{
  "status": "submitted",
  "messageId": "eb152a75-6f6d-41c2-ba9b-ea8dae4d0f63"
}
```

## Status Codes

| Status Code | Response                                                                                                                                                     | Comments               |
| :---------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------- |
| **Success** |                                                                                                                                                              |                        |
| 200         | `{     "status": "submitted",     "messageId": "eb152a75-6f6d-41c2-ba9b-ea8dae4d0f63"   }`                                                                   |                        |
| **Error**   |                                                                                                                                                              |                        |
| 429         | `{     "status": "error",     "message": "Too Many Requests"   }`                                                                                            | 10 Requests per Minute |
| 500         | `{     "status": "error",     "message": "Internal server error. Please try again later. If the issue still persists, then contact Gupshup Dev Support"   }` | For any Internal Error |

<br />

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "Product Send Message",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://partner.gupshup.io"
    }
  ],
  "paths": {
    "/partner/app/{appId}/template/msg": {
      "post": {
        "tags": [
          "default"
        ],
        "summary": "Product",
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "source",
                  "destination",
                  "template",
                  "src.name",
                  "channel"
                ],
                "properties": {
                  "source": {
                    "type": "integer",
                    "description": "Source Phone Number",
                    "example": "918929874278"
                  },
                  "destination": {
                    "type": "integer",
                    "description": "Destination Phone Number",
                    "example": "918805162043"
                  },
                  "sandbox": {
                    "type": "boolean",
                    "description": "Boolean value",
                    "example": "false"
                  },
                  "src.name": {
                    "type": "string",
                    "description": "App Name",
                    "example": "august18"
                  },
                  "template": {
                    "type": "string",
                    "description": "Json containing template details",
                    "example": "{\n   \"id\":\"3b9bf65b-979c-44d3-a269-dec2f20c4e52\",\n   \"params\":[\n      \"zqc2qfz5fm\"\n   ],\n   \"mpm\":{\n      \"sections\":[\n         {\n            \"title\":\"Products\",\n            \"products\":[\n               \"zqc2qfz5fm\"\n            ]\n         },\n         {\n            \"title\":\"Products2\",\n            \"products\":[\n               \"xyli96fcbn\"\n            ]\n         }\n      ]\n   }\n}"
                  },
                  "channel": {
                    "type": "string",
                    "description": "Channel Name",
                    "example": "whatsapp"
                  }
                }
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "description": "Your app token, please refer [**Get access token api**](https://docs.gupshup.io/reference/get_partner-app-appid-token) to get the token from partner documentation.",
            "example": "sk_61b3021c97214370b341f8baaae0xxxx",
            "required": true
          },
          {
            "name": "appId",
            "in": "path",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Unique identifier of the app.",
            "example": "9e97650d-xxxx-xxxx-xxxx-4cdf47c3fa68"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "example": "submitted"
                    },
                    "messageId": {
                      "type": "string",
                      "example": "183dc8f1-7ecc-4419-895f-04fd0b1bfe07"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "Too Many Requests",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "example": "Too Many Requests"
                    },
                    "status": {
                      "type": "string",
                      "example": "error"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "example": "Internal server error"
                    },
                    "status": {
                      "type": "string",
                      "example": "error"
                    }
                  }
                }
              }
            }
          }
        },
        "description": "Use this API to send message with the Product template."
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  }
}
```