Sign inGet started

Programmable Messenger

Summary

Facebook Messenger and Instagram are asynchronous messaging channels that let businesses reply to people who message your Facebook Page or Instagram account. Both run on Meta's Messenger Platform and share the same messaging-window rules — including the Human Agent window described below. Everything on this page applies identically to Facebook Messenger and Instagram.

The messaging window

Meta only lets you message a contact within a limited window after their last message to you:
  • Standard window — 24 hours. Normal replies must be sent within 24 hours of the contact's most recent message.
  • Human Agent window — 7 days. A reply sent by a human agent may be delivered up to 7 days after the contact's last message. Meta calls this the HUMAN_AGENT tag.
Bird applies the HUMAN_AGENT tag for you, based on the message's use case — you never pass a Meta tag directly.

Sending via the Channels API

On the Channels API you set the use case with the meta.extraInformation.useCase field. Set it to conversation (or transactional) and Bird delivers the message as a Human Agent message (the 7-day window).
POST
/workspaces/{workspaceId}/channels/{channelId}/messages
Send a message to a channel
Anfrage-Payload
sender
object
Untergeordnete Parameter anzeigen
sender.connector
object
erforderlich
The sender of the message. For email messages, the sender is used to override the default sender username.
Untergeordnete Parameter anzeigen
sender.connector.identifierValue
string
erforderlich
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.
Untergeordnete Parameter anzeigen
sender.connector.annotations.name
string
receiver
object
erforderlich
Untergeordnete Parameter anzeigen
receiver.contacts
array of object
Untergeordnete Parameter anzeigen
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
Untergeordnete Parameter anzeigen
receiver.contacts.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact.
receiver.contacts.identifiers.identifierValue
string
erforderlich
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
erforderlich
Untergeordnete Parameter anzeigen
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
Untergeordnete Parameter anzeigen
template.attachments.mediaUrl
string
erforderlich
The URL of the attachment.
template.attachments.filename
string
erforderlich
The filename of the attachment.
template.attachments.inline
boolean
template.shortLinks
object
SMS link shortening options.
Untergeordnete Parameter anzeigen
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.
Untergeordnete Parameter anzeigen
template.variables.default
string
template.utmParameters
array of object
The list of UTM parameters.
Untergeordnete Parameter anzeigen
template.utmParameters.key
string
erforderlich
The name of the parameter in the query string.
template.utmParameters.value
string
erforderlich
The static value of the parameter. Mutually exclusive with Reference.
template.parameters
array of object
Untergeordnete Parameter anzeigen
template.parameters.type
string
erforderlich
Possible values: string
template.parameters.key
string
erforderlich
template.parameters.value
string
template.settings
object
Untergeordnete Parameter anzeigen
template.settings.disallowMmLite
boolean
This is specific for WhatsApp marketing templates and requires MM Lite to be disabled for the WABAID.
meta
object
Untergeordnete Parameter anzeigen
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
Untergeordnete Parameter anzeigen
meta.referral.source
string
meta.referral.title
string
meta.referral.text
string
meta.referral.group
string
meta.referral.metadata
object
Untergeordnete Parameter anzeigen
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.
Untergeordnete Parameter anzeigen
meta.order.products
array of object
Untergeordnete Parameter anzeigen
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.
Untergeordnete Parameter anzeigen
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.
Untergeordnete Parameter anzeigen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
The platform-specific product ID.
meta.email
object
Untergeordnete Parameter anzeigen
meta.email.subject
string
meta.email.headers
object
meta.email.from
object
Untergeordnete Parameter anzeigen
meta.email.from.username
string
meta.email.from.displayName
string
meta.sms
object
Untergeordnete Parameter anzeigen
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
Untergeordnete Parameter anzeigen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: apns, firebase, web
meta.navigatorId
string
meta.navigatorMessageId
string
meta.flow
object
Untergeordnete Parameter anzeigen
meta.flow.id
string
meta.flow.name
string
meta.flow.stepId
string
meta.flow.runId
string
meta.journey
object
Untergeordnete Parameter anzeigen
meta.journey.id
string
meta.journey.name
string
meta.journey.stepId
string
meta.journey.runId
string
meta.campaign
object
Untergeordnete Parameter anzeigen
meta.campaign.id
string
meta.campaign.name
string
replyTo
object
Untergeordnete Parameter anzeigen
replyTo.id
string
erforderlich
The ID of the message that is being replied to.
replyTo.order
integer
The order of the message in the conversation.
replyTo.type
string
erforderlich
Possible values: message, click, referrals
notification
object
Untergeordnete Parameter anzeigen
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.
Untergeordnete Parameter anzeigen
shortLinks.domain
string
erforderlich
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).
Antwort-Payload
body
object
Untergeordnete Attribute anzeigen
body.text
object
erforderlich
Untergeordnete Attribute anzeigen
body.text.actions
array of object
Untergeordnete Attribute anzeigen
body.text.actions.link
object
erforderlich
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata
object
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata.description
object
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata.description.label
string
erforderlich
body.text.actions.link.text
string
erforderlich
body.text.actions.link.url
string
erforderlich
body.text.actions.type
string
erforderlich
Possible values: link
body.text.attachments
array of object
Untergeordnete Attribute anzeigen
body.text.attachments.content
string
body.text.attachments.contentId
string
body.text.attachments.contentType
string
body.text.attachments.filename
string
erforderlich
body.text.attachments.inline
boolean
body.text.attachments.mediaUrl
string
erforderlich
body.text.metadata
object
Untergeordnete Attribute anzeigen
body.text.metadata.apple
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji
object
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji.items
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji.items.emojiId
string
erforderlich
body.text.metadata.line.emoji.items.index
integer
erforderlich
body.text.metadata.line.emoji.items.length
integer
body.text.metadata.line.emoji.items.productId
string
erforderlich
body.text.metadata.paymentDetails
object
Untergeordnete Attribute anzeigen
body.text.metadata.paymentDetails.amount
string
erforderlich
body.text.metadata.paymentDetails.currency
string
erforderlich
body.text.metadata.paymentDetails.sessionIdentifier
string
body.text.metadata.paymentDetails.state
string
erforderlich
body.text.metadata.subject
string
body.text.metadata.telegram
object
Untergeordnete Attribute anzeigen
body.text.metadata.telegram.parseMode
string
body.text.metadata.whatsapp
object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.callPermissionExpiration
string
body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
body.text.metadata.whatsapp.previewUrl
boolean
erforderlich
body.text.metadata.whatsapp.sharedContacts
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.sharedContacts.origin
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.sharedContacts.phones.phone
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.type
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.waId
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.vcard
string
body.text.text
string
erforderlich
body.type
string
erforderlich
Possible values: text
bodyId
string
bodyStorage
object
Untergeordnete Attribute anzeigen
bodyStorage.type
string
erforderlich
Possible values: s3
bodyStorage.s3
object
erforderlich
Untergeordnete Attribute anzeigen
bodyStorage.s3.bucketArn
string
erforderlich
bodyStorage.s3.encryptionKey
string
erforderlich
bodyStorage.s3.key
string
erforderlich
channelId
string
erforderlich
chargeableUnits
integer
context
object
Untergeordnete Attribute anzeigen
context.id
string
context.tagIds
array of string
context.type
string
createdAt
string
erforderlich
details
string
This field is used to store additional information related to the message status.
direction
string
Possible values: incoming, outgoing
failure
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
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
erforderlich
ignorePersistedEventhooks
boolean
lastStatusAt
string
erforderlich
meta
object
Untergeordnete Attribute anzeigen
meta.campaign
object
Untergeordnete Attribute anzeigen
meta.campaign.id
string
meta.campaign.name
string
meta.campaignId
string
meta.chargeOnceDelivered
boolean
meta.email
object
Untergeordnete Attribute anzeigen
meta.email.from
object
Untergeordnete Attribute anzeigen
meta.email.from.displayName
string
meta.email.from.username
string
meta.email.headers
object
meta.email.subject
string
meta.extraInformation
object
meta.flow
object
Untergeordnete Attribute anzeigen
meta.flow.id
string
meta.flow.name
string
meta.flow.runId
string
meta.flow.scheduleExecutionId
string
meta.flow.stepId
string
meta.formResponse
object
Untergeordnete Attribute anzeigen
meta.formResponse.id
string
erforderlich
meta.formResponse.jsonResponse
string
erforderlich
meta.formResponse.requestIdentifier
string
erforderlich
meta.formResponse.selections
array of object
Untergeordnete Attribute anzeigen
meta.formResponse.selections.items
array of object
Untergeordnete Attribute anzeigen
meta.formResponse.selections.items.identifier
string
erforderlich
meta.formResponse.selections.items.title
string
erforderlich
meta.formResponse.selections.items.type
string
erforderlich
meta.formResponse.selections.items.value
string
erforderlich
meta.formResponse.selections.pageIdentifier
string
erforderlich
meta.formResponse.selections.subtitle
string
erforderlich
meta.formResponse.selections.title
string
erforderlich
meta.formResponse.sessionIdentifier
string
erforderlich
meta.formResponse.template
string
erforderlich
meta.formResponse.version
string
erforderlich
meta.ignoreGlobalHoldout
boolean
meta.ignoreQuietHours
boolean
meta.journey
object
Untergeordnete Attribute anzeigen
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.
Untergeordnete Attribute anzeigen
meta.order.products
array of object
Untergeordnete Attribute anzeigen
meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.order.products.externalProductId
string
erforderlich
The platform-specific product ID.
meta.order.products.price
object
erforderlich
Untergeordnete Attribute anzeigen
meta.order.products.price.amount
integer
erforderlich
meta.order.products.price.currencyCode
string
erforderlich
meta.order.products.price.exponent
integer
erforderlich
meta.order.products.quantity
integer
erforderlich
The number of items purchased.
meta.pushNotifications
object
Untergeordnete Attribute anzeigen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
meta.referral
object
Untergeordnete Attribute anzeigen
meta.referral.group
string
meta.referral.metadata
object
Untergeordnete Attribute anzeigen
meta.referral.metadata.caption
string
meta.referral.metadata.mediaType
string
meta.referral.metadata.mediaUrl
string
meta.referral.metadata.sourceId
string
erforderlich
meta.referral.metadata.sourceUrl
string
meta.referral.metadata.timestamp
string
meta.referral.metadata.trackingId
string
meta.referral.metadata.username
string
meta.referral.source
string
erforderlich
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).
Untergeordnete Attribute anzeigen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
erforderlich
The platform-specific product ID.
meta.renderedContentBlocks
array of string
meta.shortToLongLinks
object
meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
meta.sms
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
meta.sms.smpp.segments
array of object
Untergeordnete Attribute anzeigen
meta.sms.smpp.segments.id
string
erforderlich
meta.sms.smpp.segments.registeredDelivery
string
erforderlich
Possible values: final, intermediate, all, noDlr
meta.sms.smpp.userId
string
erforderlich
meta.sms.validity
string
meta.useFallback
boolean
parts
array of object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
previousMessages.id
string
erforderlich
previousMessages.useCaseType
string
erforderlich
Possible values: unspecified, marketing, otp, transactional, conversation, test
reason
string
receiver
object
erforderlich
Untergeordnete Attribute anzeigen
receiver.connector
object
Untergeordnete Attribute anzeigen
receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
receiver.connector.annotations.name
string
receiver.connector.id
string
erforderlich
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
Untergeordnete Attribute anzeigen
receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
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.
Untergeordnete Attribute anzeigen
receiver.contacts.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
receiver.contacts.identifiers.identifierValue
string
erforderlich
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
Untergeordnete Attribute anzeigen
receiver.device.gateway
string
erforderlich
Possible values: firebase, apns, web
receiver.device.id
string
erforderlich
receiver.device.identifierValue
string
erforderlich
receiver.inbox
object
Untergeordnete Attribute anzeigen
receiver.inbox.emailRecipientType
string
receiver.inbox.id
string
erforderlich
receiver.inbox.identifierKey
string
erforderlich
receiver.inbox.identifierValue
string
erforderlich
receiver.inbox.type
string
erforderlich
Possible values: user, group
receiver.userContacts
array of object
Untergeordnete Attribute anzeigen
receiver.userContacts.id
string
erforderlich
receiver.userContacts.identifierKey
string
erforderlich
receiver.userContacts.identifierValue
string
erforderlich
receiver.userContacts.type
string
reference
string
A reference to the message. This can be used to identify the message in the channel.
replyTo
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
schedule.reason
string
erforderlich
schedule.scheduledAt
string
erforderlich
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
erforderlich
Untergeordnete Attribute anzeigen
sender.connector
object
Untergeordnete Attribute anzeigen
sender.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
sender.connector.annotations.name
string
sender.connector.id
string
erforderlich
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
Untergeordnete Attribute anzeigen
sender.contact.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
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.
Untergeordnete Attribute anzeigen
sender.contact.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
sender.contact.identifiers.identifierValue
string
erforderlich
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
Untergeordnete Attribute anzeigen
sender.inbox.emailRecipientType
string
sender.inbox.id
string
erforderlich
sender.inbox.identifierKey
string
erforderlich
sender.inbox.identifierValue
string
erforderlich
sender.inbox.type
string
erforderlich
Possible values: user, group
sender.userContact
object
Untergeordnete Attribute anzeigen
sender.userContact.id
string
erforderlich
sender.userContact.identifierKey
string
erforderlich
sender.userContact.identifierValue
string
erforderlich
sender.userContact.type
string
shortLinks
object
Untergeordnete Attribute anzeigen
shortLinks.domain
string
erforderlich
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
status
string
erforderlich
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
Untergeordnete Attribute anzeigen
template.attachments
array of object
Untergeordnete Attribute anzeigen
template.attachments.content
string
template.attachments.contentType
string
template.attachments.filename
string
erforderlich
template.attachments.inline
boolean
erforderlich
template.attachments.mediaUrl
string
erforderlich
template.deployment
object
template.locale
string
erforderlich
template.name
string
The platform name of the template.
template.parameters
array of object
Untergeordnete Attribute anzeigen
template.parameters.key
string
erforderlich
template.parameters.sourceUrl
object
Untergeordnete Attribute anzeigen
template.parameters.sourceUrl.fullyReplaced
boolean
erforderlich
template.parameters.sourceUrl.value
string
erforderlich
template.parameters.type
string
erforderlich
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
erforderlich
template.projectId
string
erforderlich
The ID of the project from Studio.
template.settings
object
Untergeordnete Attribute anzeigen
template.settings.disallowMmLite
boolean
template.shortLinks
object
Untergeordnete Attribute anzeigen
template.shortLinks.domain
string
erforderlich
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
template.shortLinks.enabled
boolean
erforderlich
Enables link shortening for SMS messages.
template.templateBody
object
Untergeordnete Attribute anzeigen
template.templateBody.text
object
erforderlich
Untergeordnete Attribute anzeigen
template.templateBody.text.actions
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link
object
erforderlich
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata
object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata.description
object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata.description.label
string
erforderlich
template.templateBody.text.actions.link.text
string
erforderlich
template.templateBody.text.actions.link.url
string
erforderlich
template.templateBody.text.actions.type
string
erforderlich
Possible values: link
template.templateBody.text.attachments
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.attachments.content
string
template.templateBody.text.attachments.contentId
string
template.templateBody.text.attachments.contentType
string
template.templateBody.text.attachments.filename
string
erforderlich
template.templateBody.text.attachments.inline
boolean
template.templateBody.text.attachments.mediaUrl
string
erforderlich
template.templateBody.text.metadata
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.apple
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji.items
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji.items.emojiId
string
erforderlich
template.templateBody.text.metadata.line.emoji.items.index
integer
erforderlich
template.templateBody.text.metadata.line.emoji.items.length
integer
template.templateBody.text.metadata.line.emoji.items.productId
string
erforderlich
template.templateBody.text.metadata.paymentDetails
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.paymentDetails.amount
string
erforderlich
template.templateBody.text.metadata.paymentDetails.currency
string
erforderlich
template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
template.templateBody.text.metadata.paymentDetails.state
string
erforderlich
template.templateBody.text.metadata.subject
string
template.templateBody.text.metadata.telegram
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.telegram.parseMode
string
template.templateBody.text.metadata.whatsapp
object
Untergeordnete Attribute anzeigen
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
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
template.templateBody.text.text
string
erforderlich
template.templateBody.type
string
erforderlich
Possible values: text
template.utmParameters
array of object
Untergeordnete Attribute anzeigen
template.utmParameters.key
string
erforderlich
template.utmParameters.value
string
erforderlich
template.variables
object
template.version
string
erforderlich
The version of the template.
updatedAt
string
erforderlich
Codebeispiel
curl -X POST 'https://api.bird.com/workspaces/{workspaceId}/channels/{channelId}/messages' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'
Example Request Body
Codebeispiel
{
  "receiver": {
    "contacts": [
      {
        "identifierKey": "facebook",
        "identifierValue": "<the contact's PSID>"
      }
    ]
  },
  "body": {
    "type": "text",
    "text": {
      "text": "Thanks for reaching out — here's the update you asked for."
    }
  },
  "meta": {
    "extraInformation": {
      "useCase": "conversation"
    }
  }
}
The useCase value maps to Meta's messaging type as follows:
conversation or transactionalMESSAGE_TAG + HUMAN_AGENT7 days (human agent)
marketing, otp, or omittedUPDATE24 hours (standard)
The Human Agent window is controlled by useCase only — not by which participant sends the message. To reply outside the 24-hour window, set useCase to conversation or transactional.

Sending via the Conversations API

Messages sent through the Conversations API are automatically classified with the conversation use case, so Messenger and Instagram messages are always delivered with the HUMAN_AGENT tag — you don't need to set anything.
POST
/workspaces/{workspaceId}/conversations/{conversationId}/messages
Sends a message in a conversation. The message content can be comprised of either body or template. Attempting to send as a participant that hasn't been added to the conversation results in an error unless the option addMissingParticipants is set to true. Attempting to send messages in a closed conversation results in an error.
Pfadparameter
conversationId
string
The conversation ID
Anfrage-Payload
A message specifying its contents through a body field.
draft
boolean
Whether this message is a draft.
reference
string
A customizable ID assigned to messages you send. This can be used to correlate messages with data from your own integrating services. Must be globally unique within a workspace.
sender
object
Message sender information for email.
Untergeordnete Parameter anzeigen
sender.name
string
erforderlich
Sender name shown in the email "From" header.
sender.email
string
Sender email address.
sender.emailReplyToAddress
string
Sender email address to reply to.
participantId
string
erforderlich
Participant ID.
replyToMessageId
string
Message ID to reply to. Only used for email channels, other channel types must use replyTo.
participantType
string
erforderlich
Participant type. When sending messages through the Conversations API, the participant be one of accessKey, flow, or contact.
Possible values: user, contact, agent, flow, bot, accessKey, channel, connector, collaborationAutomation
participantContactIdentifierKey
string
The key of the contact identifier to use for the participant. This is used when the participant is not a user in the system.
participantContactIdentifierValue
string
recipients
array of object
List of recipients.
Untergeordnete Parameter anzeigen
Create a new recipient by specifying an identifier key and identifier value. For more information on identifier keys and values, please refer to the "Conversation Participants" page.
recipients.identifierKey
string
Identifier key of the contact depending on which channel is being used.
recipients.identifierValue
string
erforderlich
Identifier of the contact, such as a phone number or email address.
recipients.platformAddressSelector
string
An expression to determine the contact's platform address (such as email or phone number) dynamically when sending messages in advanced use cases.
recipients.type
string
erforderlich
Whether the email address is in the email's "To", "CC", or "BCC" headers.
Possible values: to, cc, bcc
addMissingParticipants
boolean
If enabled, conveniently adds missing participants to the conversation without requiring additional API calls to /participants. It's recommended to set this to true.
body
object
erforderlich
Untergeordnete Parameter anzeigen
body.text
object
erforderlich
Untergeordnete Parameter anzeigen
body.text.actions
array of object
Untergeordnete Parameter anzeigen
body.text.actions.link
object
erforderlich
Untergeordnete Parameter anzeigen
body.text.actions.link.metadata
object
Untergeordnete Parameter anzeigen
body.text.actions.link.metadata.description
object
Untergeordnete Parameter anzeigen
body.text.actions.link.metadata.description.label
string
erforderlich
body.text.actions.link.text
string
erforderlich
body.text.actions.link.url
string
erforderlich
body.text.actions.type
string
erforderlich
Possible values: link
body.text.attachments
array of object
Untergeordnete Parameter anzeigen
body.text.attachments.content
string
body.text.attachments.contentId
string
body.text.attachments.contentType
string
body.text.attachments.filename
string
erforderlich
body.text.attachments.inline
boolean
body.text.attachments.mediaUrl
string
erforderlich
body.text.metadata
object
Untergeordnete Parameter anzeigen
body.text.metadata.apple
object
Untergeordnete Parameter anzeigen
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
Untergeordnete Parameter anzeigen
body.text.metadata.line.emoji
object
Untergeordnete Parameter anzeigen
body.text.metadata.line.emoji.items
array of object
Untergeordnete Parameter anzeigen
body.text.metadata.line.emoji.items.emojiId
string
erforderlich
body.text.metadata.line.emoji.items.index
integer
erforderlich
body.text.metadata.line.emoji.items.length
integer
body.text.metadata.line.emoji.items.productId
string
erforderlich
body.text.metadata.paymentDetails
object
Untergeordnete Parameter anzeigen
body.text.metadata.paymentDetails.amount
string
erforderlich
body.text.metadata.paymentDetails.currency
string
erforderlich
body.text.metadata.paymentDetails.sessionIdentifier
string
body.text.metadata.paymentDetails.state
string
erforderlich
body.text.metadata.subject
string
body.text.metadata.telegram
object
Untergeordnete Parameter anzeigen
body.text.metadata.telegram.parseMode
string
body.text.metadata.whatsapp
object
Untergeordnete Parameter anzeigen
body.text.metadata.whatsapp.callPermissionExpiration
string
body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
body.text.metadata.whatsapp.previewUrl
boolean
erforderlich
body.text.metadata.whatsapp.sharedContacts
array of object
Untergeordnete Parameter anzeigen
body.text.metadata.whatsapp.sharedContacts.origin
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones
array of object
Untergeordnete Parameter anzeigen
body.text.metadata.whatsapp.sharedContacts.phones.phone
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.type
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.waId
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.vcard
string
body.text.text
string
erforderlich
body.type
string
erforderlich
Possible values: text
replyTo
object
Untergeordnete Parameter anzeigen
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
appendPreviousMessage
boolean
channelId
string
Channel ID.
participants
array of object
When creating a new conversation, this is the list of participants.
Untergeordnete Parameter anzeigen
Create a participant of the type user, access key, flow, agent, bot, or action rule.
participants.id
string
erforderlich
The ID of the user, access key, flow, agent, bot, or action rule.
participants.type
string
erforderlich
Participant type.
Possible values: user, accessKey, flow, agent, bot, collaborationAutomation
name
string
When creating a new conversation, this is the subject of the email.
description
string
When creating a new conversation, this is the description associated with it.
visibility
string
Possible values: public, private, direct, group
accessibility
string
Possible values: open, invite-only, request-to-join, private
attributes
object
A free-form object containing conversation attributes. You can use this field to store custom information along with the conversation.
meta
object
Message metadata fields that might be populated depending on the channel being used.
Untergeordnete Parameter anzeigen
meta.email
object
Metadata fields for email messages.
Untergeordnete Parameter anzeigen
meta.email.subject
string
Email subject line.
meta.email.headers
object
Additional email headers.
meta.email.from
object
Email From address.
Untergeordnete Parameter anzeigen
meta.email.from.username
string
The username part of the adress, e.g. for the address john.doe@bird.com, this value will be john.doe.
meta.email.from.displayName
string
The display name of an email participant.
meta.extraInformation
object
A free-form object that might contain additional metadata fields. Messages sent through the Conversations API are automatically classified with the conversation useCase, so on Meta channels (Messenger, Instagram) they are delivered with Meta's HUMAN_AGENT tag (the 7-day human-agent window).
meta.referral
object
This represents a social media post or an ad that was referenced when starting the conversation.
Untergeordnete Parameter anzeigen
meta.referral.source
string
meta.referral.title
string
meta.referral.text
string
meta.referral.group
string
meta.referral.metadata
object
Untergeordnete Parameter anzeigen
meta.referral.metadata.sourceId
string
The ID of the social media post or ad.
meta.referral.metadata.sourceUrl
string
The URL of the social media post or ad.
meta.referral.metadata.mediaType
string
Type of media used in the post or ad.
meta.referral.metadata.mediaUrl
string
Link to the media associated with the referral post or ad.
meta.referral.metadata.caption
string
Caption associated with the referral post or ad.
meta.referral.metadata.username
string
Username who created the referral post or ad.
meta.referral.metadata.timestamp
string
Timestamp when the referral post or ad was created.
meta.referral.metadata.trackingId
string
Antwort-Payload
body
object
Untergeordnete Attribute anzeigen
body.text
object
erforderlich
Untergeordnete Attribute anzeigen
body.text.actions
array of object
Untergeordnete Attribute anzeigen
body.text.actions.link
object
erforderlich
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata
object
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata.description
object
Untergeordnete Attribute anzeigen
body.text.actions.link.metadata.description.label
string
erforderlich
body.text.actions.link.text
string
erforderlich
body.text.actions.link.url
string
erforderlich
body.text.actions.type
string
erforderlich
Possible values: link
body.text.attachments
array of object
Untergeordnete Attribute anzeigen
body.text.attachments.content
string
body.text.attachments.contentId
string
body.text.attachments.contentType
string
body.text.attachments.filename
string
erforderlich
body.text.attachments.inline
boolean
body.text.attachments.mediaUrl
string
erforderlich
body.text.metadata
object
Untergeordnete Attribute anzeigen
body.text.metadata.apple
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji
object
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji.items
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.line.emoji.items.emojiId
string
erforderlich
body.text.metadata.line.emoji.items.index
integer
erforderlich
body.text.metadata.line.emoji.items.length
integer
body.text.metadata.line.emoji.items.productId
string
erforderlich
body.text.metadata.paymentDetails
object
Untergeordnete Attribute anzeigen
body.text.metadata.paymentDetails.amount
string
erforderlich
body.text.metadata.paymentDetails.currency
string
erforderlich
body.text.metadata.paymentDetails.sessionIdentifier
string
body.text.metadata.paymentDetails.state
string
erforderlich
body.text.metadata.subject
string
body.text.metadata.telegram
object
Untergeordnete Attribute anzeigen
body.text.metadata.telegram.parseMode
string
body.text.metadata.whatsapp
object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.callPermissionExpiration
string
body.text.metadata.whatsapp.callPermissionResponse
string
Possible values: accept, reject
body.text.metadata.whatsapp.previewUrl
boolean
erforderlich
body.text.metadata.whatsapp.sharedContacts
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.sharedContacts.origin
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones
array of object
Untergeordnete Attribute anzeigen
body.text.metadata.whatsapp.sharedContacts.phones.phone
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.type
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.phones.waId
string
erforderlich
body.text.metadata.whatsapp.sharedContacts.vcard
string
body.text.text
string
erforderlich
body.type
string
erforderlich
Possible values: text
channelId
string
conversationCreatedAt
string
conversationId
string
erforderlich
createdAt
string
erforderlich
draft
boolean
erforderlich
Whether this message is a draft.
draftMeta
object
Metadata for draft messages.
Untergeordnete Attribute anzeigen
draftMeta.creatorType
string
erforderlich
Possible values: user, bot
id
string
erforderlich
A unique identifier for this message.
interactions
array of object
A list of interactions associated with the message (e.g. read receipts, clicks, reactions).
Untergeordnete Attribute anzeigen
interactions.bodyTemplateProjectId
string
interactions.channelId
string
erforderlich
interactions.context
object
erforderlich
Untergeordnete Attribute anzeigen
interactions.context.id
string
interactions.context.tagIds
array of string
interactions.context.type
string
interactions.createdAt
string
erforderlich
interactions.details
string
interactions.id
string
erforderlich
interactions.isFirstInteraction
boolean
interactions.isFirstInteractionIncludingBots
boolean
interactions.journey
object
Untergeordnete Attribute anzeigen
interactions.journey.id
string
interactions.journey.name
string
interactions.journey.runId
string
interactions.journey.scheduleExecutionId
string
interactions.journey.stepId
string
interactions.messageCreatedAt
string
interactions.messageId
string
erforderlich
interactions.messagePartsCount
integer
erforderlich
interactions.messageReference
string
erforderlich
interactions.messageTags
array of string
interactions.metadata
object
Untergeordnete Attribute anzeigen
interactions.metadata.button
object
Untergeordnete Attribute anzeigen
interactions.metadata.button.payload
string
erforderlich
interactions.metadata.conversion
object
Untergeordnete Attribute anzeigen
interactions.metadata.conversion.method
string
Method of entering the code
Possible values: unknown, manual, auto
interactions.metadata.conversion.status
string
Status of the conversion
Possible values: converted, canceled, not_converted, incorrect_code, resent, received_after_expiration
interactions.metadata.conversion.timestamp
string
Timestamp of when the conversion was recorded
interactions.metadata.conversion.type
string
Type of conversion
Possible values: otp, url, promo_code
interactions.metadata.extraInformation
object
interactions.metadata.link
object
Untergeordnete Attribute anzeigen
interactions.metadata.link.clickType
string
Possible values: link, button
interactions.metadata.link.name
string
erforderlich
interactions.metadata.link.url
string
erforderlich
interactions.metadata.prefetched
boolean
interactions.metadata.reaction
object
Untergeordnete Attribute anzeigen
interactions.metadata.reaction.action
string
erforderlich
Possible values: react, unreact
interactions.metadata.reaction.emoji
string
erforderlich
interactions.metadata.renderedContentBlocks
array of string
interactions.metadata.subscriptionList
object
Untergeordnete Attribute anzeigen
interactions.metadata.subscriptionList.subscriptionListId
string
erforderlich
interactions.notification
object
Untergeordnete Attribute anzeigen
interactions.notification.template
string
interactions.notification.url
string
erforderlich
interactions.platformId
string
erforderlich
interactions.platformReferenceId
string
interactions.receiver
object
erforderlich
Untergeordnete Attribute anzeigen
interactions.receiver.connector
object
Untergeordnete Attribute anzeigen
interactions.receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
interactions.receiver.connector.annotations.name
string
interactions.receiver.connector.id
string
erforderlich
interactions.receiver.connector.identifierValue
string
The identifier value of the sender or receiver connector (e.g. email address or phone number).
interactions.receiver.connector.types
array of string
interactions.receiver.contacts
array of object
Untergeordnete Attribute anzeigen
interactions.receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
interactions.receiver.contacts.contactAnnotation.name
string
interactions.receiver.contacts.countryCode
string
interactions.receiver.contacts.id
string
The ID of the contact.
interactions.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.
interactions.receiver.contacts.identifierValue
string
The identifier value for finding the contact.
interactions.receiver.contacts.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Untergeordnete Attribute anzeigen
interactions.receiver.contacts.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
interactions.receiver.contacts.identifiers.identifierValue
string
erforderlich
The identifier value for finding the contact.
interactions.receiver.contacts.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
interactions.receiver.contacts.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
interactions.receiver.contacts.receiverExpression
string
interactions.receiver.contacts.receiverValue
string
interactions.receiver.contacts.type
string
The type of the receiver (e.g. to, cc, bcc for email).
interactions.receiver.device
object
Untergeordnete Attribute anzeigen
interactions.receiver.device.gateway
string
erforderlich
Possible values: firebase, apns, web
interactions.receiver.device.id
string
erforderlich
interactions.receiver.device.identifierValue
string
erforderlich
interactions.receiver.inbox
object
Untergeordnete Attribute anzeigen
interactions.receiver.inbox.emailRecipientType
string
interactions.receiver.inbox.id
string
erforderlich
interactions.receiver.inbox.identifierKey
string
erforderlich
interactions.receiver.inbox.identifierValue
string
erforderlich
interactions.receiver.inbox.type
string
erforderlich
Possible values: user, group
interactions.receiver.userContacts
array of object
Untergeordnete Attribute anzeigen
interactions.receiver.userContacts.id
string
erforderlich
interactions.receiver.userContacts.identifierKey
string
erforderlich
interactions.receiver.userContacts.identifierValue
string
erforderlich
interactions.receiver.userContacts.type
string
interactions.type
string
erforderlich
Possible values: invalid, read, opened, clicked, reported-as-spam, unsubscribe-request, delete, reaction, subscribe-request, subscribe-consent, conversion
interactions.useCaseType
string
Possible values: unspecified, marketing, otp, transactional, conversation, test
meta
object
Untergeordnete Attribute anzeigen
meta.campaign
object
Untergeordnete Attribute anzeigen
meta.campaign.id
string
meta.campaign.name
string
meta.campaignId
string
meta.chargeOnceDelivered
boolean
meta.email
object
Untergeordnete Attribute anzeigen
meta.email.from
object
Untergeordnete Attribute anzeigen
meta.email.from.displayName
string
meta.email.from.username
string
meta.email.headers
object
meta.email.subject
string
meta.extraInformation
object
meta.flow
object
Untergeordnete Attribute anzeigen
meta.flow.id
string
meta.flow.name
string
meta.flow.runId
string
meta.flow.scheduleExecutionId
string
meta.flow.stepId
string
meta.formResponse
object
Untergeordnete Attribute anzeigen
meta.formResponse.id
string
erforderlich
meta.formResponse.jsonResponse
string
erforderlich
meta.formResponse.requestIdentifier
string
erforderlich
meta.formResponse.selections
array of object
Untergeordnete Attribute anzeigen
meta.formResponse.selections.items
array of object
Untergeordnete Attribute anzeigen
meta.formResponse.selections.items.identifier
string
erforderlich
meta.formResponse.selections.items.title
string
erforderlich
meta.formResponse.selections.items.type
string
erforderlich
meta.formResponse.selections.items.value
string
erforderlich
meta.formResponse.selections.pageIdentifier
string
erforderlich
meta.formResponse.selections.subtitle
string
erforderlich
meta.formResponse.selections.title
string
erforderlich
meta.formResponse.sessionIdentifier
string
erforderlich
meta.formResponse.template
string
erforderlich
meta.formResponse.version
string
erforderlich
meta.ignoreGlobalHoldout
boolean
meta.ignoreQuietHours
boolean
meta.journey
object
Untergeordnete Attribute anzeigen
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.
Untergeordnete Attribute anzeigen
meta.order.products
array of object
Untergeordnete Attribute anzeigen
meta.order.products.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.order.products.externalProductId
string
erforderlich
The platform-specific product ID.
meta.order.products.price
object
erforderlich
Untergeordnete Attribute anzeigen
meta.order.products.price.amount
integer
erforderlich
meta.order.products.price.currencyCode
string
erforderlich
meta.order.products.price.exponent
integer
erforderlich
meta.order.products.quantity
integer
erforderlich
The number of items purchased.
meta.pushNotifications
object
Untergeordnete Attribute anzeigen
meta.pushNotifications.gatewayTypeOverride
string
Possible values: firebase, apns, web
meta.referral
object
Untergeordnete Attribute anzeigen
meta.referral.group
string
meta.referral.metadata
object
Untergeordnete Attribute anzeigen
meta.referral.metadata.caption
string
meta.referral.metadata.mediaType
string
meta.referral.metadata.mediaUrl
string
meta.referral.metadata.sourceId
string
erforderlich
meta.referral.metadata.sourceUrl
string
meta.referral.metadata.timestamp
string
meta.referral.metadata.trackingId
string
meta.referral.metadata.username
string
meta.referral.source
string
erforderlich
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).
Untergeordnete Attribute anzeigen
meta.referredProduct.externalCatalogId
string
The platform-specific catalog ID of the product.
meta.referredProduct.externalProductId
string
erforderlich
The platform-specific product ID.
meta.renderedContentBlocks
array of string
meta.shortToLongLinks
object
meta.skipThisMessage
string
Possible values: campaignHoldout, globalHoldout, journeyHoldout
meta.sms
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
meta.sms.smpp.segments
array of object
Untergeordnete Attribute anzeigen
meta.sms.smpp.segments.id
string
erforderlich
meta.sms.smpp.segments.registeredDelivery
string
erforderlich
Possible values: final, intermediate, all, noDlr
meta.sms.smpp.userId
string
erforderlich
meta.sms.validity
string
meta.useFallback
boolean
reason
string
Failure reason. Populated when status is sending_failed or delivery_failed.
receiver
object
Untergeordnete Attribute anzeigen
receiver.connector
object
Untergeordnete Attribute anzeigen
receiver.connector.annotations
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
receiver.connector.annotations.name
string
receiver.connector.id
string
erforderlich
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
Untergeordnete Attribute anzeigen
receiver.contacts.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
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.
Untergeordnete Attribute anzeigen
receiver.contacts.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
receiver.contacts.identifiers.identifierValue
string
erforderlich
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
Untergeordnete Attribute anzeigen
receiver.device.gateway
string
erforderlich
Possible values: firebase, apns, web
receiver.device.id
string
erforderlich
receiver.device.identifierValue
string
erforderlich
receiver.inbox
object
Untergeordnete Attribute anzeigen
receiver.inbox.emailRecipientType
string
receiver.inbox.id
string
erforderlich
receiver.inbox.identifierKey
string
erforderlich
receiver.inbox.identifierValue
string
erforderlich
receiver.inbox.type
string
erforderlich
Possible values: user, group
receiver.userContacts
array of object
Untergeordnete Attribute anzeigen
receiver.userContacts.id
string
erforderlich
receiver.userContacts.identifierKey
string
erforderlich
receiver.userContacts.identifierValue
string
erforderlich
receiver.userContacts.type
string
receiverTypes
array of string
Receiver types for the message (to/cc/bcc). Currently only used for inbound email messages.
recipients
array of object
Untergeordnete Attribute anzeigen
recipients.contactAnnotation
object
Annotations add extra information to a sender or receiver. For email messages, the name annotation overrides the display name.
Untergeordnete Attribute anzeigen
recipients.contactAnnotation.name
string
recipients.countryCode
string
recipients.id
string
The ID of the contact.
recipients.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.
recipients.identifierValue
string
The identifier value for finding the contact.
recipients.identifiers
array of object
Additional identifiers to augment the contact during resolution.
Untergeordnete Attribute anzeigen
recipients.identifiers.identifierKey
string
erforderlich
The identifier key for finding the contact (e.g. emailaddress, phonenumber).
recipients.identifiers.identifierValue
string
erforderlich
The identifier value for finding the contact.
recipients.platformAddress
string
The resolved platform address used to deliver the message (e.g. phone number or email address).
recipients.platformAddressSelector
string
An expression that defines how we resolve the platform address from a contact. Optional override for the default resolution logic.
recipients.receiverExpression
string
recipients.receiverValue
string
recipients.type
string
The type of the receiver (e.g. to, cc, bcc for email).
reference
string
erforderlich
A customizable ID assigned to messages you send. Can be used to correlate messages with data from your own services. Must be globally unique within a workspace.
replyTo
object
Untergeordnete Attribute anzeigen
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
resourceUri
string
sender
object
erforderlich
Untergeordnete Attribute anzeigen
sender.email
string
sender.name
string
sender.avatarUrl
string
sender.contact
object
Untergeordnete Attribute anzeigen
sender.contact.identifierKey
string
erforderlich
sender.contact.identifierValue
string
erforderlich
sender.contact.platformAddress
string
sender.contact.platformAddressSelector
string
sender.conversationId
string
sender.createdAt
string
sender.displayName
string
sender.id
string
erforderlich
sender.resourceUri
string
sender.status
string
Possible values: invited, pending, active, inactive
sender.type
string
erforderlich
Possible values: user, contact, agent, flow, bot, accessKey, channel, connector, collaborationAutomation
sender.updatedAt
string
source
string
erforderlich
Possible values: conversations, channels, bots, external
status
string
erforderlich
Possible values: accepted, processing, sent, sending_failed, delivered, delivery_failed, deleted
template
object
Untergeordnete Attribute anzeigen
template.attachments
array of object
Untergeordnete Attribute anzeigen
template.attachments.content
string
template.attachments.contentType
string
template.attachments.filename
string
erforderlich
template.attachments.inline
boolean
erforderlich
template.attachments.mediaUrl
string
erforderlich
template.deployment
object
template.locale
string
erforderlich
template.name
string
The platform name of the template.
template.parameters
array of object
Untergeordnete Attribute anzeigen
template.parameters.key
string
erforderlich
template.parameters.sourceUrl
object
Untergeordnete Attribute anzeigen
template.parameters.sourceUrl.fullyReplaced
boolean
erforderlich
template.parameters.sourceUrl.value
string
erforderlich
template.parameters.type
string
erforderlich
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
erforderlich
template.projectId
string
erforderlich
The ID of the project from Studio.
template.settings
object
Untergeordnete Attribute anzeigen
template.settings.disallowMmLite
boolean
template.shortLinks
object
Untergeordnete Attribute anzeigen
template.shortLinks.domain
string
erforderlich
The domain to use when shortening links. When set to default, uses the default link shortening domain for the workspace.
template.shortLinks.enabled
boolean
erforderlich
Enables link shortening for SMS messages.
template.templateBody
object
Untergeordnete Attribute anzeigen
template.templateBody.text
object
erforderlich
Untergeordnete Attribute anzeigen
template.templateBody.text.actions
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link
object
erforderlich
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata
object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata.description
object
Untergeordnete Attribute anzeigen
template.templateBody.text.actions.link.metadata.description.label
string
erforderlich
template.templateBody.text.actions.link.text
string
erforderlich
template.templateBody.text.actions.link.url
string
erforderlich
template.templateBody.text.actions.type
string
erforderlich
Possible values: link
template.templateBody.text.attachments
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.attachments.content
string
template.templateBody.text.attachments.contentId
string
template.templateBody.text.attachments.contentType
string
template.templateBody.text.attachments.filename
string
erforderlich
template.templateBody.text.attachments.inline
boolean
template.templateBody.text.attachments.mediaUrl
string
erforderlich
template.templateBody.text.metadata
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.apple
object
Untergeordnete Attribute anzeigen
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
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji.items
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.line.emoji.items.emojiId
string
erforderlich
template.templateBody.text.metadata.line.emoji.items.index
integer
erforderlich
template.templateBody.text.metadata.line.emoji.items.length
integer
template.templateBody.text.metadata.line.emoji.items.productId
string
erforderlich
template.templateBody.text.metadata.paymentDetails
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.paymentDetails.amount
string
erforderlich
template.templateBody.text.metadata.paymentDetails.currency
string
erforderlich
template.templateBody.text.metadata.paymentDetails.sessionIdentifier
string
template.templateBody.text.metadata.paymentDetails.state
string
erforderlich
template.templateBody.text.metadata.subject
string
template.templateBody.text.metadata.telegram
object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.telegram.parseMode
string
template.templateBody.text.metadata.whatsapp
object
Untergeordnete Attribute anzeigen
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
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.whatsapp.sharedContacts.origin
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones
array of object
Untergeordnete Attribute anzeigen
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.phone
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.type
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.phones.waId
string
erforderlich
template.templateBody.text.metadata.whatsapp.sharedContacts.vcard
string
template.templateBody.text.text
string
erforderlich
template.templateBody.type
string
erforderlich
Possible values: text
template.utmParameters
array of object
Untergeordnete Attribute anzeigen
template.utmParameters.key
string
erforderlich
template.utmParameters.value
string
erforderlich
template.variables
object
template.version
string
erforderlich
The version of the template.
type
string
Possible values: text, html, image, file, gif, location, carousel, list, section, authentication, action
updatedAt
string
erforderlich
Codebeispiel
curl -X POST 'https://api.bird.com/workspaces/{workspaceId}/conversations/{conversationId}/messages' \
  -H 'Authorization: AccessKey YOUR_ACCESS_KEY'
Example Request Body
Codebeispiel
{
  "participantType": "accessKey",
  "participantId": "<access key ID>",
  "body": {
    "type": "text",
    "text": {
      "text": "Thanks for reaching out — here's the update you asked for."
    }
  }
}
Any useCase you set in meta.extraInformation on the Conversations API is overridden with conversation, so the Human Agent window always applies.