Send binary SMS message

Send single or multiple binary messages to one or more destination address. The API response will not contain the final delivery status, use Delivery Reports instead.
In light of improved features, this endpoint has been superseded. Please visit Send SMS message for the next version.

Please log in to see full path URL. Learn why.
post
/sms/2/binary/advanced
Request Body schema:
collapse all -
bulkId
string

Unique ID assigned to the request if messaging multiple recipients or sending multiple messages via a single API request. If not provided, it will be auto-generated and returned in the API response. Typically, used to fetch delivery reports and message logs. Anything above 100 characters passed in the request will be clipped during processing and returned in response, reports and logs.

messages
required
Array of objects

An array of message objects of a single message or multiple messages sent under one bulk ID.

Array
binary
object
dataCoding
integer <int32>

Binary content data coding. The default value is (0) for GSM7. Example: (8) for Unicode data.

esmClass
integer <int32>

“Esm_class” parameter. Indicate special message attributes associated with the SMS. Default value is (0).

hex
required
string

Hexadecimal string. This is the representation of your binary data. Two hex digits represent one byte. They should be separated by the space character (Example: 0f c2 4a bf 34 13 ba).

callbackData
string [ 0 .. 4000 ] characters

Additional data that can be used for identifying, managing, or monitoring a message. Data included here will also be automatically included in the message Delivery Report. The maximum value is 4000 characters.

deliveryTimeWindow
object

Sets specific SMS delivery window outside of which messages won't be delivered. Often, used when there are restrictions on when messages can be sent.

days
required
Array of strings
Items Enum: "MONDAY" "TUESDAY" "WEDNESDAY" "THURSDAY" "FRIDAY" "SATURDAY" "SUNDAY"

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.

from
object

The exact time of day to start sending messages. Time is expressed in the UTC time zone. If set, use it together with the to property with minimum 1 hour difference.

hour
required
integer <int32> [ 0 .. 23 ]

Hour when the time window opens when used in the from property or closes when used in the to property.

minute
required
integer <int32> [ 0 .. 59 ]

Minute when the time window opens when used in the from property or closes when used in the to property.

to
object

The exact time of day to end sending messages. Time is expressed in the UTC time zone. If set, use it together with the from property with minimum 1 hour difference.

hour
required
integer <int32> [ 0 .. 23 ]

Hour when the time window opens when used in the from property or closes when used in the to property.

minute
required
integer <int32> [ 0 .. 59 ]

Minute when the time window opens when used in the from property or closes when used in the to property.

destinations
required
Array of objects

An array of destination objects for where messages are being sent. A valid destination is required.

Array
messageId
string

The ID that uniquely identifies the message sent. Anything above 200 characters passed in the request will be clipped during processing and returned in response, reports and logs.

to
required
string [ 0 .. 64 ] characters

Message destination address. Addresses must be in international format (Example: 41793026727).

flash
boolean

Allows for sending a flash SMS to automatically appear on recipient devices without interaction. Set to true to enable flash SMS, or leave the default value, false to send a standard SMS.

from
string

The sender ID which can be alphanumeric or numeric (e.g., CompanyName). Make sure you don't exceed character limit.

intermediateReport
boolean

The real-time intermediate delivery report containing GSM error codes, messages status, pricing, network and country codes, etc., which will be sent on your callback server. Defaults to false.

notifyContentType
string

Preferred delivery report content type, application/json or application/xml.

notifyUrl
string

The URL on your call back server on which the Delivery report will be sent.

regional
object

Region-specific parameters, often imposed by local laws. Use this, if country or region that you are sending an SMS to requires additional information.

indiaDlt
object

Distributed Ledger Technology (DLT) specific parameters required for sending SMS to phone numbers registered in India.

contentTemplateId
string

Registered DLT content template ID which matches message you are sending.

principalEntityId
required
string

Your assigned DLT principal entity ID.

telemarketerId
string

Your assigned Telemarketer ID. (required for Aggregators)

turkeyIys
object

IYS regulations specific parameters required for sending promotional SMS to phone numbers registered in Turkey.

brandCode
integer <int32>

Brand code is an ID of the company based on a company VAT number. If not provided in request, default value is used from your Infobip account.

recipientType
required
string
Enum: "BIREYSEL" "TACIR"

Recipient Type must be TACIR or BIREYSEL.

southKorea
object

Use case dependent parameters for sending SMS to phone numbers registered in South Korea.

resellerCode
integer <int32>

Reseller identification code: 9-digit registration number in the business registration certificate for South Korea. Resellers should submit this when sending.

title
string [ 0 .. 66 ] characters

Set the title or subject of a message. South Korea only.

sendAt
string <date-time>

Date and time when the message is to be sent. Used for scheduled SMS. Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ, and can only be scheduled for no later than 180 days in advance.

validityPeriod
integer <int64>

The message validity period in minutes. When the period expires, it will not be allowed for the message to be sent. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h).

entityId
string [ 0 .. 66 ] characters

Required for entity use in a send request for outbound traffic. Returned in notification events. For more details, see our documentation.

applicationId
string [ 0 .. 66 ] characters

Required for application use in a send request for outbound traffic. Returned in notification events. For more details, see our documentation.

campaignReferenceId
string [ 0 .. 255 ] characters

ID that allows you to track, analyze, and show an aggregated overview and the performance of individual campaigns per sending channel.

sendingSpeedLimit
object

Limits the send speed when sending messages in bulk to deliver messages over a longer period of time. You may wish to use this to allow your systems or agents to handle large amounts of incoming traffic, e.g., if you are expecting recipients to follow through with a call-to-action option from a message you sent. Not setting a send speed limit can overwhelm your resources with incoming traffic.

amount
required
integer <int32>

The number of messages to be sent per timeUnit. By default, the system sends messages as fast as the infrastructure allows. Use this parameter to adapt sending capacity to your needs. The system is only able to work against its maximum capacity for ambitious message batches.

timeUnit
string
Default: "MINUTE"
Enum: "MINUTE" "HOUR" "DAY"

The time unit to define when setting a messaging speed limit. Defaults to MINUTE.

Responses

200

successful response

400

Error responses

401

Unauthorized

403

Forbidden

500

Internal Server Error

Request samples

Content type
Example
Copy
Collapse all
{
  • "bulkId": "BULK-ID-123-xyz",
  • "messages":
    [
    • {
      • "binary":
        {
        • "dataCoding": 0,
        • "esmClass": 0,
        • "hex": "54 65 73 74 20 6d 65 73 73 61 67 65 2e"
        },
      • "callbackData": "DLR callback data",
      • "destinations":
        [
        • {
          • "messageId": "MESSAGE-ID-123-xyz",
          • "to": "41793026727"
          },
        • {
          • "to": "41793026834"
          }
        ],
      • "from": "InfoSMS",
      • "intermediateReport": true,
      • "notifyContentType": "application/json",
      • "validityPeriod": 720,
      • "campaignReferenceId": "summersale"
      },
    • {
      • "binary":
        {
        • "dataCoding": 0,
        • "esmClass": 0,
        • "hex": "41 20 6C 6F 6E 67 20 74 …20 45 6D 70 69 72 65 2E"
        },
      • "deliveryTimeWindow":
        {
        • "days":
          [
          • "MONDAY",
          • "TUESDAY",
          • "WEDNESDAY",
          • "THURSDAY",
          • "FRIDAY",
          • "SATURDAY",
          • "SUNDAY"
          ],
        • "from":
          {
          • "hour": 6,
          • "minute": 0
          },
        • "to":
          {
          • "hour": 15,
          • "minute": 30
          }
        },
      • "destinations":
        [
        • {
          • "to": "41793026700"
          }
        ],
      • "from": "41793026700",
      • "sendAt": "2021-08-25T16:00:00.000+0000"
      }
    ]
}

Response samples

Content type
Example
Copy
Collapse all
{
  • "bulkId": "2034072219640523072",
  • "messages":
    [
    • {
      • "messageId": "2250be2d4219-3af1-78856-aabe-1362af1edfd2",
      • "status":
        {
        • "description": "Message sent to next instance",
        • "groupId": 1,
        • "groupName": "PENDING",
        • "id": 26,
        • "name": "PENDING_ACCEPTED"
        },
      • "to": "41793026727"
      }
    ]
}

Encountering issues

Contact our support

What's new? Check out

Release Notes

Unsure about a term? See

Glossary

Research panel

Help shape the future of our products
Learn more
Service status

Copyright @ 2006-2025 Infobip ltd.