API REFERENCEv1

Sending SMS & MMS Messages

POSThttps://api2.protexting.com/v1/sms/send

Pass your server-side token as access_token. Replace sample values with your own. Authentication & setup →

A successful send response is separate from a carrier delivery receipt. Use delivery reports to follow the result. Confirm recipient permission and sender eligibility before sending.

Example
POST * limit: 10 SMS per same recipient number per minute
  • The limit for outgoing SMS is 480 characters - sent as multipart message (3 SMS)

  • Each SMS will count as 1 credit and MMS as 3 credits sent in the USA. For international coverage, please refer to international messaging credits.

  • Sending MMS: create "MMS templates" first. Once the "MMS templates" are approved, use the approved "MMS templates" to send MMS messages.

  • IMPORTANT: Please test your campaign well before going live to make sure the correct number of SMS are sent out.

Request parameters:

* required parameters

ParameterDescription
* MobilePhone String, valid phone number
SendFrom String, valid phone number (account short code or long number) see here »
Message String
MmsTemplateId Integer, see here »
SubjectString
MmsHighResolutionInteger, 0 or 1, option to add short URL link in MMS, to view MMS in browser
MmsResendInteger, 0 or 1, if MMS is rejected by carriers, system will resend the message as SMS with short URL to view MMS in browser

* "SendFrom" parameter can be used if multiple short codes and long numbers are set in the account. If empty, account code/s will be used as default "SendFrom" on a rotating basis

Response parameters:

ParameterDescription
Id String
DeliveryReportUrl String
Message String

Example Request:

Request example
# Set PROTEXTING_ACCESS_TOKEN in your environmentcurl --request POST \  "https://api2.protexting.com/v1/sms/send?access_token=${PROTEXTING_ACCESS_TOKEN:?Set your API token}" \  --header 'Accept: application/json' \  --header 'Content-Type: application/json' \  --data '{  "MobilePhone": "16461234567",  "Message": "Test Message",  "ResourceLink": ""}'
Server-side exampleJSON · HTTPS

Example Response Headers:

Response headers example
Status Code: 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection: Keep-Alive
Content-Type: application/xml; charset=utf-8
Keep-Alive: timeout=5, max=100
Link: <https://api2.protexting.com/v1/sms/send?access_token=your_access_token>; rel=self Pragma: no-cache Transfer-Encoding: chunked X-Pagination-Current-Page: 1 X-Pagination-Page-Count: 1 X-Pagination-Per-Page: 100 X-Pagination-Total-Count: 1 X-Powered-By: PHP/5.6.2 X-Rate-Limit-Limit: 60 X-Rate-Limit-Remaining: 59 X-Rate-Limit-Reset: 0

Example Response Body:

JSON response example
{
    	"Id":"8cccf554cd42bf1b22bcc2d9b4e4571a4a87c9d0",
        "DeliveryReportUrl": "https://api2.protexting.com/v1/sms/delivery-report?access_token=your_access_token&id=8cccf554cd42bf1b22bcc2d9b4e4571a4a87c9d0",        "Message":"Text message to 1646xxxxxxx has been sent."}
XML response example
<response>
    <Id>8cccf554cd42bf1b22bcc2d9b4e4571a4a87c9d0</Id>
    <DeliveryReportUrl>https://api2.protexting.com/v1/sms/delivery-report?access_token=your_access_token&id=8cccf554cd42bf1b22bcc2d9b4e4571a4a87c9d0</DeliveryReportUrl>    <Message>Text message to 1646xxxxxxx has been sent.</Message>
</response>

HTTP Status Codes:

The standard HTTP Status Codes are used. More information is available here: http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml

Error Codes:

Error Codes and Examples here »

Resource File Requirements
File type: jpg, gif, bmp, png, tiff
Recommended audio length: no more than 60 seconds
Keep at a high bitrate
Size: 70.00MB
Animated GIFs are supported up to 7MB

Reference from the ProTexting documentation catalog. Code examples are illustrative; this page does not execute API requests.