Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 32 Next »

 Endpoints

We'll have two endpoints:

  • REST (GET): /services/rest/message/status?username=[]&password=[]&documentId=[]
  • SOAP: /services/ws/message?wsdl (method: status)


   <soapenv:Header/>
   <soapenv:Body>
      <ser:status>
         <username>?</username>
         <password>?</password>
         <documentId>?</documentId>
      </ser:status>
   </soapenv:Body>
</soapenv:Envelope>

What information to return?

For the REST endpoint (JSON)

 If documentId does exist

{
    "documentId": "4fbb6c371a88393bc47baf32",
    "recipient": "48660703691",
    "messageStatus": "10"
}

 for  when documentId does not exist

{
    "documentId": "4fbb6c371a88393bc47baf32",
    "messageStatus": "0"
}

Note that we only guarantee to hold message for status query for 80 hours after message send datetime.

For the SOAP endpoint (XML):


   <soap:Body>
         <return>            
        <documentId>4fbb6cd21a88393bc47baf33</documentId>            
            <recipient>48660703691</recipient>
            <messageStatus>10</messageStatus>
         </return>
   </soap:Body>
</soap:Envelope>

Status codes

Basing on https://admin.smartmessagingservices.net/wiki/download/attachments/12386334/SMSPL-SW-807-MCOR-0001+-+Web+Services+API+-+V1.06.2.pdf?version=1&modificationDate=1337252411000 and https://admin.smartmessagingservices.net/wiki/display/MC4API/Web+Service+to+query+status. Some status codes are omitted as they can't (yet) occur in our application.

Status code

Priority

Final

Meaning

When?

0

1N

Unknown

Message with the given id not found. It is possible that the message was submitted, but not yet processed by a worker. Or that such a message doesn't exist.

29YDeliveredMessage was sent and Delivery Receipt was received as sent to us by the Mobile Network
36YExpiredMessage delivery failed and message expired (SMSC will no longer try to deliver it) as notified by Mobile Network
42YDeletedMessage was deleted by Mobile Network

5

4Y

Undeliverable

Message undeliverable as determined by Mobile Network

85YRejectedMessage rejected by Mobile Nework
107N

Submitted

Send request received from customer but not yet routed and sent to mobile network. May be temporarily unroutable due into inactive outbound bind.

11

8N

Sent

Message has been sent to mobile network - delivery notification not yet received.

123YNot deliverable

There's no Routing defined for the destination address to send the message to the mobile network.

134YOA WhitelistOrigin Address whitelist validation failed

Priority relates to the status returned when a single message sent to us is longer than 160 characters and is sent as multiple parts to the SMSC making it possible for each message part to have a different status.  

If message parts have different statuses, the status returned in the query process will be the lowest priority status within the relevant message parts.   It is possible for one message part to show as delivered while the others show as sent.  A multipart message will not display on a handset until all message parts are delivered so the valid total message status is sent and this is what your message status query will return.   You can log into the user web application on MC5 and view the status of the individual message parts as each Outbound message to the SMSC shows as a separate entry in the SMS Out Volume Report


Status code

Final

Meaning

When?

-101

Y

No username


-102

Y

No password


-103

Y

No document id


-104YInvalid recipientRecipient number invalid - validation rules - numeric length: 8-16 inclusive
-105YInvalid sourceSender number invalid - validation rules - in the system - hardcoded So alpha <2, 11>, digit < 3, 16>
-106YEmpty textSMS text was empty
-109YInvalid rotation algorithm providedAvailable algorithms are: max_rotation, conversation
-110YInvalid encoding nameAvailable encodings are e.g. "utf-16", "gsm", "iso-8859-1" etc. (see Send Single Message)

-200

Y

Invalid username/password

Last event: "invalid username/pass"

-201

Y

User disabled

Last event: "user disabled"

-202YUser blockedLast event: "user blocked"

-210

Y

Insufficient credits

Last event: "no credits"

-230YDocument ID not matchedUser does not have rights to check message status
-240YInvalid (not supported) replyTo value

-910

Y

SMSC error

Last event: "send failure" 

-999

Y

Internal error


Missing status codes:

  • -110 (invalid xml): not possible? It would be an WS-framework error?
  • -211 (invalid service), -930 (status query timeout): N/A
  • -900 (service not available): ?
  • -940 (query too fast)

Submission URLs

To make the URLs uniform, the endpoints to submit messages will be:

  • REST (GET/POST): /services/rest/message/sendSingle2?username=[]&password=[]&documentId=[]&text=[]&replyTo=[]&recipient=[]&sender=[]
  • SOAP: /services/ws/message?wsdl (method: sendSingle2)
  • No labels