Send a MO message


This API allows an external system to send a virtual mobile-originated (MO) message to an SMS Program. You can send a virtual mobile-originated (MO) message for Text-for-Response or Text-To-Join program. A Text-for-Response or Text-To-Join program ID is required. This API works for both opt-in and double opt-in for both these programs.



This API does not work with mGage. You can use this API only if you use SMPP to send messages.

Requirements to use this API

  • Your Campaign org must have SMS enabled by provisioning and be provisioned to send SMS messages through the Sender feature.
  • A database in your Campaign org must have SMS enabled.
  • The user making the API call must be enabled for SMS.
  • The user making the API call must have valid Oauth credentials.



Up to 10 concurrent requests are allowed to our API servers at any given time when using the OAuth method for authentication.


post /channels/sms/programs/{programId}/virtualmo


AttributeData typeDescription
programId (required)StringText-for-Response program ID
phoneNumber (required)StringSMS phone number.

Response codes

ScenarioResponse codeMessage
User is not on an SMS-enabled Org403Forbidden
User calling the API is not SMS enabled403Forbidden
Program ID not found404Unable to locate SMS program ID {}
Sender feature is not enabled for this Org405Unsupported operation

Test your API call

Use Swagger to test your API call. To access the Swagger environment for your Org, replace {POD#} with the Pod where your Org exists:


For example, here’s the link to use if your Org is on Pod 1:!/channels/programs_post_post_9