Postman v2 Guide
Go to Postman v2
  • Postman v2 API Docs
    • 🤖About Postman v2
      • Postman v2 SLOs
    • Postman v2 SMS API user documentation
    • 📶Service Status
    • ⏰Postman Guide latest updates
    • 🏋️Important dates
    • 🛒Useful Links
  • Postman v2 general user guide (MoP)
    • 🔐Logging into Postman v2
    • 📢Create Campaign
      • Message Preview
      • Language tab
      • Message content
      • Character count
    • 🪵Message Logs
    • Deleting campaigns
  • Postman v2 Admin Portal, for UI Users (MOP)
    • 📤Sending messages via the Admin Portal
  • Postman v2 Admin Portal for API users (MOP)
    • ⚙️Campaign Settings
    • 🖥️Sending Messages via Postman API
  • 🪪Sending SMSes using NRIC
  • Postman v2 admin portal, for UI users (Internal)
    • Internal SMS
    • Information for new Twilio users
    • Summary of Costs
    • How do I onboard Postman v2 Internal SMS
      • 1. Sender ID Registration
      • 2. Sign up for a Twilio account
      • 3. Set up your Twilio account
      • 4. Fill your Twilio credentials on Postman
        • What if I need to buy a phone number?
      • 5. Send a Test Message
  • General notes for API users
    • 🗒️Overview
    • Authentication
    • API Errors
    • Message Delivery Errors
    • Pagination
    • Rate Limits
  • Endpoints for API users
    • 📞Endpoints for API users
    • The message object
    • Single Send
    • Single Send - Retry
    • Retrieve Message
    • Batch Send
    • Batch Send - Retry
    • Retrieve Batch
    • Retrieve Campaign Message
  • SFTP
    • 📂SFTP Integration
    • 🗝️Generating SSH Keys
    • Connecting to the SFTP server
    • Sending messages via SFTP
    • Checking whether sending via SFTP is successful
  • Load Test
    • Load Test Booking Requirement
  • FAQ
    • ❓Postman v2 FAQ
      • General Q&A
      • Sending emails to users (Legacy Postman)
      • Access related inquiries
      • Platform access related inquiries
      • User Access
      • API keys generation and IP Address whitelisting
      • Delivery Report
      • Messaging
      • Message Statuses
      • Integration and configuration related inquiries
      • Delivery rate
      • File types
      • SFTP and other integration methods
    • 💻Postman v2 API FAQ
      • API keys generation
      • Campaign related inquiries
      • API related inquiries
      • IP Address related inquiries
    • 🗃️SFTP and Other integration methods
  • Legal
    • Terms & Condition
    • Privacy Policy
  • Call App
    • Terms & Condition
    • Privacy Policy
Powered by GitBook
On this page
Export as PDF
  1. Endpoints for API users

The message object

{
  "createdAt": "2024-05-16T10:30:50.904+08:00",
  "updatedAt": "2024-05-16T10:30:50.965+08:00",
  "id": "message_19e23cf4-6f0f-47ed-8856-4623817684b1",
  "recipient": "6599999999",
  "values": {
    "name": "John Doe",
    "fruit": "apple"
  },
  "creatorId": "<USER_ID_OF_MESSAGE_CREATOR>",
  "fullMessage": "<YOUR_FULL_MESSAGE>",
  "latestStatus": "success",
  "templateBodyId": "<YOUR_TEMPALTE_BODY_ID>",
  "campaignId": "<YOUR_CAMPAIGN_ID>",
  "templateBody": {
    "createdAt": "2024-05-16T10:13:15.111+08:00",
    "updatedAt": "2024-05-16T10:13:15.111+08:00",
    "id": "<YOUR_TEMPALTE_BODY_ID>",
    "templateId": "<YOUR_TEMPALTE_ID>",
    "language": "english",
    "body": "{{body}}",
    "creatorId": "user_200972fc-2aa5-42f5-b6fd-4023d96afcd4"
    
  },
  "batches": [],
  "language": "english",
  "creatorEmail": "campaign_93530a5f-9efd-4d4a-8b27-6a3770b815c2@postman.gov.sg",
  "attempts": [
    {
      "status": "success",
      "createdAt": "2024-05-16T10:57:52.534+08:00"
    },
    {
      "status": "failure",
      "createdAt": "2024-05-16T10:30:50.906+08:00",
      "error": {
        "type": "server_error",
        "code": "server_unknown_error"
      }
    }
  ]
}

Attributes


id string


creatorID string

Creator ID - this is the ID of the user that created the message on the first attempt


recipient (Mandatory field)

Recipient is a mandatory field.

The recipient will be the mobile phone number of the recipient, prefixed by the country code but without the leading +. For example, when sending to a Singaporean phone number, the value of recipient will be 6599999999

eg. 6591234567 is a recipient string for a Singapore (65) phone number (91234567)

Sending SMSes using NRIC

For users sending SMSes using NRIC, the recipient will comprise of value and type .

recipient
input
Remarks

value

SXXXXXXXA

the recipient’s NRIC number, case sensitive

type

nric

explanation of the value

eg. the recipient field of the endpoint should be the following if users are sending SMSes using NRIC.

Message object: recipient
"recipient": {
	  "value": "S1234567A",
	  "type": "nric"
	  },

language string (Mandatory field)

This is the language of the message template used to send this message. One of english, chinese, malay, or tamil.


values object (Mandatory field)

The values that were inserted into the message template and form the complete message. The keys within values will vary depending on the campaign’s template parameters.

In the example above, the message template that was used contained two parameters: recipient_name and topic.

Avoid using recipient and language as keywords as they are mandatory fields in the request payload.


fullMessage string

Contains the full message including the SMS Header and Footer.


campaignId string

Campaign identifier - this will inform you which campaign the message is tagged to.


unsupported characters

The GSM-7 character set is supported by Postman.

Otherwise, agencies should strictly abide by the unsupported character guidelines. This is the list of characters that are not supported by Postman and need to be excluded in the values.

This is what happens if you include unsupported characters in your messages:

  1. unsupported characters significantly increase the character count and therefore, the number of message segments per SMS.

  2. besides cost, long messages with multiple segments will jam the send queue, affecting even the campaigns of other agencies besides your own.

  3. Reliability of sending messages cannot be guaranteed beyond 7 message segments per SMS, a limitation imposed by telcos. Hence, we advise you to keep your messages below 7 segments.


Trailing white spaces

latestStatus string

Possible message statuses and what they mean

Status in delivery report/API retrieve message status
Corresponding status on UI dashboard
What it means

created

pending

Postman is aware of your request and has created the necessary records.

However, it has not yet made the request to the relevant messaging service provider to have the message sent.

enqueued

pending

Your message is now in our queue and in the process of getting sent to the relevant messaging service provider.

sending

pending

Your message has been taken out of the queue and in the process of getting sent to the relevant messaging service provider.

sent

sent

Postman has made the request to the relevant messaging service provider to have the message sent.

However, it has not yet received a notification from the provider on the request status.

sent_to_telco

sent

The relevant messaging service provider has sent an update to Postman saying that the message has been sent to the recipient's Telco.

Note: In this state, your message has reached the telco, but may or may not have been delivered to the recipient's phone. This could be because the recipient's phone is off or in airplane mode. Beyond 48 hours, if the message status remains sent_to_telco, it is unlikely that we will get a further status update from the telco. This is a telco limitation and is the expected behaviour. We recommend composing a new message within this campaign if you find it necessary, though do note that there is a possibility of the recipient receiving the same message twice.

success

success

The relevant messaging service provider has sent an update to Postman saying that the message has been delivered by the Telco to the recipient. Note: This is a terminal status meaning that the message has been delivered by the telco to the recipient.

failure

failure

This is a terminal status meaning that the message failed to send either due to an error in Postman or from the messaging service. More details in the error message available in delivery report download.


attempts array of objects

Shows an object containing the status and createdAt for each attempt. If the status is failure , there will be an additional error object which includes:

  1. type - The error type

    1. delivery_error - Error with the delivery of the message

    2. server_error

  2. code - The error code

    1. recipient_invalid

    2. recipient_unavailable

    3. content_invalid

    4. routing_error

    5. delivery_unknown_error

    6. server_unknown_error

The full description of each error code can be found in the Message delivery errors page

PreviousEndpoints for API usersNextSingle Send

Last updated 24 days ago

Message identifier - this can be used to retrieve a single message and its delivery status (). It can also be used to re-send a message in the event where the first attempt failed ()

Please note that this feature is only available for selected agencies, .

See the full list of unsupported characters .

Check if your messages have any unsupported characters .

The content within your values object should not start nor end with a space, as this will trigger .

Retrieve message
Single Send- Retry
refer to this page for more information
here
400 Bad Request
here