Skip to content

Status codes

The top-level status on every response. 0 means the API accepted the call; anything else means it did not — except for the two blocklist codes noted below, which are how those operations report success.

This is the request-level scale. The status inside a delivery report transaction is a different vocabulary entirely — see DLR statuses.

Success

StatusMessageMeaning
0operation-specificThe call was accepted. message describes what happened — SMS will be sent, contact list successfully created, and so on.

Two blocklist operations succeed with a non-zero status

addNumBL answers 946 when numbers were added, and rmNumBL answers 944 when some of the numbers given were not on the blocklist. Both are normal outcomes, not failures. Special-case them, or a working integration will look broken.

StatusMessageOperation
944X phone numbers Successfully deleted , Y Phone numbers not exist in blacklistrmNumBL — partial success
946number has successfully added to blacklistaddNumBL — success

Parsing and routing

StatusMessageWhat to do
1There was a problem parsing your XMLThe document is malformed — an unclosed tag, a stray character, or a body that is not XML at all. Deterministic; fix the payload.
2names the missing fieldA required element is absent. The message says which one.
7You can not send in this format, you need send group in 'bulk', For more - call to Customer Service.The payload shape does not match the operation — typically several distinct messages sent through sms instead of bulk.
502action type not validAn action value outside the allowed set — for getApiToken that means anything other than new or current.
997Not a valid command sentThe root element is not a recognised operation. Check spelling, including the deliberately odd ones such as getBlanceSubs.
998There was an unknown error in the requestUnclassified request failure.
999Contact supportServer-side failure. Retry once with backoff, then escalate.

Authentication and permissions

StatusMessageWhat to do
3Username or password is incorrect and API token is invalidThe token is not recognised. See Authentication.
10Username or password is incorrect and Expired API tokenThe token has passed its expiration_date. Mint a new one.
11API token is valid but doesn't match username or if you have newer token you should use it insteadThe token belongs to a different username, or has been superseded.
503username not exist in your accountThe user.username is not an account you may act for.
504current token not foundaction: current on an account that has never had a token. Create the first one in the console.
511you have not permission for this functionAuthenticated, but the account is not entitled to this operation.

Account state

These can succeed later without any change to your request.

StatusMessageWhat to do
4Not enough creditTop up. balance reports what is left.
5No permission to send SMS at this timeOutside the account's permitted sending hours.
6Process failureTransient server-side failure. Retry once with backoff.
12When sending SMS: Not enough money · When verifying OTP code: Unverified codeTwo unrelated meanings on one code — read it against the operation you called.
515Unverified source. For more information see: D4U.co.il/li/pmYraThe source is not a verified sender. See Verified senders.

Destinations

StatusMessageWhat to do
8All numbers are on a blocked listEvery destination is blocklisted, so nothing was sent. Not a code fault — an audience one.
9At least one of the destinations is too short or too longA phone number does not match 5xxxxxxxx / 05xxxxxxx.
714non valid content in parameter temp_bltemp_bl must be a whole number of days from 1 to 14.
715All numbers have been temporarily blockedEvery destination was filtered out by temp_bl.
988Contact list are entered not existA cl_id does not resolve. Check with getCL.

Message content

StatusMessageWhat to do
980Invalid linkA <link> value is not a usable URL.
981Error create hashThe short link could not be generated. Retry; escalate if it persists.
986Add unsubscribe error - invalid valueadd_unsubscribe accepts 2 (reply to opt out) or 3 (opt-out link).
989The message is too long or too short · The campaign name is too longThe body exceeds 1005 characters or is empty, or campaign_name exceeds 50.

Campaigns

StatusMessageWhat to do
955Campaign already cancelAlready cancelled — idempotent in effect, so usually safe to ignore.
966Campaign already sentToo late to cancel; the campaign has gone out.
970Campaigns was not cancelled. Contact supportCancellation failed server-side.
977Campaign does not belong to customer or Not existWrong campaign_id, or it belongs to another account.

Blocklist

StatusMessageWhat to do
933Phone or reason not validrmNumBL needs a valid phone and a reason.
944Some of numbers not in blacklistPartial success on rmNumBL — see the note at the top of this page.
946number has successfully added to blacklistSuccess on addNumBL — see the note at the top of this page.

Sender verification

StatusMessageWhat to do
510invalid verify_phone request: no phones to verifyverify_phone was called with no phone elements.

Sub-accounts

Returned by the reseller operations in Subscribers.

StatusMessageWhat to do
990Amount must be small amount of your creditsYou cannot grant a sub-account more credit than you hold.
991The amount must contain only digitsamount must be numeric.
992The source is too long or too shortThe default source for the sub-account is outside the 11-character limit.
993The password is too long or too shortPassword length rejected.
994Username already existsPick a different username.
995The username is too long or too shortUsername length rejected.
996The name is too long or too shortDisplay name length rejected.