Skip to main content

Create a Message

Create a message.

Permissions

The API token must include the following scopes: Messaging.

Path Parameters
AccountSid uuid REQUIRED

The unique identifier of the project that sent or received this message.

Request Body
To string REQUIRED

The phone number in E.164 format that received the message. For inbound messages, this is one of your SignalWire phone numbers; for outbound messages, this is the remote phone number that received the message.

From string REQUIRED

The phone number in E.164 format. For inbound messages, this will be the remote phone number who sent the message. For outbound messages, this will be one of your SignalWire phone numbers.

Body string REQUIRED

The text of the message. Up to 1600 characters long and can be null if no message was sent.

MediaUrl string REQUIRED

URL of media you wish to attach and send with the message. Include multiple MediaUrl arguments if you which to send more than one media per message, up to a maximum of 10 media URLs per message. There is a limit of 5MB for the total combined media size per message. See the MIME Types section for a full list of content types supported by SignalWire.

ApplicationSid string

The SID of a SignalWire Compatibility application used to configure the message's MessageStatusCallback attribute. If ApplicationSid and StatusCallback are specified, StatusCallback will take precedence.

MaxPrice string

The maximum price in USD acceptable for the message to be sent. Once your message is queued, the cost to send the message is calculated and if it is greater than MaxPrice, the message will be set as failed and not sent. You will not be charged. If MaxPrice is not set, all messages will be sent. The price can have a maximum of four decimal places, i.e. 0.0075.

StatusCallback string

A URL endpoint to receive callbacks each time the status of the message changes from queued, failed, sent, delivered or undelivered.

ValidityPeriod integer

The number of seconds a message will allow being queued before canceling. When sending high volume of messages, messages can sit in your sending queue. If the message should only be sent in in a specific timeframe, use ValidityPeriod to ensure you don't send messages after time-sensitive operations. It is not recommended to set a validity period of less than 5 seconds. Default value is 14400

MessagingServiceSid string

If a number group was used when sending an outbound message, the number group's ID will be present. If no number group was used, the value will be null.

Responses
200

OK

Schema OPTIONAL
account_sid uuid OPTIONAL

The unique identifier of the project that sent or received this message.

api_version string OPTIONAL

The version number of the SignalWire Compatibility REST API used to handle this message.

body string OPTIONAL

The text of the message. Up to 1600 characters long and can be null if no message was sent.

num_segments integer OPTIONAL

The number of segments that make up the entire message. If the body of the message is larger than 160 GSM-7 characters or 70 UCS-2 characters, it will automatically be broken up into smaller messages and annotated to attempt proper reconstruction on the recipient handset. Not all carriers and handsets support this. SignalWire will recombine inbound messages into a single message. Your project will be charged for each segment sent or received.

num_media string OPTIONAL

The number of media files that were included with the message.

date_created string OPTIONAL

The date and time the message was created in RFC 2822 format.

date_sent string OPTIONAL

The date and time the message was sent in RFC 2822 format.

date_updated string OPTIONAL

The date and time the message was last updated in RFC 2822 format.

direction string OPTIONAL

Possible values: [inbound, outbound-api, outbound-call, outbound-reply]

The direction of the message.

error_code string OPTIONAL

If an error has occurred on the message, the error code will give you a specific code to help lookup more information on the failure. If no error occurred, error_code will be null.

error_message string OPTIONAL

A human readable description of the error that occurred. If no error occurred, error_message will be null.

from string OPTIONAL

The phone number in E.164 format. For inbound messages, this will be the remote phone number who sent the message. For outbound messages, this will be one of your SignalWire phone numbers.

price integer OPTIONAL

The cost of the individual message billed to your project.

price_unit string OPTIONAL

The currency in which price is charged as.

sid string OPTIONAL

A unique ID that identifies this specific message.

status string OPTIONAL

Possible values: [queued, sending, sent, delivered, undelivered, failed, receiving, received]

Current status of the message.

to string OPTIONAL

The phone number in E.164 format that received the message. For inbound messages, this is one of your SignalWire phone numbers; for outbound messages, this is the remote phone number that received the message.

messaging_service_sid string OPTIONAL

If a number group was used when sending an outbound message, the number group's ID will be present. If no number group was used, the value will be null.

uri string OPTIONAL

The URI of this particular message.

subresource_uris object OPTIONAL

The URIs for any subresources associated with this message.

media string OPTIONAL