SMS campaigns

Run spreadsheet-driven SMS campaigns in two steps: create the campaign from an uploaded file, then launch it.

Create a campaign

POST /api/apikey/v1/SMSCampaignApi/campaign-file

Send as multipart/form-data.

FieldTypeDescription
fileFileRecipients spreadsheet (e.g. .xlsx) with headers.
countryCodeTextDefault country code, e.g. 961.
CampaignText (JSON){ "Name", "Content", "SenderId", "HasShortUrl", "Variables": [], "HasBlacklistShortUrl" }
LongUrlFromFileTextOptional. true to read long URLs from the file.
bash
curl -X POST "https://omni-apis.montymobile.com/notification/api/apikey/v1/SMSCampaignApi/campaign-file" \
  -H "api-key: <Your_API_Key>" \
  -H "Tenant: <Tenant_ID>" \
  -F "file=@recipients.xlsx" \
  -F "countryCode=961" \
  -F 'Campaign={"Name":"Spring sale","Content":"Hello!","SenderId":"<Source_Number>","HasShortUrl":false,"Variables":[],"HasBlacklistShortUrl":false}'

Launch a campaign

PUT /api/apikey/v1/SMSCampaignApi/campaign-launch

bash
curl -X PUT "https://omni-apis.montymobile.com/notification/api/apikey/v1/SMSCampaignApi/campaign-launch" \
  -H "api-key: <Your_API_Key>" \
  -H "Tenant: <Tenant_ID>" \
  -H "Content-Type: application/json" \
  -d '{ "CampaignId": "<Campaign_Id>" }'

Responses

The success bodies for both campaign endpoints — including the returned CampaignId and the campaign variable syntax — are being confirmed with our team. Coming soon