Sign inGet started

Messaging

Sending messages

In order to send a message you must have an active channel and perform an HTTP request to the following endpoint with a valid access key
When you send a message, a contact is automatically created with a contactId matching the receiver's identifier if one doesn't already exist. For instance, sending an email generates a contact with an email identifier, while sending an SMS creates one with a phone number identifier.
POST
/workspaces/{workspaceId}/channels/{channelId}/messages
Send a message to a channel
Verzoek-payload
sender
object
Onderliggende parameters tonen
sender.connector
object
verplicht
The sender of the message. For email messages, the sender is used to override the default sender username.
Onderliggende parameters tonen
sender.connector.identifierValue
string
verplicht
The identifier value of the sender.
sender.connector.annotations
object
Annotations are used to add additional information to a message. For email messages, it can be used to specify a custom sender name.
Onderliggende parameters tonen
sender.connector.annotations.name
string
receiver
object
verplicht
Onderliggende parameters tonen
receiver.contacts
array of object
Onderliggende parameters tonen
receiver.contacts.id
string
The ID of the receiver. This is a reference to a contact.
receiver.contacts.identifierKey
string
The identifier key for finding the contact. For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID without needing to know the channel's portfolio ID.
receiver.contacts.identifierValue
string
The identifier value for finding the contact.
receiver.contacts.type
string
The type of the receiver.
Possible values: cc, bcc, to
receiver.contacts.identifiers
array of object
Onderliggende parameters tonen
receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact.
receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
receiver.contacts.platformAddress
string
The value that is used to send the message to the platform.
receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address (e.g. phone number or email address) from a contact. This is an optional override for the default resolution logic (i.e. sending to the first identifier key-value pair for the relevant platform).
reference
string
A reference to the message. This can be used to identify the message in the channel.
template
object
verplicht
Onderliggende parameters tonen
template.name
string
The platform name of the template.
template.projectId
string
the ID of the project from the project from Studio
template.version
string
The version of the template.
template.locale
string
template.attachments
array of object
Onderliggende parameters tonen
template.attachments.mediaUrl
string
verplicht
The URL of the attachment.
template.attachments.filename
string
verplicht
The filename of the attachment.
template.attachments.inline
boolean
template.shortLinks
object
SMS link shortening options.
Onderliggende parameters tonen
template.shortLinks.enabled
boolean
Enables link shortening for SMS messages.
template.shortLinks.domain
string
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
template.variables
object
Deprecated: Use parameters instead (string parameter for variables). This property is maintained for backward compatibility but will be removed in a future version.
Onderliggende parameters tonen
template.variables.default
string
template.utmParameters
array of object
The list of UTM parameters.
Onderliggende parameters tonen
template.utmParameters.key
string
verplicht
The name of the parameter in the query string.
template.utmParameters.value
string
verplicht
The static value of the parameter. Mutually exclusive with Reference.
template.parameters
array of object
Onderliggende parameters tonen
template.parameters.type
string
verplicht
Possible values: string
template.parameters.key
string
verplicht
template.parameters.value
string
template.settings
object
Onderliggende parameters tonen
template.settings.disallowMmLite
boolean
This is specific for WhatsApp marketing templates and requires MM Lite to be disabled for the WABAID.
meta
object
Onderliggende parameters tonen
meta.extraInformation
object
Free-form metadata. The useCase key (marketing, otp, transactional, or conversation) classifies the message and affects handling such as routing, frequency capping, email deliverability, and the messaging type/tag used on Meta channels (Messenger, Instagram).
meta.referral
object
Onderliggende parameters tonen
meta.referral.source
string
meta.referral.title
string
meta.referral.text
string
meta.referral.group
string
meta.referral.metadata
object
Onderliggende parameters tonen
meta.referral.metadata.source_id
string
meta.referral.metadata.source_url
string
meta.referral.metadata.media_url
string
meta.referral.metadata.tracking_id
string
meta.order
object
The order object contains information about the purchase order.
Onderliggende parameters tonen
meta.order.products
array of object
Onderliggende parameters tonen
meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.order.products.externalProductId
string
The platform-specific product ID.
meta.order.products.quantity
integer
The number of items purchased.
meta.order.products.price
object
The price of the product.
Onderliggende parameters tonen
meta.order.products.price.amount
integer
meta.order.products.price.exponent
integer
meta.order.products.price.currencyCode
string
meta.referredProduct
object
Referred product in an incoming message.
Onderliggende parameters tonen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
The platform-specific product ID.
meta.email
object
Onderliggende parameters tonen
meta.email.subject
string
meta.email.headers
object
meta.email.from
object
Onderliggende parameters tonen
meta.email.from.username
string
meta.email.from.displayName
string
meta.sms
object
Onderliggende parameters tonen
meta.sms.smartEncoding
boolean
When enabled, attempts to transliterate Unicode characters to GSM-7 equivalents. If the resulting text is fully GSM-7 compatible, fewer message segments may be required. The original message body is preserved; transliteration is only applied when sending.
meta.pushNotifications
object
Onderliggende parameters tonen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: apns, firebase, web
meta.navigatorId
string
meta.navigatorMessageId
string
meta.flow
object
Onderliggende parameters tonen
meta.flow.id
string
meta.flow.name
string
meta.flow.stepId
string
meta.flow.runId
string
meta.journey
object
Onderliggende parameters tonen
meta.journey.id
string
meta.journey.name
string
meta.journey.stepId
string
meta.journey.runId
string
meta.campaign
object
Onderliggende parameters tonen
meta.campaign.id
string
meta.campaign.name
string
replyTo
object
Onderliggende parameters tonen
replyTo.id
string
verplicht
The ID of the message that is being replied to.
replyTo.order
integer
The order of the message in the conversation.
replyTo.type
string
verplicht
Possible values: message, click, referrals
notification
object
Onderliggende parameters tonen
notification.url
string
A custom webhook url to send events to. Note: you should have a created webhook subscription. Refer to the Notifications API to learn how to create a webhook subscription.
capFrequency
boolean
If set to true, the frequency capping settings of the platform will be used to either allow or reject the message to a contact. Can only be set to true if the message is sent to a contact and .meta.extraInformation.useCase is marketing.
enableLinkTracking
boolean
If set to true, UTM parameters will be appended to the links in the message. For SMS channels, the shortLinks property must also be included in the request to enable link tracking.
ignoreQuietHours
boolean
If set to true, quiet hours settings will be ignored and the message will be sent as soon as possible.
ignoreGlobalHoldout
boolean
Do not check if the recipient is part of global holdout. To be used to send transactional messages.
tags
array of string
Tags to associate with the message. Tags are converted to lower case and tags that do not exist are automatically created. You can view your created tags in the UI. You can specify up to 10 tags per message.
shortLinks
object
SMS link shortening options. Must be included in the request for SMS channels when enableLinkTracking is set to true. When using templates, please refer to the template level shortLinks instead.
Onderliggende parameters tonen
shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
scheduledFor
string
Scheduled time to send message at. Must be formated as RFC3339 timestamp. When set, the message status will be scheduled until it's sent. Messages scheduled for a time in the past or within 10 minutes of the request may be sent immediately. Messages scheduled farther than 35 days will be rejected.
validity
integer
Validity determines for how many seconds a message is valid. If none is provided, the channel message type will be used to determine it. A promotional, conversational or transactional channel message is valid for 36 hours (129600 seconds). A message sent from a 2FA channel is valid for 10 minutes (600 seconds).
Antwoord-payload
body
object
Onderliggende attributen tonen
body.text
object
verplicht
Onderliggende attributen tonen
body.text.actions
array of object
Onderliggende attributen tonen
body.text.actions.link
object
verplicht
Onderliggende attributen tonen
body.text.actions.link.metadata
object
Onderliggende attributen tonen
body.text.actions.link.metadata.description
object
Onderliggende attributen tonen
body.text.actions.link.metadata.description.label
string
verplicht
body.text.actions.link.text
string
verplicht
body.text.actions.link.url
string
verplicht
body.text.actions.type
string
verplicht
Possible values: link
body.text.attachments
array of object
Onderliggende attributen tonen
body.text.attachments.content
string
body.text.attachments.contentId
string
body.text.attachments.contentType
string
body.text.attachments.filename
string
verplicht
body.text.attachments.inline
boolean
body.text.attachments.mediaUrl
string
verplicht
body.text.metadata
object
Onderliggende attributen tonen
body.text.metadata.apple
object
Onderliggende attributen tonen
body.text.metadata.apple.appClipPreview
boolean
body.text.metadata.apple.appClipRegion
string
body.text.metadata.apple.summaryText
string
body.text.metadata.headers
object
body.text.metadata.line
object
Onderliggende attributen tonen
body.text.metadata.line.emoji
object
Onderliggende attributen tonen
body.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
body.text.metadata.line.emoji.items.emojiId
string
verplicht
body.text.metadata.line.emoji.items.index
integer
verplicht
body.text.metadata.line.emoji.items.length
integer
body.text.metadata.line.emoji.items.productId
string
verplicht
body.text.metadata.paymentDetails
object
Onderliggende attributen tonen
body.text.metadata.paymentDetails.amount
string
verplicht
body.text.metadata.paymentDetails.currency
string
verplicht
body.text.metadata.paymentDetails.sessionIdentifier
string
body.text.metadata.paymentDetails.state
string
verplicht
body.text.metadata.subject
string
body.text.metadata.telegram
object
Onderliggende attributen tonen
body.text.metadata.telegram.parseMode
string
body.text.metadata.whatsapp
object
Onderliggende attributen tonen
body.text.metadata.whatsapp.callPermissionExpiration
string
body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
body.text.metadata.whatsapp.previewUrl
boolean
verplicht
body.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
body.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
body.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
body.text.metadata.whatsapp.sharedContacts.vcard
string
body.text.text
string
verplicht
body.type
string
verplicht
Possible values: text
bodyId
string
bodyStorage
object
Onderliggende attributen tonen
bodyStorage.type
string
verplicht
Possible values: s3
bodyStorage.s3
object
verplicht
Onderliggende attributen tonen
bodyStorage.s3.bucketArn
string
verplicht
bodyStorage.s3.encryptionKey
string
verplicht
bodyStorage.s3.key
string
verplicht
channelId
string
verplicht
chargeableUnits
integer
context
object
Onderliggende attributen tonen
context.id
string
context.tagIds
array of string
context.type
string
createdAt
string
verplicht
details
string
This field is used to store additional information related to the message status.
direction
string
Possible values: incoming, outgoing
failure
object
Onderliggende attributen tonen
failure.code
integer
omni channel interpretation of the failure to categorise the nature of message error
failure.description
string
human readable description of the error
failure.source
object
Onderliggende attributen tonen
failure.source.code
string
numerical, text or alphanumeric code that indicates the error or issue while delivering the message in the last step
failure.source.name
string
Possible values: pre-processing, accounting, contact, touchpoint, sms-messagebird, sms-twilio, email-messagebird, whatsapp, facebook, instagram, line, telegram, apple-business-chat, viber, chat, google-business-messages, voice, smtp-messagebird, rcs-google, service
id
string
verplicht
ignorePersistedEventhooks
boolean
lastStatusAt
string
verplicht
meta
object
Onderliggende attributen tonen
meta.campaign
object
Onderliggende attributen tonen
meta.campaign.id
string
meta.campaign.name
string
meta.campaignId
string
meta.chargeOnceDelivered
boolean
meta.email
object
Onderliggende attributen tonen
meta.email.from
object
Onderliggende attributen tonen
meta.email.from.displayName
string
meta.email.from.username
string
meta.email.headers
object
meta.email.subject
string
meta.extraInformation
object
meta.flow
object
Onderliggende attributen tonen
meta.flow.id
string
meta.flow.name
string
meta.flow.runId
string
meta.flow.scheduleExecutionId
string
meta.flow.stepId
string
meta.formResponse
object
Onderliggende attributen tonen
meta.formResponse.id
string
verplicht
meta.formResponse.jsonResponse
string
verplicht
meta.formResponse.requestIdentifier
string
verplicht
meta.formResponse.selections
array of object
Onderliggende attributen tonen
meta.formResponse.selections.items
array of object
Onderliggende attributen tonen
meta.formResponse.selections.items.identifier
string
verplicht
meta.formResponse.selections.items.title
string
verplicht
meta.formResponse.selections.items.type
string
verplicht
meta.formResponse.selections.items.value
string
verplicht
meta.formResponse.selections.pageIdentifier
string
verplicht
meta.formResponse.selections.subtitle
string
verplicht
meta.formResponse.selections.title
string
verplicht
meta.formResponse.sessionIdentifier
string
verplicht
meta.formResponse.template
string
verplicht
meta.formResponse.version
string
verplicht
meta.ignoreGlobalHoldout
boolean
meta.ignoreQuietHours
boolean
meta.journey
object
Onderliggende attributen tonen
meta.journey.id
string
meta.journey.name
string
meta.journey.runId
string
meta.journey.scheduleExecutionId
string
meta.journey.stepId
string
meta.longToShortLinks
object
meta.metaThreadId
string
meta.navigatorId
string
meta.navigatorMessageId
string
meta.order
object
The order object contains information about the purchase order associated with the message.
Onderliggende attributen tonen
meta.order.products
array of object
Onderliggende attributen tonen
meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.order.products.externalProductId
string
verplicht
The platform-specific product ID.
meta.order.products.price
object
verplicht
Onderliggende attributen tonen
meta.order.products.price.amount
integer
verplicht
meta.order.products.price.currencyCode
string
verplicht
meta.order.products.price.exponent
integer
verplicht
meta.order.products.quantity
integer
verplicht
The number of items purchased.
meta.pushNotifications
object
Onderliggende attributen tonen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
meta.referral
object
Onderliggende attributen tonen
meta.referral.group
string
meta.referral.metadata
object
Onderliggende attributen tonen
meta.referral.metadata.caption
string
meta.referral.metadata.mediaType
string
meta.referral.metadata.mediaUrl
string
meta.referral.metadata.sourceId
string
verplicht
meta.referral.metadata.sourceUrl
string
meta.referral.metadata.timestamp
string
meta.referral.metadata.trackingId
string
meta.referral.metadata.username
string
meta.referral.source
string
verplicht
meta.referral.text
string
meta.referral.title
string
meta.referredProduct
object
Referred product in an incoming message (e.g. a product shared in a WhatsApp catalog message).
Onderliggende attributen tonen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
verplicht
The platform-specific product ID.
meta.renderedContentBlocks
array of string
meta.shortToLongLinks
object
meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
meta.sms
object
Onderliggende attributen tonen
meta.sms.gatewayId
integer
meta.sms.registeredDelivery
string
Possible values: final, intermediate, all, noDlr
meta.sms.smartEncoding
boolean
When enabled, attempts to transliterate Unicode characters to GSM-7 equivalents. If the resulting text is fully GSM-7 compatible, fewer message segments may be required. The original message body is preserved; transliteration is only applied when sending.
meta.sms.smpp
object
Onderliggende attributen tonen
meta.sms.smpp.segments
array of object
Onderliggende attributen tonen
meta.sms.smpp.segments.id
string
verplicht
meta.sms.smpp.segments.registeredDelivery
string
verplicht
Possible values: final, intermediate, all, noDlr
meta.sms.smpp.userId
string
verplicht
meta.sms.validity
string
meta.useFallback
boolean
parts
array of object
Onderliggende attributen tonen
parts.id
string
parts.order
integer
parts.platformReferenceId
string
parts.platformStatusAt
string
parts.rawBody
string
parts.reason
string
parts.status
string
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
parts.statusAt
string
platformId
string
platformReferenceId
string
previousMessages
array of object
Onderliggende attributen tonen
previousMessages.id
string
verplicht
previousMessages.useCaseType
string
verplicht
Possible values: unspecified, marketing, otp, transactional, conversation, test
reason
string
receiver
object
verplicht
Onderliggende attributen tonen
receiver.connector
object
Onderliggende attributen tonen
receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
receiver.connector.annotations.name
string
receiver.connector.id
string
verplicht
receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
receiver.connector.types
array of string
receiver.contacts
array of object
Onderliggende attributen tonen
receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
receiver.contacts.contactAnnotation.name
string
receiver.contacts.countryCode
string
receiver.contacts.id
string
The ID of the contact.
receiver.contacts.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
receiver.contacts.identifierValue
string
The identifier value for finding the contact.
receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
receiver.contacts.receiverExpression
string
receiver.contacts.receiverValue
string
receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
receiver.device
object
Onderliggende attributen tonen
receiver.device.gateway
string
verplicht
Possible values: firebase, apns, web
receiver.device.id
string
verplicht
receiver.device.identifierValue
string
verplicht
receiver.inbox
object
Onderliggende attributen tonen
receiver.inbox.emailRecipientType
string
receiver.inbox.id
string
verplicht
receiver.inbox.identifierKey
string
verplicht
receiver.inbox.identifierValue
string
verplicht
receiver.inbox.type
string
verplicht
Possible values: user, group
receiver.userContacts
array of object
Onderliggende attributen tonen
receiver.userContacts.id
string
verplicht
receiver.userContacts.identifierKey
string
verplicht
receiver.userContacts.identifierValue
string
verplicht
receiver.userContacts.type
string
reference
string
A reference to the message. This can be used to identify the message in the channel.
replyTo
object
Onderliggende attributen tonen
replyTo.id
string
The ID of the message that is being replied to.
replyTo.order
integer
The order of the message part in the conversation.
replyTo.platformReference
string
replyTo.type
string
Possible values: message, click
schedule
object
Onderliggende attributen tonen
schedule.reason
string
verplicht
schedule.scheduledAt
string
verplicht
scheduledFor
string
Scheduled message send time (RFC3339). Messages scheduled within 10 minutes may be sent immediately; messages scheduled more than 35 days out will be rejected.
sendAt
string
sender
object
verplicht
Onderliggende attributen tonen
sender.connector
object
Onderliggende attributen tonen
sender.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
sender.connector.annotations.name
string
sender.connector.id
string
verplicht
sender.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
sender.connector.types
array of string
sender.contact
object
Onderliggende attributen tonen
sender.contact.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
sender.contact.contactAnnotation.name
string
sender.contact.countryCode
string
sender.contact.id
string
The ID of the contact.
sender.contact.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
sender.contact.identifierValue
string
The identifier value for finding the contact.
sender.contact.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
sender.contact.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
sender.contact.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
sender.contact.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
sender.contact.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
sender.contact.receiverExpression
string
sender.contact.receiverValue
string
sender.contact.type
string
The type of the receiver (e.g. to, cc, bcc for email).
sender.inbox
object
Onderliggende attributen tonen
sender.inbox.emailRecipientType
string
sender.inbox.id
string
verplicht
sender.inbox.identifierKey
string
verplicht
sender.inbox.identifierValue
string
verplicht
sender.inbox.type
string
verplicht
Possible values: user, group
sender.userContact
object
Onderliggende attributen tonen
sender.userContact.id
string
verplicht
sender.userContact.identifierKey
string
verplicht
sender.userContact.identifierValue
string
verplicht
sender.userContact.type
string
shortLinks
object
Onderliggende attributen tonen
shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
status
string
verplicht
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
tagIds
array of string
tags
array of string
Tags to associate with the message. Tags are converted to lower case and automatically created if they don't exist. Up to 10 tags per message.
template
object
Onderliggende attributen tonen
template.attachments
array of object
Onderliggende attributen tonen
template.attachments.content
string
template.attachments.contentType
string
template.attachments.filename
string
verplicht
template.attachments.inline
boolean
verplicht
template.attachments.mediaUrl
string
verplicht
template.deployment
object
template.locale
string
verplicht
template.name
string
The platform name of the template.
template.parameters
array of object
Onderliggende attributen tonen
template.parameters.key
string
verplicht
template.parameters.sourceUrl
object
Onderliggende attributen tonen
template.parameters.sourceUrl.fullyReplaced
boolean
verplicht
template.parameters.sourceUrl.value
string
verplicht
template.parameters.type
string
verplicht
Possible values: string, timeslotList, productSections, productList, number, boolean, sectionList, shippingMethodList, lineItemList, whatsappProductSections, whatsappProductItems, shortLink, object, carouselCards, appleFormPageItems
template.parameters.value
object or array or string or number or boolean
verplicht
template.projectId
string
verplicht
The ID of the project from Studio.
template.settings
object
Onderliggende attributen tonen
template.settings.disallowMmLite
boolean
template.shortLinks
object
Onderliggende attributen tonen
template.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
template.shortLinks.enabled
boolean
verplicht
Enables link shortening for SMS messages.
template.templateBody
object
Onderliggende attributen tonen
template.templateBody.text
object
verplicht
Onderliggende attributen tonen
template.templateBody.text.actions
array of object
Onderliggende attributen tonen
template.templateBody.text.actions.link
object
verplicht
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata
object
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata.description
object
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata.description.label
string
verplicht
template.templateBody.text.actions.link.text
string
verplicht
template.templateBody.text.actions.link.url
string
verplicht
template.templateBody.text.actions.type
string
verplicht
Possible values: link
template.templateBody.text.attachments
array of object
Onderliggende attributen tonen
template.templateBody.text.attachments.content
string
template.templateBody.text.attachments.contentId
string
template.templateBody.text.attachments.contentType
string
template.templateBody.text.attachments.filename
string
verplicht
template.templateBody.text.attachments.inline
boolean
template.templateBody.text.attachments.mediaUrl
string
verplicht
template.templateBody.text.metadata
object
Onderliggende attributen tonen
template.templateBody.text.metadata.apple
object
Onderliggende attributen tonen
template.templateBody.text.metadata.apple.appClipPreview
boolean
template.templateBody.text.metadata.apple.appClipRegion
string
template.templateBody.text.metadata.apple.summaryText
string
template.templateBody.text.metadata.headers
object
template.templateBody.text.metadata.line
object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji
object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji.items.emojiId
string
verplicht
template.templateBody.text.metadata.line.emoji.items.index
integer
verplicht
template.templateBody.text.metadata.line.emoji.items.length
integer
template.templateBody.text.metadata.line.emoji.items.productId
string
verplicht
template.templateBody.text.metadata.paymentDetails
object
Onderliggende attributen tonen
template.templateBody.text.metadata.paymentDetails.amount
string
verplicht
template.templateBody.text.metadata.paymentDetails.currency
string
verplicht
template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
template.templateBody.text.metadata.paymentDetails.state
string
verplicht
template.templateBody.text.metadata.subject
string
template.templateBody.text.metadata.telegram
object
Onderliggende attributen tonen
template.templateBody.text.metadata.telegram.parseMode
string
template.templateBody.text.metadata.whatsapp
object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.callPermissionExpiration
string
template.templateBody.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
template.templateBody.text.metadata.whatsapp.previewUrl
boolean
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
template.templateBody.text.text
string
verplicht
template.templateBody.type
string
verplicht
Possible values: text
template.utmParameters
array of object
Onderliggende attributen tonen
template.utmParameters.key
string
verplicht
template.utmParameters.value
string
verplicht
template.variables
object
template.version
string
verplicht
The version of the template.
updatedAt
string
verplicht
Codevoorbeeld
curl -X POST 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/messages' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'
When sending outbound messages as well as setting the receiver information you must set the message body field in all cases except for sending a message template when you must only set the templatefield.
Multiple recipient messages are only possible through the Email platform. For other platforms, a message with multiple reciever entries will be rejected.

Body

Codevoorbeeld
{
 "receiver": {
   "contacts": [
     {
       "identifierValue": "+31612345678"
     }
   ]
 },
 "body": {...},
}

Template

Codevoorbeeld
{
 "receiver": {
   "contacts": [
     {
       "identifierValue": "+31612345678"
     }
   ]
 },
 "template": {...},
}

Uploading media

When sending messages that contain media links these must be publicly accessible. Otherwise you can upload media by creating requesting a pre-signed media URL. Firstly make a POST request to the following endpoint with the content type of the media you will be uploading set in the request body.
There are two methods for generating a presigned URL: one is channel-independent, allowing it to be used across any channel, while the other restricts usage to a specified channel ID.
POST
/workspaces/{workspaceId}/channel-media/presigned-upload
Create a presigned media upload
Verzoek-payload
contentType
string
verplicht
Antwoord-payload
mediaUrl
string
verplicht
uploadUrl
string
verplicht
uploadMethod
string
verplicht
uploadFormData
object
verplicht
Codevoorbeeld
curl -X POST 'https://api.bird.com/workspaces/{workspaceId}/channel-media/presigned-upload' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Example

Codevoorbeeld
curl -X POST "https://api.bird.com/workspaces/42263973-4f1c-40db-bf0e-cea7e4bfa1a2/channel-media/presigned-upload" \
-H "Content-Type: application/json" \
-H "Authorization: AccessKey abcd" \
-d '{
"contentType": "image/jpeg"
}'
Codevoorbeeld
"image/gif", 
"image/jpeg", 
"image/png",  
"image/webp", 
"image/svg+xml",
POST
/workspaces/{workspaceId}/channels/{channelId}/presigned-upload
Create a presigned media upload
Verzoek-payload
contentType
string
verplicht
Antwoord-payload
mediaUrl
string
verplicht
uploadUrl
string
verplicht
uploadMethod
string
verplicht
uploadFormData
object
verplicht
Codevoorbeeld
curl -X POST 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/presigned-upload' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'
From the response you will get the following details:
mediaUrl: This will be the URL you set in any message bodies where you send the uploaded media
uploadUrl: This is the URL you will need to make a request to to upload your media file
uploadMethod: This is the HTTP method to make an upload i.e. POST
uploadFormData: Set this as the fields in form-data of your POST request along with an additional field called file. This should include your file data. An example using CURL
No need to specify any AccessKey on the below call as all the required data is provided in the form data.

Example

Codevoorbeeld
  curl -L -X POST "https://channels--message-media--151603429280--euw1.s3.eu-west-1.amazonaws.com" \
  -F Content-Type='image/jpeg' \
  -F acl='private' \
  -F bucket='text' \
  -F key='text' \
  -F policy='text' \
  -F x-amz-algorithm='AWS4-HMAC-SHA256' \
  -F x-amz-credential='text' \
  -F x-amz-date='text' \
  -F x-amz-meta-allowed-paths='text' \
  -F x-amz-security-token='text' \
  -F x-amz-signature='text' \
  -F file=@image.jpeg
Once you have uploaded the file using the mediaUrl, this should be used as the URL when sending messages with media.

Retrieving messages

Retrieve a list of messages of a channel

GET
/workspaces/{workspaceId}/channels/{channelId}/messages
It retrieves a list of messages from a given channel ID
Queryparameters
limit
integer
Limits the number of results to return.
pageToken
string
The cursor that keeps track of the current position in the results.
reverse
boolean
Reverses the order in which the results are returned.
platform
Filter based on platform name
direction
string
Possible values: incoming, outgoing
id
array
navigatorId
string
messageType
array
status
array
startAt
string
Start date for the query
endAt
string
End date for the query
from
array
sender identifier for the message
to
array
recipient identifier for the message
failureCode
array
failureSourceCode
array
failureSourceName
array
countryCode
array
usedPlatform
Filter based on the platform the message was delivered over (known values are sms, whatsapp, rcs and mms). Matching is case-insensitive. The reserved value none selects messages without a reported delivery platform.
tag
array
Filter based on tag
emailSubject
string
Full text search on email subject
batchId
string
The ID for a batch
Antwoord-payload
startAt
string
endAt
string
nextPageToken
string
The token that can be passed as pageToken in URL to retrieve the next set of results. If missing, no more results to display.
results
array of object
verplicht
Onderliggende attributen tonen
results.body
object
Onderliggende attributen tonen
results.body.text
object
verplicht
Onderliggende attributen tonen
results.body.text.actions
array of object
Onderliggende attributen tonen
results.body.text.actions.link
object
verplicht
Onderliggende attributen tonen
results.body.text.actions.link.metadata
object
Onderliggende attributen tonen
results.body.text.actions.link.metadata.description
object
Onderliggende attributen tonen
results.body.text.actions.link.metadata.description.label
string
verplicht
results.body.text.actions.link.text
string
verplicht
results.body.text.actions.link.url
string
verplicht
results.body.text.actions.type
string
verplicht
Possible values: link
results.body.text.attachments
array of object
Onderliggende attributen tonen
results.body.text.attachments.content
string
results.body.text.attachments.contentId
string
results.body.text.attachments.contentType
string
results.body.text.attachments.filename
string
verplicht
results.body.text.attachments.inline
boolean
results.body.text.attachments.mediaUrl
string
verplicht
results.body.text.metadata
object
Onderliggende attributen tonen
results.body.text.metadata.apple
object
Onderliggende attributen tonen
results.body.text.metadata.apple.appClipPreview
boolean
results.body.text.metadata.apple.appClipRegion
string
results.body.text.metadata.apple.summaryText
string
results.body.text.metadata.headers
object
results.body.text.metadata.line
object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji
object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji.items.emojiId
string
verplicht
results.body.text.metadata.line.emoji.items.index
integer
verplicht
results.body.text.metadata.line.emoji.items.length
integer
results.body.text.metadata.line.emoji.items.productId
string
verplicht
results.body.text.metadata.paymentDetails
object
Onderliggende attributen tonen
results.body.text.metadata.paymentDetails.amount
string
verplicht
results.body.text.metadata.paymentDetails.currency
string
verplicht
results.body.text.metadata.paymentDetails.sessionIdentifier
string
results.body.text.metadata.paymentDetails.state
string
verplicht
results.body.text.metadata.subject
string
results.body.text.metadata.telegram
object
Onderliggende attributen tonen
results.body.text.metadata.telegram.parseMode
string
results.body.text.metadata.whatsapp
object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.callPermissionExpiration
string
results.body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
results.body.text.metadata.whatsapp.previewUrl
boolean
verplicht
results.body.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.vcard
string
results.body.text.text
string
verplicht
results.body.type
string
verplicht
Possible values: text
results.bodyId
string
results.bodyStorage
object
Onderliggende attributen tonen
results.bodyStorage.type
string
verplicht
Possible values: s3
results.bodyStorage.s3
object
verplicht
Onderliggende attributen tonen
results.bodyStorage.s3.bucketArn
string
verplicht
results.bodyStorage.s3.encryptionKey
string
verplicht
results.bodyStorage.s3.key
string
verplicht
results.channelId
string
verplicht
results.chargeableUnits
integer
results.context
object
Onderliggende attributen tonen
results.context.id
string
results.context.tagIds
array of string
results.context.type
string
results.createdAt
string
verplicht
results.details
string
This field is used to store additional information related to the message status.
results.direction
string
Possible values: incoming, outgoing
results.failure
object
Onderliggende attributen tonen
results.failure.code
integer
omni channel interpretation of the failure to categorise the nature of message error
results.failure.description
string
human readable description of the error
results.failure.source
object
Onderliggende attributen tonen
results.failure.source.code
string
numerical, text or alphanumeric code that indicates the error or issue while delivering the message in the last step
results.failure.source.name
string
Possible values: pre-processing, accounting, contact, touchpoint, sms-messagebird, sms-twilio, email-messagebird, whatsapp, facebook, instagram, line, telegram, apple-business-chat, viber, chat, google-business-messages, voice, smtp-messagebird, rcs-google, service
results.id
string
verplicht
results.ignorePersistedEventhooks
boolean
results.lastStatusAt
string
verplicht
results.meta
object
Onderliggende attributen tonen
results.meta.campaign
object
Onderliggende attributen tonen
results.meta.campaign.id
string
results.meta.campaign.name
string
results.meta.campaignId
string
results.meta.chargeOnceDelivered
boolean
results.meta.email
object
Onderliggende attributen tonen
results.meta.email.from
object
Onderliggende attributen tonen
results.meta.email.from.displayName
string
results.meta.email.from.username
string
results.meta.email.headers
object
results.meta.email.subject
string
results.meta.extraInformation
object
results.meta.flow
object
Onderliggende attributen tonen
results.meta.flow.id
string
results.meta.flow.name
string
results.meta.flow.runId
string
results.meta.flow.scheduleExecutionId
string
results.meta.flow.stepId
string
results.meta.formResponse
object
Onderliggende attributen tonen
results.meta.formResponse.id
string
verplicht
results.meta.formResponse.jsonResponse
string
verplicht
results.meta.formResponse.requestIdentifier
string
verplicht
results.meta.formResponse.selections
array of object
Onderliggende attributen tonen
results.meta.formResponse.selections.items
array of object
Onderliggende attributen tonen
results.meta.formResponse.selections.items.identifier
string
verplicht
results.meta.formResponse.selections.items.title
string
verplicht
results.meta.formResponse.selections.items.type
string
verplicht
results.meta.formResponse.selections.items.value
string
verplicht
results.meta.formResponse.selections.pageIdentifier
string
verplicht
results.meta.formResponse.selections.subtitle
string
verplicht
results.meta.formResponse.selections.title
string
verplicht
results.meta.formResponse.sessionIdentifier
string
verplicht
results.meta.formResponse.template
string
verplicht
results.meta.formResponse.version
string
verplicht
results.meta.ignoreGlobalHoldout
boolean
results.meta.ignoreQuietHours
boolean
results.meta.journey
object
Onderliggende attributen tonen
results.meta.journey.id
string
results.meta.journey.name
string
results.meta.journey.runId
string
results.meta.journey.scheduleExecutionId
string
results.meta.journey.stepId
string
results.meta.longToShortLinks
object
results.meta.metaThreadId
string
results.meta.navigatorId
string
results.meta.navigatorMessageId
string
results.meta.order
object
The order object contains information about the purchase order associated with the message.
Onderliggende attributen tonen
results.meta.order.products
array of object
Onderliggende attributen tonen
results.meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
results.meta.order.products.externalProductId
string
verplicht
The platform-specific product ID.
results.meta.order.products.price
object
verplicht
Onderliggende attributen tonen
results.meta.order.products.price.amount
integer
verplicht
results.meta.order.products.price.currencyCode
string
verplicht
results.meta.order.products.price.exponent
integer
verplicht
results.meta.order.products.quantity
integer
verplicht
The number of items purchased.
results.meta.pushNotifications
object
Onderliggende attributen tonen
results.meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
results.meta.referral
object
Onderliggende attributen tonen
results.meta.referral.group
string
results.meta.referral.metadata
object
Onderliggende attributen tonen
results.meta.referral.metadata.caption
string
results.meta.referral.metadata.mediaType
string
results.meta.referral.metadata.mediaUrl
string
results.meta.referral.metadata.sourceId
string
verplicht
results.meta.referral.metadata.sourceUrl
string
results.meta.referral.metadata.timestamp
string
results.meta.referral.metadata.trackingId
string
results.meta.referral.metadata.username
string
results.meta.referral.source
string
verplicht
results.meta.referral.text
string
results.meta.referral.title
string
results.meta.referredProduct
object
Referred product in an incoming message (e.g. a product shared in a WhatsApp catalog message).
Onderliggende attributen tonen
results.meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
results.meta.referredProduct.externalProductId
string
verplicht
The platform-specific product ID.
results.meta.renderedContentBlocks
array of string
results.meta.shortToLongLinks
object
results.meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
results.meta.sms
object
Onderliggende attributen tonen
results.meta.sms.gatewayId
integer
results.meta.sms.registeredDelivery
string
Possible values: final, intermediate, all, noDlr
results.meta.sms.smartEncoding
boolean
When enabled, attempts to transliterate Unicode characters to GSM-7 equivalents. If the resulting text is fully GSM-7 compatible, fewer message segments may be required. The original message body is preserved; transliteration is only applied when sending.
results.meta.sms.smpp
object
Onderliggende attributen tonen
results.meta.sms.smpp.segments
array of object
Onderliggende attributen tonen
results.meta.sms.smpp.segments.id
string
verplicht
results.meta.sms.smpp.segments.registeredDelivery
string
verplicht
Possible values: final, intermediate, all, noDlr
results.meta.sms.smpp.userId
string
verplicht
results.meta.sms.validity
string
results.meta.useFallback
boolean
results.parts
array of object
Onderliggende attributen tonen
results.parts.id
string
results.parts.order
integer
results.parts.platformReferenceId
string
results.parts.platformStatusAt
string
results.parts.rawBody
string
results.parts.reason
string
results.parts.status
string
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
results.parts.statusAt
string
results.platformId
string
results.platformReferenceId
string
results.previousMessages
array of object
Onderliggende attributen tonen
results.previousMessages.id
string
verplicht
results.previousMessages.useCaseType
string
verplicht
Possible values: unspecified, marketing, otp, transactional, conversation, test
results.reason
string
results.receiver
object
verplicht
Onderliggende attributen tonen
results.receiver.connector
object
Onderliggende attributen tonen
results.receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.connector.annotations.name
string
results.receiver.connector.id
string
verplicht
results.receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
results.receiver.connector.types
array of string
results.receiver.contacts
array of object
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation.name
string
results.receiver.contacts.countryCode
string
results.receiver.contacts.id
string
The ID of the contact.
results.receiver.contacts.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
results.receiver.contacts.identifierValue
string
The identifier value for finding the contact.
results.receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
results.receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
results.receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
results.receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
results.receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
results.receiver.contacts.receiverExpression
string
results.receiver.contacts.receiverValue
string
results.receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
results.receiver.device
object
Onderliggende attributen tonen
results.receiver.device.gateway
string
verplicht
Possible values: firebase, apns, web
results.receiver.device.id
string
verplicht
results.receiver.device.identifierValue
string
verplicht
results.receiver.inbox
object
Onderliggende attributen tonen
results.receiver.inbox.emailRecipientType
string
results.receiver.inbox.id
string
verplicht
results.receiver.inbox.identifierKey
string
verplicht
results.receiver.inbox.identifierValue
string
verplicht
results.receiver.inbox.type
string
verplicht
Possible values: user, group
results.receiver.userContacts
array of object
Onderliggende attributen tonen
results.receiver.userContacts.id
string
verplicht
results.receiver.userContacts.identifierKey
string
verplicht
results.receiver.userContacts.identifierValue
string
verplicht
results.receiver.userContacts.type
string
results.reference
string
A reference to the message. This can be used to identify the message in the channel.
results.replyTo
object
Onderliggende attributen tonen
results.replyTo.id
string
The ID of the message that is being replied to.
results.replyTo.order
integer
The order of the message part in the conversation.
results.replyTo.platformReference
string
results.replyTo.type
string
Possible values: message, click
results.schedule
object
Onderliggende attributen tonen
results.schedule.reason
string
verplicht
results.schedule.scheduledAt
string
verplicht
results.scheduledFor
string
Scheduled message send time (RFC3339). Messages scheduled within 10 minutes may be sent immediately; messages scheduled more than 35 days out will be rejected.
results.sendAt
string
results.sender
object
verplicht
Onderliggende attributen tonen
results.sender.connector
object
Onderliggende attributen tonen
results.sender.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.sender.connector.annotations.name
string
results.sender.connector.id
string
verplicht
results.sender.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
results.sender.connector.types
array of string
results.sender.contact
object
Onderliggende attributen tonen
results.sender.contact.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.sender.contact.contactAnnotation.name
string
results.sender.contact.countryCode
string
results.sender.contact.id
string
The ID of the contact.
results.sender.contact.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
results.sender.contact.identifierValue
string
The identifier value for finding the contact.
results.sender.contact.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
results.sender.contact.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
results.sender.contact.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
results.sender.contact.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
results.sender.contact.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
results.sender.contact.receiverExpression
string
results.sender.contact.receiverValue
string
results.sender.contact.type
string
The type of the receiver (e.g. to, cc, bcc for email).
results.sender.inbox
object
Onderliggende attributen tonen
results.sender.inbox.emailRecipientType
string
results.sender.inbox.id
string
verplicht
results.sender.inbox.identifierKey
string
verplicht
results.sender.inbox.identifierValue
string
verplicht
results.sender.inbox.type
string
verplicht
Possible values: user, group
results.sender.userContact
object
Onderliggende attributen tonen
results.sender.userContact.id
string
verplicht
results.sender.userContact.identifierKey
string
verplicht
results.sender.userContact.identifierValue
string
verplicht
results.sender.userContact.type
string
results.shortLinks
object
Onderliggende attributen tonen
results.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
results.status
string
verplicht
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
results.tagIds
array of string
results.tags
array of string
Tags to associate with the message. Tags are converted to lower case and automatically created if they don't exist. Up to 10 tags per message.
results.template
object
Onderliggende attributen tonen
results.template.attachments
array of object
Onderliggende attributen tonen
results.template.attachments.content
string
results.template.attachments.contentType
string
results.template.attachments.filename
string
verplicht
results.template.attachments.inline
boolean
verplicht
results.template.attachments.mediaUrl
string
verplicht
results.template.deployment
object
results.template.locale
string
verplicht
results.template.name
string
The platform name of the template.
results.template.parameters
array of object
Onderliggende attributen tonen
results.template.parameters.key
string
verplicht
results.template.parameters.sourceUrl
object
Onderliggende attributen tonen
results.template.parameters.sourceUrl.fullyReplaced
boolean
verplicht
results.template.parameters.sourceUrl.value
string
verplicht
results.template.parameters.type
string
verplicht
Possible values: string, timeslotList, productSections, productList, number, boolean, sectionList, shippingMethodList, lineItemList, whatsappProductSections, whatsappProductItems, shortLink, object, carouselCards, appleFormPageItems
results.template.parameters.value
object or array or string or number or boolean
verplicht
results.template.projectId
string
verplicht
The ID of the project from Studio.
results.template.settings
object
Onderliggende attributen tonen
results.template.settings.disallowMmLite
boolean
results.template.shortLinks
object
Onderliggende attributen tonen
results.template.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
results.template.shortLinks.enabled
boolean
verplicht
Enables link shortening for SMS messages.
results.template.templateBody
object
Onderliggende attributen tonen
results.template.templateBody.text
object
verplicht
Onderliggende attributen tonen
results.template.templateBody.text.actions
array of object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link
object
verplicht
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata
object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata.description
object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata.description.label
string
verplicht
results.template.templateBody.text.actions.link.text
string
verplicht
results.template.templateBody.text.actions.link.url
string
verplicht
results.template.templateBody.text.actions.type
string
verplicht
Possible values: link
results.template.templateBody.text.attachments
array of object
Onderliggende attributen tonen
results.template.templateBody.text.attachments.content
string
results.template.templateBody.text.attachments.contentId
string
results.template.templateBody.text.attachments.contentType
string
results.template.templateBody.text.attachments.filename
string
verplicht
results.template.templateBody.text.attachments.inline
boolean
results.template.templateBody.text.attachments.mediaUrl
string
verplicht
results.template.templateBody.text.metadata
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.apple
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.apple.appClipPreview
boolean
results.template.templateBody.text.metadata.apple.appClipRegion
string
results.template.templateBody.text.metadata.apple.summaryText
string
results.template.templateBody.text.metadata.headers
object
results.template.templateBody.text.metadata.line
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji.items.emojiId
string
verplicht
results.template.templateBody.text.metadata.line.emoji.items.index
integer
verplicht
results.template.templateBody.text.metadata.line.emoji.items.length
integer
results.template.templateBody.text.metadata.line.emoji.items.productId
string
verplicht
results.template.templateBody.text.metadata.paymentDetails
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.paymentDetails.amount
string
verplicht
results.template.templateBody.text.metadata.paymentDetails.currency
string
verplicht
results.template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
results.template.templateBody.text.metadata.paymentDetails.state
string
verplicht
results.template.templateBody.text.metadata.subject
string
results.template.templateBody.text.metadata.telegram
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.telegram.parseMode
string
results.template.templateBody.text.metadata.whatsapp
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.callPermissionExpiration
string
results.template.templateBody.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
results.template.templateBody.text.metadata.whatsapp.previewUrl
boolean
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
results.template.templateBody.text.text
string
verplicht
results.template.templateBody.type
string
verplicht
Possible values: text
results.template.utmParameters
array of object
Onderliggende attributen tonen
results.template.utmParameters.key
string
verplicht
results.template.utmParameters.value
string
verplicht
results.template.variables
object
results.template.version
string
verplicht
The version of the template.
results.updatedAt
string
verplicht
Codevoorbeeld
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/messages' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Retrieve list of messages of a workspace

GET
/workspaces/{workspaceId}/channels/messages
It retrieves a list of messages from a given workspace ID
Queryparameters
limit
integer
Limits the number of results to return.
channelId
array
The ID for a channel
pageToken
string
The cursor that keeps track of the current position in the results.
reverse
boolean
Reverses the order in which the results are returned.
platform
Filter based on platform name
direction
string
Possible values: incoming, outgoing
id
array
messageType
array
status
array
startAt
string
Start date for the query
endAt
string
End date for the query
from
array
sender identifier for the message
to
array
recipient identifier for the message
failureCode
array
failureSourceCode
array
failureSourceName
array
countryCode
array
usedPlatform
Filter based on the platform the message was delivered over (known values are sms, whatsapp, rcs and mms). Matching is case-insensitive. The reserved value none selects messages without a reported delivery platform.
tag
array
Filter based on tag
emailSubject
string
Full text search on email subject
batchId
string
The ID for a batch
Antwoord-payload
startAt
string
endAt
string
nextPageToken
string
The token that can be passed as pageToken in URL to retrieve the next set of results. If missing, no more results to display.
results
array of object
verplicht
Onderliggende attributen tonen
results.body
object
Onderliggende attributen tonen
results.body.text
object
verplicht
Onderliggende attributen tonen
results.body.text.actions
array of object
Onderliggende attributen tonen
results.body.text.actions.link
object
verplicht
Onderliggende attributen tonen
results.body.text.actions.link.metadata
object
Onderliggende attributen tonen
results.body.text.actions.link.metadata.description
object
Onderliggende attributen tonen
results.body.text.actions.link.metadata.description.label
string
verplicht
results.body.text.actions.link.text
string
verplicht
results.body.text.actions.link.url
string
verplicht
results.body.text.actions.type
string
verplicht
Possible values: link
results.body.text.attachments
array of object
Onderliggende attributen tonen
results.body.text.attachments.content
string
results.body.text.attachments.contentId
string
results.body.text.attachments.contentType
string
results.body.text.attachments.filename
string
verplicht
results.body.text.attachments.inline
boolean
results.body.text.attachments.mediaUrl
string
verplicht
results.body.text.metadata
object
Onderliggende attributen tonen
results.body.text.metadata.apple
object
Onderliggende attributen tonen
results.body.text.metadata.apple.appClipPreview
boolean
results.body.text.metadata.apple.appClipRegion
string
results.body.text.metadata.apple.summaryText
string
results.body.text.metadata.headers
object
results.body.text.metadata.line
object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji
object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
results.body.text.metadata.line.emoji.items.emojiId
string
verplicht
results.body.text.metadata.line.emoji.items.index
integer
verplicht
results.body.text.metadata.line.emoji.items.length
integer
results.body.text.metadata.line.emoji.items.productId
string
verplicht
results.body.text.metadata.paymentDetails
object
Onderliggende attributen tonen
results.body.text.metadata.paymentDetails.amount
string
verplicht
results.body.text.metadata.paymentDetails.currency
string
verplicht
results.body.text.metadata.paymentDetails.sessionIdentifier
string
results.body.text.metadata.paymentDetails.state
string
verplicht
results.body.text.metadata.subject
string
results.body.text.metadata.telegram
object
Onderliggende attributen tonen
results.body.text.metadata.telegram.parseMode
string
results.body.text.metadata.whatsapp
object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.callPermissionExpiration
string
results.body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
results.body.text.metadata.whatsapp.previewUrl
boolean
verplicht
results.body.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
results.body.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
results.body.text.metadata.whatsapp.sharedContacts.vcard
string
results.body.text.text
string
verplicht
results.body.type
string
verplicht
Possible values: text
results.bodyId
string
results.bodyStorage
object
Onderliggende attributen tonen
results.bodyStorage.type
string
verplicht
Possible values: s3
results.bodyStorage.s3
object
verplicht
Onderliggende attributen tonen
results.bodyStorage.s3.bucketArn
string
verplicht
results.bodyStorage.s3.encryptionKey
string
verplicht
results.bodyStorage.s3.key
string
verplicht
results.channelId
string
verplicht
results.chargeableUnits
integer
results.context
object
Onderliggende attributen tonen
results.context.id
string
results.context.tagIds
array of string
results.context.type
string
results.createdAt
string
verplicht
results.details
string
This field is used to store additional information related to the message status.
results.direction
string
Possible values: incoming, outgoing
results.failure
object
Onderliggende attributen tonen
results.failure.code
integer
omni channel interpretation of the failure to categorise the nature of message error
results.failure.description
string
human readable description of the error
results.failure.source
object
Onderliggende attributen tonen
results.failure.source.code
string
numerical, text or alphanumeric code that indicates the error or issue while delivering the message in the last step
results.failure.source.name
string
Possible values: pre-processing, accounting, contact, touchpoint, sms-messagebird, sms-twilio, email-messagebird, whatsapp, facebook, instagram, line, telegram, apple-business-chat, viber, chat, google-business-messages, voice, smtp-messagebird, rcs-google, service
results.id
string
verplicht
results.ignorePersistedEventhooks
boolean
results.lastStatusAt
string
verplicht
results.meta
object
Onderliggende attributen tonen
results.meta.campaign
object
Onderliggende attributen tonen
results.meta.campaign.id
string
results.meta.campaign.name
string
results.meta.campaignId
string
results.meta.chargeOnceDelivered
boolean
results.meta.email
object
Onderliggende attributen tonen
results.meta.email.from
object
Onderliggende attributen tonen
results.meta.email.from.displayName
string
results.meta.email.from.username
string
results.meta.email.headers
object
results.meta.email.subject
string
results.meta.extraInformation
object
results.meta.flow
object
Onderliggende attributen tonen
results.meta.flow.id
string
results.meta.flow.name
string
results.meta.flow.runId
string
results.meta.flow.scheduleExecutionId
string
results.meta.flow.stepId
string
results.meta.formResponse
object
Onderliggende attributen tonen
results.meta.formResponse.id
string
verplicht
results.meta.formResponse.jsonResponse
string
verplicht
results.meta.formResponse.requestIdentifier
string
verplicht
results.meta.formResponse.selections
array of object
Onderliggende attributen tonen
results.meta.formResponse.selections.items
array of object
Onderliggende attributen tonen
results.meta.formResponse.selections.items.identifier
string
verplicht
results.meta.formResponse.selections.items.title
string
verplicht
results.meta.formResponse.selections.items.type
string
verplicht
results.meta.formResponse.selections.items.value
string
verplicht
results.meta.formResponse.selections.pageIdentifier
string
verplicht
results.meta.formResponse.selections.subtitle
string
verplicht
results.meta.formResponse.selections.title
string
verplicht
results.meta.formResponse.sessionIdentifier
string
verplicht
results.meta.formResponse.template
string
verplicht
results.meta.formResponse.version
string
verplicht
results.meta.ignoreGlobalHoldout
boolean
results.meta.ignoreQuietHours
boolean
results.meta.journey
object
Onderliggende attributen tonen
results.meta.journey.id
string
results.meta.journey.name
string
results.meta.journey.runId
string
results.meta.journey.scheduleExecutionId
string
results.meta.journey.stepId
string
results.meta.longToShortLinks
object
results.meta.metaThreadId
string
results.meta.navigatorId
string
results.meta.navigatorMessageId
string
results.meta.order
object
The order object contains information about the purchase order associated with the message.
Onderliggende attributen tonen
results.meta.order.products
array of object
Onderliggende attributen tonen
results.meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
results.meta.order.products.externalProductId
string
verplicht
The platform-specific product ID.
results.meta.order.products.price
object
verplicht
Onderliggende attributen tonen
results.meta.order.products.price.amount
integer
verplicht
results.meta.order.products.price.currencyCode
string
verplicht
results.meta.order.products.price.exponent
integer
verplicht
results.meta.order.products.quantity
integer
verplicht
The number of items purchased.
results.meta.pushNotifications
object
Onderliggende attributen tonen
results.meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
results.meta.referral
object
Onderliggende attributen tonen
results.meta.referral.group
string
results.meta.referral.metadata
object
Onderliggende attributen tonen
results.meta.referral.metadata.caption
string
results.meta.referral.metadata.mediaType
string
results.meta.referral.metadata.mediaUrl
string
results.meta.referral.metadata.sourceId
string
verplicht
results.meta.referral.metadata.sourceUrl
string
results.meta.referral.metadata.timestamp
string
results.meta.referral.metadata.trackingId
string
results.meta.referral.metadata.username
string
results.meta.referral.source
string
verplicht
results.meta.referral.text
string
results.meta.referral.title
string
results.meta.referredProduct
object
Referred product in an incoming message (e.g. a product shared in a WhatsApp catalog message).
Onderliggende attributen tonen
results.meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
results.meta.referredProduct.externalProductId
string
verplicht
The platform-specific product ID.
results.meta.renderedContentBlocks
array of string
results.meta.shortToLongLinks
object
results.meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
results.meta.sms
object
Onderliggende attributen tonen
results.meta.sms.gatewayId
integer
results.meta.sms.registeredDelivery
string
Possible values: final, intermediate, all, noDlr
results.meta.sms.smartEncoding
boolean
When enabled, attempts to transliterate Unicode characters to GSM-7 equivalents. If the resulting text is fully GSM-7 compatible, fewer message segments may be required. The original message body is preserved; transliteration is only applied when sending.
results.meta.sms.smpp
object
Onderliggende attributen tonen
results.meta.sms.smpp.segments
array of object
Onderliggende attributen tonen
results.meta.sms.smpp.segments.id
string
verplicht
results.meta.sms.smpp.segments.registeredDelivery
string
verplicht
Possible values: final, intermediate, all, noDlr
results.meta.sms.smpp.userId
string
verplicht
results.meta.sms.validity
string
results.meta.useFallback
boolean
results.parts
array of object
Onderliggende attributen tonen
results.parts.id
string
results.parts.order
integer
results.parts.platformReferenceId
string
results.parts.platformStatusAt
string
results.parts.rawBody
string
results.parts.reason
string
results.parts.status
string
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
results.parts.statusAt
string
results.platformId
string
results.platformReferenceId
string
results.previousMessages
array of object
Onderliggende attributen tonen
results.previousMessages.id
string
verplicht
results.previousMessages.useCaseType
string
verplicht
Possible values: unspecified, marketing, otp, transactional, conversation, test
results.reason
string
results.receiver
object
verplicht
Onderliggende attributen tonen
results.receiver.connector
object
Onderliggende attributen tonen
results.receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.connector.annotations.name
string
results.receiver.connector.id
string
verplicht
results.receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
results.receiver.connector.types
array of string
results.receiver.contacts
array of object
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation.name
string
results.receiver.contacts.countryCode
string
results.receiver.contacts.id
string
The ID of the contact.
results.receiver.contacts.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
results.receiver.contacts.identifierValue
string
The identifier value for finding the contact.
results.receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
results.receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
results.receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
results.receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
results.receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
results.receiver.contacts.receiverExpression
string
results.receiver.contacts.receiverValue
string
results.receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
results.receiver.device
object
Onderliggende attributen tonen
results.receiver.device.gateway
string
verplicht
Possible values: firebase, apns, web
results.receiver.device.id
string
verplicht
results.receiver.device.identifierValue
string
verplicht
results.receiver.inbox
object
Onderliggende attributen tonen
results.receiver.inbox.emailRecipientType
string
results.receiver.inbox.id
string
verplicht
results.receiver.inbox.identifierKey
string
verplicht
results.receiver.inbox.identifierValue
string
verplicht
results.receiver.inbox.type
string
verplicht
Possible values: user, group
results.receiver.userContacts
array of object
Onderliggende attributen tonen
results.receiver.userContacts.id
string
verplicht
results.receiver.userContacts.identifierKey
string
verplicht
results.receiver.userContacts.identifierValue
string
verplicht
results.receiver.userContacts.type
string
results.reference
string
A reference to the message. This can be used to identify the message in the channel.
results.replyTo
object
Onderliggende attributen tonen
results.replyTo.id
string
The ID of the message that is being replied to.
results.replyTo.order
integer
The order of the message part in the conversation.
results.replyTo.platformReference
string
results.replyTo.type
string
Possible values: message, click
results.schedule
object
Onderliggende attributen tonen
results.schedule.reason
string
verplicht
results.schedule.scheduledAt
string
verplicht
results.scheduledFor
string
Scheduled message send time (RFC3339). Messages scheduled within 10 minutes may be sent immediately; messages scheduled more than 35 days out will be rejected.
results.sendAt
string
results.sender
object
verplicht
Onderliggende attributen tonen
results.sender.connector
object
Onderliggende attributen tonen
results.sender.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.sender.connector.annotations.name
string
results.sender.connector.id
string
verplicht
results.sender.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
results.sender.connector.types
array of string
results.sender.contact
object
Onderliggende attributen tonen
results.sender.contact.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.sender.contact.contactAnnotation.name
string
results.sender.contact.countryCode
string
results.sender.contact.id
string
The ID of the contact.
results.sender.contact.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
results.sender.contact.identifierValue
string
The identifier value for finding the contact.
results.sender.contact.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
results.sender.contact.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
results.sender.contact.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
results.sender.contact.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
results.sender.contact.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
results.sender.contact.receiverExpression
string
results.sender.contact.receiverValue
string
results.sender.contact.type
string
The type of the receiver (e.g. to, cc, bcc for email).
results.sender.inbox
object
Onderliggende attributen tonen
results.sender.inbox.emailRecipientType
string
results.sender.inbox.id
string
verplicht
results.sender.inbox.identifierKey
string
verplicht
results.sender.inbox.identifierValue
string
verplicht
results.sender.inbox.type
string
verplicht
Possible values: user, group
results.sender.userContact
object
Onderliggende attributen tonen
results.sender.userContact.id
string
verplicht
results.sender.userContact.identifierKey
string
verplicht
results.sender.userContact.identifierValue
string
verplicht
results.sender.userContact.type
string
results.shortLinks
object
Onderliggende attributen tonen
results.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
results.status
string
verplicht
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
results.tagIds
array of string
results.tags
array of string
Tags to associate with the message. Tags are converted to lower case and automatically created if they don't exist. Up to 10 tags per message.
results.template
object
Onderliggende attributen tonen
results.template.attachments
array of object
Onderliggende attributen tonen
results.template.attachments.content
string
results.template.attachments.contentType
string
results.template.attachments.filename
string
verplicht
results.template.attachments.inline
boolean
verplicht
results.template.attachments.mediaUrl
string
verplicht
results.template.deployment
object
results.template.locale
string
verplicht
results.template.name
string
The platform name of the template.
results.template.parameters
array of object
Onderliggende attributen tonen
results.template.parameters.key
string
verplicht
results.template.parameters.sourceUrl
object
Onderliggende attributen tonen
results.template.parameters.sourceUrl.fullyReplaced
boolean
verplicht
results.template.parameters.sourceUrl.value
string
verplicht
results.template.parameters.type
string
verplicht
Possible values: string, timeslotList, productSections, productList, number, boolean, sectionList, shippingMethodList, lineItemList, whatsappProductSections, whatsappProductItems, shortLink, object, carouselCards, appleFormPageItems
results.template.parameters.value
object or array or string or number or boolean
verplicht
results.template.projectId
string
verplicht
The ID of the project from Studio.
results.template.settings
object
Onderliggende attributen tonen
results.template.settings.disallowMmLite
boolean
results.template.shortLinks
object
Onderliggende attributen tonen
results.template.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
results.template.shortLinks.enabled
boolean
verplicht
Enables link shortening for SMS messages.
results.template.templateBody
object
Onderliggende attributen tonen
results.template.templateBody.text
object
verplicht
Onderliggende attributen tonen
results.template.templateBody.text.actions
array of object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link
object
verplicht
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata
object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata.description
object
Onderliggende attributen tonen
results.template.templateBody.text.actions.link.metadata.description.label
string
verplicht
results.template.templateBody.text.actions.link.text
string
verplicht
results.template.templateBody.text.actions.link.url
string
verplicht
results.template.templateBody.text.actions.type
string
verplicht
Possible values: link
results.template.templateBody.text.attachments
array of object
Onderliggende attributen tonen
results.template.templateBody.text.attachments.content
string
results.template.templateBody.text.attachments.contentId
string
results.template.templateBody.text.attachments.contentType
string
results.template.templateBody.text.attachments.filename
string
verplicht
results.template.templateBody.text.attachments.inline
boolean
results.template.templateBody.text.attachments.mediaUrl
string
verplicht
results.template.templateBody.text.metadata
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.apple
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.apple.appClipPreview
boolean
results.template.templateBody.text.metadata.apple.appClipRegion
string
results.template.templateBody.text.metadata.apple.summaryText
string
results.template.templateBody.text.metadata.headers
object
results.template.templateBody.text.metadata.line
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.line.emoji.items.emojiId
string
verplicht
results.template.templateBody.text.metadata.line.emoji.items.index
integer
verplicht
results.template.templateBody.text.metadata.line.emoji.items.length
integer
results.template.templateBody.text.metadata.line.emoji.items.productId
string
verplicht
results.template.templateBody.text.metadata.paymentDetails
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.paymentDetails.amount
string
verplicht
results.template.templateBody.text.metadata.paymentDetails.currency
string
verplicht
results.template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
results.template.templateBody.text.metadata.paymentDetails.state
string
verplicht
results.template.templateBody.text.metadata.subject
string
results.template.templateBody.text.metadata.telegram
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.telegram.parseMode
string
results.template.templateBody.text.metadata.whatsapp
object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.callPermissionExpiration
string
results.template.templateBody.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
results.template.templateBody.text.metadata.whatsapp.previewUrl
boolean
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
results.template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
results.template.templateBody.text.text
string
verplicht
results.template.templateBody.type
string
verplicht
Possible values: text
results.template.utmParameters
array of object
Onderliggende attributen tonen
results.template.utmParameters.key
string
verplicht
results.template.utmParameters.value
string
verplicht
results.template.variables
object
results.template.version
string
verplicht
The version of the template.
results.updatedAt
string
verplicht
Codevoorbeeld
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/messages' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Retrieve a single message

GET
/workspaces/{workspaceId}/channels/{channelId}/messages/{messageId}
Get a channel message
Antwoord-payload
body
object
Onderliggende attributen tonen
body.text
object
verplicht
Onderliggende attributen tonen
body.text.actions
array of object
Onderliggende attributen tonen
body.text.actions.link
object
verplicht
Onderliggende attributen tonen
body.text.actions.link.metadata
object
Onderliggende attributen tonen
body.text.actions.link.metadata.description
object
Onderliggende attributen tonen
body.text.actions.link.metadata.description.label
string
verplicht
body.text.actions.link.text
string
verplicht
body.text.actions.link.url
string
verplicht
body.text.actions.type
string
verplicht
Possible values: link
body.text.attachments
array of object
Onderliggende attributen tonen
body.text.attachments.content
string
body.text.attachments.contentId
string
body.text.attachments.contentType
string
body.text.attachments.filename
string
verplicht
body.text.attachments.inline
boolean
body.text.attachments.mediaUrl
string
verplicht
body.text.metadata
object
Onderliggende attributen tonen
body.text.metadata.apple
object
Onderliggende attributen tonen
body.text.metadata.apple.appClipPreview
boolean
body.text.metadata.apple.appClipRegion
string
body.text.metadata.apple.summaryText
string
body.text.metadata.headers
object
body.text.metadata.line
object
Onderliggende attributen tonen
body.text.metadata.line.emoji
object
Onderliggende attributen tonen
body.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
body.text.metadata.line.emoji.items.emojiId
string
verplicht
body.text.metadata.line.emoji.items.index
integer
verplicht
body.text.metadata.line.emoji.items.length
integer
body.text.metadata.line.emoji.items.productId
string
verplicht
body.text.metadata.paymentDetails
object
Onderliggende attributen tonen
body.text.metadata.paymentDetails.amount
string
verplicht
body.text.metadata.paymentDetails.currency
string
verplicht
body.text.metadata.paymentDetails.sessionIdentifier
string
body.text.metadata.paymentDetails.state
string
verplicht
body.text.metadata.subject
string
body.text.metadata.telegram
object
Onderliggende attributen tonen
body.text.metadata.telegram.parseMode
string
body.text.metadata.whatsapp
object
Onderliggende attributen tonen
body.text.metadata.whatsapp.callPermissionExpiration
string
body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
body.text.metadata.whatsapp.previewUrl
boolean
verplicht
body.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
body.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
body.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
body.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
body.text.metadata.whatsapp.sharedContacts.vcard
string
body.text.text
string
verplicht
body.type
string
verplicht
Possible values: text
bodyId
string
bodyStorage
object
Onderliggende attributen tonen
bodyStorage.type
string
verplicht
Possible values: s3
bodyStorage.s3
object
verplicht
Onderliggende attributen tonen
bodyStorage.s3.bucketArn
string
verplicht
bodyStorage.s3.encryptionKey
string
verplicht
bodyStorage.s3.key
string
verplicht
channelId
string
verplicht
chargeableUnits
integer
context
object
Onderliggende attributen tonen
context.id
string
context.tagIds
array of string
context.type
string
createdAt
string
verplicht
details
string
This field is used to store additional information related to the message status.
direction
string
Possible values: incoming, outgoing
failure
object
Onderliggende attributen tonen
failure.code
integer
omni channel interpretation of the failure to categorise the nature of message error
failure.description
string
human readable description of the error
failure.source
object
Onderliggende attributen tonen
failure.source.code
string
numerical, text or alphanumeric code that indicates the error or issue while delivering the message in the last step
failure.source.name
string
Possible values: pre-processing, accounting, contact, touchpoint, sms-messagebird, sms-twilio, email-messagebird, whatsapp, facebook, instagram, line, telegram, apple-business-chat, viber, chat, google-business-messages, voice, smtp-messagebird, rcs-google, service
id
string
verplicht
ignorePersistedEventhooks
boolean
lastStatusAt
string
verplicht
meta
object
Onderliggende attributen tonen
meta.campaign
object
Onderliggende attributen tonen
meta.campaign.id
string
meta.campaign.name
string
meta.campaignId
string
meta.chargeOnceDelivered
boolean
meta.email
object
Onderliggende attributen tonen
meta.email.from
object
Onderliggende attributen tonen
meta.email.from.displayName
string
meta.email.from.username
string
meta.email.headers
object
meta.email.subject
string
meta.extraInformation
object
meta.flow
object
Onderliggende attributen tonen
meta.flow.id
string
meta.flow.name
string
meta.flow.runId
string
meta.flow.scheduleExecutionId
string
meta.flow.stepId
string
meta.formResponse
object
Onderliggende attributen tonen
meta.formResponse.id
string
verplicht
meta.formResponse.jsonResponse
string
verplicht
meta.formResponse.requestIdentifier
string
verplicht
meta.formResponse.selections
array of object
Onderliggende attributen tonen
meta.formResponse.selections.items
array of object
Onderliggende attributen tonen
meta.formResponse.selections.items.identifier
string
verplicht
meta.formResponse.selections.items.title
string
verplicht
meta.formResponse.selections.items.type
string
verplicht
meta.formResponse.selections.items.value
string
verplicht
meta.formResponse.selections.pageIdentifier
string
verplicht
meta.formResponse.selections.subtitle
string
verplicht
meta.formResponse.selections.title
string
verplicht
meta.formResponse.sessionIdentifier
string
verplicht
meta.formResponse.template
string
verplicht
meta.formResponse.version
string
verplicht
meta.ignoreGlobalHoldout
boolean
meta.ignoreQuietHours
boolean
meta.journey
object
Onderliggende attributen tonen
meta.journey.id
string
meta.journey.name
string
meta.journey.runId
string
meta.journey.scheduleExecutionId
string
meta.journey.stepId
string
meta.longToShortLinks
object
meta.metaThreadId
string
meta.navigatorId
string
meta.navigatorMessageId
string
meta.order
object
The order object contains information about the purchase order associated with the message.
Onderliggende attributen tonen
meta.order.products
array of object
Onderliggende attributen tonen
meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.order.products.externalProductId
string
verplicht
The platform-specific product ID.
meta.order.products.price
object
verplicht
Onderliggende attributen tonen
meta.order.products.price.amount
integer
verplicht
meta.order.products.price.currencyCode
string
verplicht
meta.order.products.price.exponent
integer
verplicht
meta.order.products.quantity
integer
verplicht
The number of items purchased.
meta.pushNotifications
object
Onderliggende attributen tonen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
meta.referral
object
Onderliggende attributen tonen
meta.referral.group
string
meta.referral.metadata
object
Onderliggende attributen tonen
meta.referral.metadata.caption
string
meta.referral.metadata.mediaType
string
meta.referral.metadata.mediaUrl
string
meta.referral.metadata.sourceId
string
verplicht
meta.referral.metadata.sourceUrl
string
meta.referral.metadata.timestamp
string
meta.referral.metadata.trackingId
string
meta.referral.metadata.username
string
meta.referral.source
string
verplicht
meta.referral.text
string
meta.referral.title
string
meta.referredProduct
object
Referred product in an incoming message (e.g. a product shared in a WhatsApp catalog message).
Onderliggende attributen tonen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
verplicht
The platform-specific product ID.
meta.renderedContentBlocks
array of string
meta.shortToLongLinks
object
meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
meta.sms
object
Onderliggende attributen tonen
meta.sms.gatewayId
integer
meta.sms.registeredDelivery
string
Possible values: final, intermediate, all, noDlr
meta.sms.smartEncoding
boolean
When enabled, attempts to transliterate Unicode characters to GSM-7 equivalents. If the resulting text is fully GSM-7 compatible, fewer message segments may be required. The original message body is preserved; transliteration is only applied when sending.
meta.sms.smpp
object
Onderliggende attributen tonen
meta.sms.smpp.segments
array of object
Onderliggende attributen tonen
meta.sms.smpp.segments.id
string
verplicht
meta.sms.smpp.segments.registeredDelivery
string
verplicht
Possible values: final, intermediate, all, noDlr
meta.sms.smpp.userId
string
verplicht
meta.sms.validity
string
meta.useFallback
boolean
parts
array of object
Onderliggende attributen tonen
parts.id
string
parts.order
integer
parts.platformReferenceId
string
parts.platformStatusAt
string
parts.rawBody
string
parts.reason
string
parts.status
string
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
parts.statusAt
string
platformId
string
platformReferenceId
string
previousMessages
array of object
Onderliggende attributen tonen
previousMessages.id
string
verplicht
previousMessages.useCaseType
string
verplicht
Possible values: unspecified, marketing, otp, transactional, conversation, test
reason
string
receiver
object
verplicht
Onderliggende attributen tonen
receiver.connector
object
Onderliggende attributen tonen
receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
receiver.connector.annotations.name
string
receiver.connector.id
string
verplicht
receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
receiver.connector.types
array of string
receiver.contacts
array of object
Onderliggende attributen tonen
receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
receiver.contacts.contactAnnotation.name
string
receiver.contacts.countryCode
string
receiver.contacts.id
string
The ID of the contact.
receiver.contacts.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
receiver.contacts.identifierValue
string
The identifier value for finding the contact.
receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
receiver.contacts.receiverExpression
string
receiver.contacts.receiverValue
string
receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
receiver.device
object
Onderliggende attributen tonen
receiver.device.gateway
string
verplicht
Possible values: firebase, apns, web
receiver.device.id
string
verplicht
receiver.device.identifierValue
string
verplicht
receiver.inbox
object
Onderliggende attributen tonen
receiver.inbox.emailRecipientType
string
receiver.inbox.id
string
verplicht
receiver.inbox.identifierKey
string
verplicht
receiver.inbox.identifierValue
string
verplicht
receiver.inbox.type
string
verplicht
Possible values: user, group
receiver.userContacts
array of object
Onderliggende attributen tonen
receiver.userContacts.id
string
verplicht
receiver.userContacts.identifierKey
string
verplicht
receiver.userContacts.identifierValue
string
verplicht
receiver.userContacts.type
string
reference
string
A reference to the message. This can be used to identify the message in the channel.
replyTo
object
Onderliggende attributen tonen
replyTo.id
string
The ID of the message that is being replied to.
replyTo.order
integer
The order of the message part in the conversation.
replyTo.platformReference
string
replyTo.type
string
Possible values: message, click
schedule
object
Onderliggende attributen tonen
schedule.reason
string
verplicht
schedule.scheduledAt
string
verplicht
scheduledFor
string
Scheduled message send time (RFC3339). Messages scheduled within 10 minutes may be sent immediately; messages scheduled more than 35 days out will be rejected.
sendAt
string
sender
object
verplicht
Onderliggende attributen tonen
sender.connector
object
Onderliggende attributen tonen
sender.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
sender.connector.annotations.name
string
sender.connector.id
string
verplicht
sender.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
sender.connector.types
array of string
sender.contact
object
Onderliggende attributen tonen
sender.contact.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
sender.contact.contactAnnotation.name
string
sender.contact.countryCode
string
sender.contact.id
string
The ID of the contact.
sender.contact.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
sender.contact.identifierValue
string
The identifier value for finding the contact.
sender.contact.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
sender.contact.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
sender.contact.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
sender.contact.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
sender.contact.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
sender.contact.receiverExpression
string
sender.contact.receiverValue
string
sender.contact.type
string
The type of the receiver (e.g. to, cc, bcc for email).
sender.inbox
object
Onderliggende attributen tonen
sender.inbox.emailRecipientType
string
sender.inbox.id
string
verplicht
sender.inbox.identifierKey
string
verplicht
sender.inbox.identifierValue
string
verplicht
sender.inbox.type
string
verplicht
Possible values: user, group
sender.userContact
object
Onderliggende attributen tonen
sender.userContact.id
string
verplicht
sender.userContact.identifierKey
string
verplicht
sender.userContact.identifierValue
string
verplicht
sender.userContact.type
string
shortLinks
object
Onderliggende attributen tonen
shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
status
string
verplicht
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted, scheduled, skipped, rejected
tagIds
array of string
tags
array of string
Tags to associate with the message. Tags are converted to lower case and automatically created if they don't exist. Up to 10 tags per message.
template
object
Onderliggende attributen tonen
template.attachments
array of object
Onderliggende attributen tonen
template.attachments.content
string
template.attachments.contentType
string
template.attachments.filename
string
verplicht
template.attachments.inline
boolean
verplicht
template.attachments.mediaUrl
string
verplicht
template.deployment
object
template.locale
string
verplicht
template.name
string
The platform name of the template.
template.parameters
array of object
Onderliggende attributen tonen
template.parameters.key
string
verplicht
template.parameters.sourceUrl
object
Onderliggende attributen tonen
template.parameters.sourceUrl.fullyReplaced
boolean
verplicht
template.parameters.sourceUrl.value
string
verplicht
template.parameters.type
string
verplicht
Possible values: string, timeslotList, productSections, productList, number, boolean, sectionList, shippingMethodList, lineItemList, whatsappProductSections, whatsappProductItems, shortLink, object, carouselCards, appleFormPageItems
template.parameters.value
object or array or string or number or boolean
verplicht
template.projectId
string
verplicht
The ID of the project from Studio.
template.settings
object
Onderliggende attributen tonen
template.settings.disallowMmLite
boolean
template.shortLinks
object
Onderliggende attributen tonen
template.shortLinks.domain
string
verplicht
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
template.shortLinks.enabled
boolean
verplicht
Enables link shortening for SMS messages.
template.templateBody
object
Onderliggende attributen tonen
template.templateBody.text
object
verplicht
Onderliggende attributen tonen
template.templateBody.text.actions
array of object
Onderliggende attributen tonen
template.templateBody.text.actions.link
object
verplicht
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata
object
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata.description
object
Onderliggende attributen tonen
template.templateBody.text.actions.link.metadata.description.label
string
verplicht
template.templateBody.text.actions.link.text
string
verplicht
template.templateBody.text.actions.link.url
string
verplicht
template.templateBody.text.actions.type
string
verplicht
Possible values: link
template.templateBody.text.attachments
array of object
Onderliggende attributen tonen
template.templateBody.text.attachments.content
string
template.templateBody.text.attachments.contentId
string
template.templateBody.text.attachments.contentType
string
template.templateBody.text.attachments.filename
string
verplicht
template.templateBody.text.attachments.inline
boolean
template.templateBody.text.attachments.mediaUrl
string
verplicht
template.templateBody.text.metadata
object
Onderliggende attributen tonen
template.templateBody.text.metadata.apple
object
Onderliggende attributen tonen
template.templateBody.text.metadata.apple.appClipPreview
boolean
template.templateBody.text.metadata.apple.appClipRegion
string
template.templateBody.text.metadata.apple.summaryText
string
template.templateBody.text.metadata.headers
object
template.templateBody.text.metadata.line
object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji
object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji.items
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.line.emoji.items.emojiId
string
verplicht
template.templateBody.text.metadata.line.emoji.items.index
integer
verplicht
template.templateBody.text.metadata.line.emoji.items.length
integer
template.templateBody.text.metadata.line.emoji.items.productId
string
verplicht
template.templateBody.text.metadata.paymentDetails
object
Onderliggende attributen tonen
template.templateBody.text.metadata.paymentDetails.amount
string
verplicht
template.templateBody.text.metadata.paymentDetails.currency
string
verplicht
template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
template.templateBody.text.metadata.paymentDetails.state
string
verplicht
template.templateBody.text.metadata.subject
string
template.templateBody.text.metadata.telegram
object
Onderliggende attributen tonen
template.templateBody.text.metadata.telegram.parseMode
string
template.templateBody.text.metadata.whatsapp
object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.callPermissionExpiration
string
template.templateBody.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
template.templateBody.text.metadata.whatsapp.previewUrl
boolean
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Onderliggende attributen tonen
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
verplicht
template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
template.templateBody.text.text
string
verplicht
template.templateBody.type
string
verplicht
Possible values: text
template.utmParameters
array of object
Onderliggende attributen tonen
template.utmParameters.key
string
verplicht
template.utmParameters.value
string
verplicht
template.variables
object
template.version
string
verplicht
The version of the template.
updatedAt
string
verplicht
Codevoorbeeld
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/messages/{messageId}' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Retrieve all message interactions on a message

GET
/workspaces/{workspaceId}/channels/{channelId}/messages/{messageId}/interactions
List message interactions
Antwoord-payload
results
array of object
Onderliggende attributen tonen
results.bodyTemplateProjectId
string
results.channelId
string
verplicht
results.context
object
verplicht
Onderliggende attributen tonen
results.context.id
string
results.context.tagIds
array of string
results.context.type
string
results.createdAt
string
verplicht
results.details
string
results.id
string
verplicht
results.isFirstInteraction
boolean
results.isFirstInteractionIncludingBots
boolean
results.journey
object
Onderliggende attributen tonen
results.journey.id
string
results.journey.name
string
results.journey.runId
string
results.journey.scheduleExecutionId
string
results.journey.stepId
string
results.messageCreatedAt
string
results.messageId
string
verplicht
results.messagePartsCount
integer
verplicht
results.messageReference
string
verplicht
results.messageTags
array of string
results.metadata
object
Onderliggende attributen tonen
results.metadata.button
object
Onderliggende attributen tonen
results.metadata.button.payload
string
verplicht
results.metadata.conversion
object
Onderliggende attributen tonen
results.metadata.conversion.method
string
Method of entering the code
Possible values: unknown, manual, auto
results.metadata.conversion.status
string
Status of the conversion
Possible values: converted, canceled, not_converted, incorrect_code, resent, received_after_expiration
results.metadata.conversion.timestamp
string
Timestamp of when the conversion was recorded
results.metadata.conversion.type
string
Type of conversion
Possible values: otp, url, promo_code
results.metadata.extraInformation
object
results.metadata.link
object
Onderliggende attributen tonen
results.metadata.link.clickType
string
Possible values: link, button
results.metadata.link.name
string
verplicht
results.metadata.link.url
string
verplicht
results.metadata.prefetched
boolean
results.metadata.reaction
object
Onderliggende attributen tonen
results.metadata.reaction.action
string
verplicht
Possible values: react, unreact
results.metadata.reaction.emoji
string
verplicht
results.metadata.renderedContentBlocks
array of string
results.metadata.subscriptionList
object
Onderliggende attributen tonen
results.metadata.subscriptionList.subscriptionListId
string
verplicht
results.notification
object
Onderliggende attributen tonen
results.notification.template
string
results.notification.url
string
verplicht
results.platformId
string
verplicht
results.platformReferenceId
string
results.receiver
object
verplicht
Onderliggende attributen tonen
results.receiver.connector
object
Onderliggende attributen tonen
results.receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.connector.annotations.name
string
results.receiver.connector.id
string
verplicht
results.receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
results.receiver.connector.types
array of string
results.receiver.contacts
array of object
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Onderliggende attributen tonen
results.receiver.contacts.contactAnnotation.name
string
results.receiver.contacts.countryCode
string
results.receiver.contacts.id
string
The ID of the contact.
results.receiver.contacts.identifierKey
string
The identifier key for finding the contact (e.g. emailaddress, phonenumber). For WhatsApp channels with BSUID support, use whatsappbsuid to send to a contact by their Business-Scoped User ID.
results.receiver.contacts.identifierValue
string
The identifier value for finding the contact.
results.receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Onderliggende attributen tonen
results.receiver.contacts.identifiers.identifierKey
string
verplicht
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
results.receiver.contacts.identifiers.identifierValue
string
verplicht
The identifier value for finding the contact.
results.receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
results.receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
results.receiver.contacts.receiverExpression
string
results.receiver.contacts.receiverValue
string
results.receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
results.receiver.device
object
Onderliggende attributen tonen
results.receiver.device.gateway
string
verplicht
Possible values: firebase, apns, web
results.receiver.device.id
string
verplicht
results.receiver.device.identifierValue
string
verplicht
results.receiver.inbox
object
Onderliggende attributen tonen
results.receiver.inbox.emailRecipientType
string
results.receiver.inbox.id
string
verplicht
results.receiver.inbox.identifierKey
string
verplicht
results.receiver.inbox.identifierValue
string
verplicht
results.receiver.inbox.type
string
verplicht
Possible values: user, group
results.receiver.userContacts
array of object
Onderliggende attributen tonen
results.receiver.userContacts.id
string
verplicht
results.receiver.userContacts.identifierKey
string
verplicht
results.receiver.userContacts.identifierValue
string
verplicht
results.receiver.userContacts.type
string
results.type
string
verplicht
Possible values: invalid, read, opened, clicked, reported-as-spam, unsubscribe-request, delete, reaction, subscribe-request, subscribe-consent, conversion
results.useCaseType
string
Possible values: unspecified, marketing, otp, transactional, conversation, test
Codevoorbeeld
curl -X GET 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/messages/{messageId}/interactions' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'

Retrieving media

Retrieve pre-signed media uploads

For media that you have uploaded to be sent in a channels message you can retrieve this as follows

Example

Codevoorbeeld
curl -L -X GET "https://media.api.bird.com/workspaces/42263973-4f1c-40db-bf0e-cea7e4bfa1a2/media/d30aee15-6ac6-408c-89b6-2906df15ca7b" \
-H "Authorization: AccessKey abcd" \
--output downloadimage.jpeg

Retrieve media from incoming messages

For media sent to your channel you can download this media from the following endpoint
The endpoint is in the message under mediaUrl.
Codevoorbeeld
curl -L -X GET "https://media.api.bird.com/workspaces/{workspaceId}/messages/{messageID}/media/{fileId}" \
-H "Authorization: AccessKey abcd" \
--output downloadimage.jpeg