Infobip Instagram Direct Messages API

Instagram DMs are an in-app messaging feature that enables your business to be reachable by your customers over one of the most popular social media platforms. To utilize Instagram DMs in combination with other channels, check out Messages API. — 3 operation path(s) and 2 webhook(s) in Infobip's published OpenAPI.

OpenAPI Specification

infobip-instagram-openapi.json Raw ↑
{
 "openapi":"3.1.0",
 "info":{
  "title":"Infobip OpenAPI Specification",
  "description":"OpenAPI Specification that contains all public endpoints and webhooks.",
  "contact":{
   "name":"Infobip support",
   "email":"support@infobip.com"
  },
  "version":"3.210.0",
  "x-generatedAt":"2026-07-23T15:23:51.536620927Z"
 },
 "tags":[
  {
   "name":"channels",
   "description":"Create a perfect customer experience by using the channels your customer already use and love.\n",
   "x-type":"category",
   "x-displayName":"Channels"
  },
  {
   "name":"instagram",
   "description":"Instagram DMs are an in-app messaging feature that enables your business to be reachable by your customers over one of the most popular social media platforms.\n\nTo utilize Instagram DMs in combination with other channels, check out [Messages API](https://www.infobip.com/docs/api/platform/messages-api).\n",
   "x-type":"product",
   "x-displayName":"Instagram Direct Messages"
  },
  {
   "name":"send-instagram",
   "description":"",
   "x-type":"section",
   "x-displayName":"Outbound Message"
  },
  {
   "name":"logs-and-status-reports-instagram",
   "description":"",
   "x-type":"section",
   "x-displayName":"Logs and Status Reports"
  },
  {
   "name":"incoming-instagram-message",
   "description":"",
   "x-type":"section",
   "x-displayName":"Receive incoming message"
  }
 ],
 "paths":{
  "/instagram/1/messages":{
   "post":{
    "tags":[
     "channels",
     "instagram",
     "send-instagram"
    ],
    "summary":"Send a Instagram message",
    "description":"Send one or more messages to multiple recipients.",
    "externalDocs":{
     "description":"Learn more about Instagram channel and use cases",
     "url":"https://www.infobip.com/docs/instagram"
    },
    "operationId":"send-instagram-message",
    "requestBody":{
     "content":{
      "application/json":{
       "schema":{
        "$ref":"#/components/schemas/7c9f96abfad3f4dcf2c0a97ec8d627a73c6fe4ecaf776deaddf2ab2888baddbf.InstagramDmRequest"
       },
       "examples":{
        "Send an Instagram DM message":{
         "summary":"Send an Instagram DM message",
         "value":{
          "messages":[
           {
            "sender":"OFFICIAL-ACCOUNT-ID-123",
            "destinations":[
             {
              "to":"66855538125"
             }
            ],
            "content":{
             "text":"Hello!",
             "type":"TEXT"
            }
           }
          ]
         }
        }
       }
      }
     },
     "required":true
    },
    "responses":{
     "200":{
      "description":"OK",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.ResponseEnvelopeMessageResponseMessageResponseDetails"
        }
       }
      }
     },
     "400":{
      "description":"Bad Request",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/ApiError"
        },
        "examples":{
         "Bad request":{
          "summary":"Bad request",
          "value":{
           "errorCode":"E400",
           "description":"Request cannot be processed.",
           "action":"Check the syntax, violations and adjust the request.",
           "violations":[
            {
             "property":"property.path",
             "violation":"Violation message."
            }
           ],
           "resources":[]
          }
         }
        }
       }
      }
     },
     "401":{
      "$ref":"#/components/responses/ApiError401"
     },
     "403":{
      "$ref":"#/components/responses/ApiError403"
     },
     "500":{
      "$ref":"#/components/responses/ApiError500"
     }
    },
    "security":[
     {
      "IBSSOTokenHeader":[]
     },
     {
      "APIKeyHeader":[]
     },
     {
      "Basic":[]
     },
     {
      "OAuth2":[]
     }
    ],
    "x-scopes":[
     "message:send",
     "instagram:message:send",
     "instagram:manage"
    ],
    "x-is-early-access":true
   }
  },
  "/instagram/1/reports":{
   "get":{
    "tags":[
     "channels",
     "instagram",
     "logs-and-status-reports-instagram"
    ],
    "summary":"Get Instagram delivery reports",
    "description":"If you are unable to receive real-time delivery reports towards your endpoint for various reasons, we offer you an API method to fetch batches of delivery reports to confirm whether specific messages have been delivered. Each request towards this endpoint will return batches of the latest delivery reports. Please note they will be returned only once.",
    "externalDocs":{
     "description":"Learn more about Instagram channel and use cases",
     "url":"https://www.infobip.com/docs/instagram"
    },
    "operationId":"get-outbound-instagram-message-delivery-reports",
    "parameters":[
     {
      "name":"bulkId",
      "in":"query",
      "description":"The ID that uniquely identifies the request. Bulk ID will be received only when you send a message to more than one destination address.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      }
     },
     {
      "name":"messageId",
      "in":"query",
      "description":"The ID that uniquely identifies the message sent.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      }
     },
     {
      "name":"limit",
      "in":"query",
      "description":"Maximum number of delivery reports to be returned. If not set, the latest 50 records are returned. Maximum limit value is 1000 and you can only access reports for the last 48h.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"integer",
       "format":"int32",
       "default":50,
       "maximum":1000
      },
      "example":1
     },
     {
      "name":"entityId",
      "in":"query",
      "description":"Entity id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      },
      "example":"promotional-traffic-entity"
     },
     {
      "name":"applicationId",
      "in":"query",
      "description":"Application id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      },
      "example":"marketing-automation-application"
     },
     {
      "name":"campaignReferenceId",
      "in":"query",
      "description":"ID of a campaign that was sent in the message.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      },
      "example":"summersale"
     }
    ],
    "responses":{
     "200":{
      "description":"OK",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryReports"
        },
        "examples":{
         "Delivery reports":{
          "summary":"Delivery reports",
          "value":{
           "results":[
            {
             "bulkId":"2034072219640523072",
             "price":{
              "pricePerMessage":0.15,
              "currency":"EUR"
             },
             "status":{
              "groupId":3,
              "groupName":"DELIVERED",
              "id":5,
              "name":"DELIVERED_TO_HANDSET",
              "description":"Message delivered to handset"
             },
             "error":{
              "groupId":0,
              "groupName":"OK",
              "id":0,
              "name":"NO_ERROR",
              "description":"No Error",
              "permanent":false
             },
             "messageId":"2250be2d4219-3af1-78856-aabe-1362af1edfd2",
             "to":"66855538125",
             "sender":"44113496000",
             "sentAt":"2023-09-26T10:52:15.457+0000",
             "doneAt":"2023-09-26T10:52:15.799+0000",
             "messageCount":1,
             "mccMnc":"22801",
             "platform":{
              "entityId":"promotional-traffic-entity",
              "applicationId":"marketing-automation-application"
             }
            }
           ]
          }
         }
        }
       }
      }
     },
     "401":{
      "$ref":"#/components/responses/ApiError401"
     },
     "403":{
      "$ref":"#/components/responses/ApiError403"
     },
     "500":{
      "$ref":"#/components/responses/ApiError500"
     }
    },
    "security":[
     {
      "IBSSOTokenHeader":[]
     },
     {
      "APIKeyHeader":[]
     },
     {
      "Basic":[]
     },
     {
      "OAuth2":[]
     }
    ],
    "x-scopes":[
     "message:send",
     "instagram:message:send",
     "instagram:manage"
    ],
    "x-is-early-access":true
   }
  },
  "/instagram/1/logs":{
   "get":{
    "tags":[
     "channels",
     "instagram",
     "logs-and-status-reports-instagram"
    ],
    "summary":"Get outbound Instagram message logs",
    "description":"Use this method for displaying logs for example in the user interface. Available are the logs for the last 48 hours.",
    "operationId":"get-outbound-instagram-message-logs",
    "parameters":[
     {
      "name":"sender",
      "in":"query",
      "description":"The sender ID which can be alphanumeric or numeric.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      }
     },
     {
      "name":"destination",
      "in":"query",
      "description":"Message destination address.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      }
     },
     {
      "name":"bulkId",
      "in":"query",
      "description":"Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request. May contain multiple comma-separated values. Maximum length 2048 characters.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"array",
       "items":{
        "type":"string"
       }
      },
      "example":"BULK-ID-123-xyz"
     },
     {
      "name":"messageId",
      "in":"query",
      "description":"Unique message ID for which a log is requested. May contain multiple comma-separated values. Maximum length 2048 characters.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"array",
       "items":{
        "type":"string"
       }
      },
      "example":"MESSAGE-ID-123-xyz,MESSAGE-ID-124-xyz"
     },
     {
      "name":"generalStatus",
      "in":"query",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MessageGeneralStatus"
      }
     },
     {
      "name":"sentSince",
      "in":"query",
      "description":"The logs will only include messages sent after this date. Use it alongside sentUntil to specify a time range for the logs, but only up to the maximum limit of 1000 logs per call. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string",
       "format":"date-time"
      },
      "example":"2020-02-22T17:42:05.390+01:00"
     },
     {
      "name":"sentUntil",
      "in":"query",
      "description":"The logs will only include messages sent before this date. Use it alongside sentSince to specify a time range for the logs, but only up to the maximum limit of 1000 logs per call. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string",
       "format":"date-time",
       "description":"The logs will only include messages sent before this date. Use it alongside sentSince to specify a time range for the logs, but only up to the maximum limit of 1000 logs per call. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ.",
       "example":"2020-02-23T17:42:05.39+01:00"
      },
      "example":"2020-02-23T17:42:05.390+01:00"
     },
     {
      "name":"limit",
      "in":"query",
      "description":"Maximum number of messages to include in logs. If not set, the latest 50 records are returned. Maximum limit value is 1000 and you can only access logs for the last 48h.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"integer",
       "format":"int32",
       "default":50,
       "maximum":1000
      }
     },
     {
      "name":"entityId",
      "in":"query",
      "description":"Entity id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      },
      "example":"promotional-traffic-entity"
     },
     {
      "name":"applicationId",
      "in":"query",
      "description":"Application id used to send the message. For more details, see our [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      },
      "example":"marketing-automation-application"
     },
     {
      "name":"campaignReferenceId",
      "in":"query",
      "description":"ID of a campaign that was sent in the message. May contain multiple comma-separated values.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"array",
       "items":{
        "type":"string"
       }
      },
      "example":"summersale"
     },
     {
      "name":"useCursor",
      "in":"query",
      "description":"Flag used to enable cursor-based pagination. When set to true, the system will use the cursor to fetch the next set of logs.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"boolean"
      }
     },
     {
      "name":"cursor",
      "in":"query",
      "description":"Value which represents the current position in the data set. For the first request, this field shouldn't be defined. In subsequent requests, use the `nextCursor` value returned from the previous response to continue fetching data.",
      "required":false,
      "style":"form",
      "explode":true,
      "schema":{
       "type":"string"
      }
     }
    ],
    "responses":{
     "200":{
      "description":"OK",
      "content":{
       "application/json":{
        "schema":{
         "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.LogResponseLogInstagramDmOutboundContent"
        },
        "examples":{
         "Log results":{
          "summary":"Log results",
          "value":{
           "results":[
            {
             "sender":"44113496000",
             "destination":"66855538125",
             "bulkId":"2034072219640523072",
             "messageId":"2250be2d4219-3af1-78856-aabe-1362af1edfd2",
             "sentAt":"2023-02-01T23:15:03.379+0000",
             "doneAt":"2023-02-01T23:16:34.582+0000",
             "messageCount":1,
             "price":{
              "pricePerMessage":0.15,
              "currency":"EUR"
             },
             "status":{
              "groupId":3,
              "groupName":"DELIVERED",
              "id":5,
              "name":"DELIVERED_TO_HANDSET",
              "description":"Message delivered to handset"
             },
             "error":{
              "groupId":0,
              "groupName":"OK",
              "id":0,
              "name":"NO_ERROR",
              "description":"No Error",
              "permanent":false
             },
             "platform":{
              "entityId":"promotional-traffic-entity",
              "applicationId":"marketing-automation-application"
             },
             "content":{
              "text":"Sent text",
              "type":"TEXT"
             }
            }
           ]
          }
         }
        }
       }
      }
     },
     "401":{
      "$ref":"#/components/responses/ApiError401"
     },
     "403":{
      "$ref":"#/components/responses/ApiError403"
     },
     "429":{
      "$ref":"#/components/responses/ApiError429"
     },
     "500":{
      "$ref":"#/components/responses/ApiError500"
     }
    },
    "security":[
     {
      "IBSSOTokenHeader":[]
     },
     {
      "APIKeyHeader":[]
     },
     {
      "Basic":[]
     },
     {
      "OAuth2":[]
     }
    ],
    "x-scopes":[
     "instagram:logs:read",
     "instagram:manage"
    ],
    "x-is-early-access":true,
    "x-throttling-info":[
     {
      "type":"time",
      "numberOfRequests":120,
      "numberOfTimeUnits":0,
      "timeUnit":"m"
     }
    ]
   }
  }
 },
 "components":{
  "schemas":{
   "7c9f96abfad3f4dcf2c0a97ec8d627a73c6fe4ecaf776deaddf2ab2888baddbf.InstagramDmRequest":{
    "type":"object",
    "properties":{
     "messages":{
      "type":"array",
      "description":"An array of message objects of a single message or multiple messages sent under one bulk ID.",
      "items":{
       "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmMessage"
      }
     },
     "options":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmMessageRequestOptions"
     }
    },
    "required":[
     "messages"
    ],
    "title":"InstagramDmRequest"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.CursorPageInfo":{
    "type":"object",
    "description":"Cursor information.",
    "properties":{
     "limit":{
      "type":"integer",
      "format":"int32",
      "description":"Requested limit."
     },
     "nextCursor":{
      "type":"string",
      "description":"The `cursor` value you will use in your next request to fetch the subsequent set of results."
     }
    },
    "readOnly":true,
    "title":"CursorPageInfo"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DefaultMessageOptions":{
    "type":"object",
    "description":"Message options.",
    "properties":{
     "platform":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.Platform"
     },
     "validityPeriod":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.ValidityPeriod"
     },
     "deliveryTimeWindow":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryTimeWindow"
     },
     "campaignReferenceId":{
      "type":"string",
      "description":"ID that allows you to track, analyze, and show an aggregated overview and the performance of individual campaigns per sending channel.",
      "maxLength":255,
      "minLength":0
     }
    },
    "title":"DefaultMessageOptions"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryDay":{
    "type":"string",
    "description":"Days of the week which are included in the delivery time window. At least one day must be provided. Separate multiple days with a comma.",
    "enum":[
     "MONDAY",
     "TUESDAY",
     "WEDNESDAY",
     "THURSDAY",
     "FRIDAY",
     "SATURDAY",
     "SUNDAY"
    ],
    "title":"DeliveryDay"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryReport":{
    "type":"object",
    "description":"Collection of reports, one per every message.",
    "properties":{
     "bulkId":{
      "type":"string",
      "description":"Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request."
     },
     "price":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MessagePrice"
     },
     "status":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MessageStatus"
     },
     "error":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MessageError"
     },
     "messageId":{
      "type":"string",
      "description":"Unique message ID."
     },
     "to":{
      "type":"string",
      "description":"Message destination address."
     },
     "sender":{
      "type":"string",
      "description":"The sender ID which can be alphanumeric or numeric (e.g., `CompanyName`)."
     },
     "sentAt":{
      "type":"string",
      "format":"date-time",
      "description":"Date and time when the message was sent. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ."
     },
     "doneAt":{
      "type":"string",
      "format":"date-time",
      "description":"Date and time when the Infobip services finished processing the message (i.e., delivered to the destination, network, etc.). Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ."
     },
     "messageCount":{
      "type":"integer",
      "format":"int32",
      "description":"The number of sent messages."
     },
     "mccMnc":{
      "type":"string",
      "description":"Mobile country and network codes."
     },
     "callbackData":{
      "type":"string",
      "description":"Callback data sent through ‛callbackData‛ field when sending message."
     },
     "platform":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.Platform"
     },
     "campaignReferenceId":{
      "type":"string",
      "description":"ID of a campaign that was sent in the message."
     }
    },
    "title":"DeliveryReport"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryReports":{
    "type":"object",
    "properties":{
     "results":{
      "type":"array",
      "description":"Collection of reports, one per every message.",
      "items":{
       "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryReport"
      }
     }
    },
    "title":"DeliveryReports"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryTime":{
    "type":"object",
    "description":"The exact time of the day. The time is expressed in the UTC time zone.",
    "properties":{
     "hour":{
      "type":"integer",
      "format":"int32",
      "description":"Hour when the time window opens when used in the `from` property or closes when used in the `to` property.",
      "maximum":23,
      "minimum":0
     },
     "minute":{
      "type":"integer",
      "format":"int32",
      "description":"Minute when the time window opens when used in the `from` property or closes when used in the `to` property.",
      "maximum":59,
      "minimum":0
     }
    },
    "required":[
     "hour",
     "minute"
    ],
    "title":"DeliveryTime"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryTimeWindow":{
    "type":"object",
    "description":"Sets specific message delivery window outside of which messages won't be delivered. Often, used when there are restrictions on when messages can be sent. The exact time of the day to start sending messages can be defined using the `from` property. The exact time of the day to end sending messages can be defined using the `to` property. Properties `from` and `to` should be both provided with the minimum 1 hour difference or omitted.",
    "properties":{
     "days":{
      "type":"array",
      "description":"Days of the week which are included in the delivery time window. At least one day must be provided. Separate multiple days with a comma.",
      "items":{
       "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryDay"
      }
     },
     "from":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryTime"
     },
     "to":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.DeliveryTime"
     }
    },
    "required":[
     "days"
    ],
    "title":"DeliveryTimeWindow"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.GenericInstagramDmTemplateElement":{
    "type":"object",
    "properties":{
     "title":{
      "type":"string",
      "maxLength":80,
      "minLength":0
     },
     "subtitle":{
      "type":"string",
      "maxLength":80,
      "minLength":0
     },
     "imageUrl":{
      "type":"string"
     },
     "defaultAction":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmDefaultAction"
     },
     "buttons":{
      "type":"array",
      "items":{
       "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmButton"
      },
      "maxItems":3,
      "minItems":0
     }
    },
    "required":[
     "title"
    ],
    "title":"GenericInstagramDmTemplateElement"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InboundMessageInstagramDmInboundContent":{
    "type":"object",
    "description":"Collection of mobile originated messages.",
    "properties":{
     "entityId":{
      "type":"string",
      "description":"Used when specifying an entity in outbound send requests. It is also returned in notification events. For detailed usage, refer to the [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "maxLength":255,
      "minLength":0
     },
     "applicationId":{
      "type":"string",
      "description":"Used when specifying an application in outbound send requests. It is also returned in notification events. For detailed usage, refer to the [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).",
      "maxLength":255,
      "minLength":0
     },
     "sender":{
      "type":"string",
      "description":"Number which sent the message."
     },
     "to":{
      "type":"string",
      "description":"Sender provided during the activation process."
     },
     "integrationType":{
      "type":"string",
      "description":"Integration type."
     },
     "receivedAt":{
      "type":"string",
      "format":"date-time",
      "description":"Date and time when Infobip received the message. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ."
     },
     "keyword":{
      "type":"string",
      "description":"Keyword extracted from the message text."
     },
     "messageId":{
      "type":"string",
      "description":"The ID that uniquely identifies the received message."
     },
     "pairedMessageId":{
      "type":"string",
      "description":"Message ID of paired outgoing message if matched by Infobip platform."
     },
     "callbackData":{
      "type":"string",
      "description":"Callback data sent through ‛callbackData‛ field when sending message."
     },
     "message":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundContent"
     },
     "price":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MessagePrice"
     }
    },
    "required":[
     "integrationType",
     "message",
     "messageId",
     "price",
     "receivedAt",
     "sender",
     "to"
    ],
    "title":"InboundMessageInstagramDmInboundContent"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InlineMessageReplyInstagramDmInboundContent":{
    "type":"object",
    "allOf":[
     {
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.ReplyToInstagramDmInboundContent"
     },
     {
      "type":"object",
      "properties":{
       "mid":{
        "type":"string"
       }
      }
     }
    ],
    "title":"InlineMessageReplyInstagramDmInboundContent"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmButton":{
    "type":"object",
    "discriminator":{
     "propertyName":"type",
     "mapping":{
      "URL":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.UrlInstagramDmButton",
      "POSTBACK":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.PostbackInstagramDmButton"
     }
    },
    "properties":{
     "type":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmButtonType"
     }
    },
    "title":"InstagramDmButton"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmButtonType":{
    "type":"string",
    "enum":[
     "URL",
     "POSTBACK"
    ],
    "title":"InstagramDmButtonType"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmDefaultAction":{
    "type":"object",
    "properties":{
     "url":{
      "type":"string"
     }
    },
    "required":[
     "url"
    ],
    "title":"InstagramDmDefaultAction"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundAudioContent":{
    "type":"object",
    "allOf":[
     {
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundContent"
     },
     {
      "type":"object",
      "properties":{
       "url":{
        "type":"string"
       }
      }
     }
    ],
    "title":"InstagramDmInboundAudioContent"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundContent":{
    "type":"object",
    "description":"Message content.",
    "discriminator":{
     "propertyName":"type",
     "mapping":{
      "TEXT":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundTextContent",
      "URL":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundUrlContent",
      "AUDIO":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundAudioContent",
      "VIDEO":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundVideoContent",
      "FILE":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundFileContent",
      "IMAGE":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundImageContent",
      "LOCATION":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundLocationCoordinatesContent",
      "LOCATION_URL":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundLocationUrlContent",
      "POSTBACK":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundPostbackContent",
      "SHARE":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundShareContent",
      "STORY_MENTION":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.MentionInstagramDmInboundStoryContent",
      "PRODUCT":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundProductContent",
      "UNKNOWN":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundUnknownContent"
     }
    },
    "properties":{
     "type":{
      "$ref":"#/components/schemas/8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundContentType"
     }
    },
    "title":"InstagramDmInboundContent"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundContentType":{
    "type":"string",
    "enum":[
     "TEXT",
     "URL",
     "AUDIO",
     "VIDEO",
     "FILE",
     "IMAGE",
     "LOCATION",
     "LOCATION_URL",
     "POSTBACK",
     "SHARE",
     "STORY_MENTION",
     "PRODUCT",
     "UNKNOWN"
    ],
    "title":"InstagramDmInboundContentType"
   },
   "8bb20f43a591755a249613f66cc72e7e0fcc9b313d81a59f9ca0e0ff261ac181.InstagramDmInboundFileContent":{
    "type":"object",
    "allOf":[
    

# --- truncated at 32 KB (79 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infobip/refs/heads/main/openapi/infobip-instagram-openapi.json