Get a message
/v1/amb/messages/{message_id}const result = await bird.amb.get("amb_01krdgeqcxet5s7t44vh8rt9mg");
console.log(result);result = client.amb.get('amb_01krdgeqcxet5s7t44vh8rt9mg')
print(result)result, err := client.Amb.Get(ctx, "amb_01krdgeqcxet5s7t44vh8rt9mg")
if err != nil {
log.Fatal(err)
}
fmt.Println(result)$bird->amb->get('amb_01krdgeqcxet5s7t44vh8rt9mg');bird amb get <message-id>curl -X GET "https://us1.platform.bird.com/v1/amb/messages/{message_id}" \
-H "Authorization: Bearer $TOKEN"{
"id": "amb_01krdgeqcxet5s7t44vh8rt9mg",
"conversation_id": "acv_01krdgeqcxet5s7t44vh8rt9mg",
"business_account_id": "abz_01krdgeqcxet5s7t44vh8rt9mg",
"direction": "outbound",
"status": "accepted",
"kind": "text",
"source": "operator",
"text": {
"body": "Your order is ready."
},
"rich_link": {
"rich_link_construct": {
"url": "https://apps.apple.com/app/id123456789?clip=1",
"store_region": "US"
}
},
"interactive": {
"received_message": {
"title": "Pick a delivery slot"
},
"list_picker": {
"sections": [
{
"title": "Tomorrow",
"items": [
{
"identifier": "am",
"title": "Morning"
}
]
}
]
}
},
"interactive_reply": {
"request_identifier": "6f1c2a4e-8b7d-4c3a-9e1f-2d5b7a9c0e3f",
"quick_reply": {
"selected_identifier": "yes",
"selected_index": 0
}
},
"in_reply_to_message_id": "amb_01krdgeqcxet5s7t44vh8rt9mg",
"reply_message_id": "amb_01krdgh7m2zq8w4x6y9b3c5d7e",
"replied_at": "2026-10-13T10:09:00Z",
"locale": "en_US",
"category": "order_update",
"tags": [
{
"name": "category",
"value": "welcome"
}
],
"reference": "INV-1234",
"cost": {
"amount": "0.00990",
"currency_code": "USD",
"transaction_amount": "0.00790",
"passthrough_amount": "0.00200"
},
"last_error": {
"code": "bird:business_not_registered",
"description": "Apple refused the message with HTTP status 404."
},
"requested_language": "pt-BR",
"resolved_language": "pt-BR",
"template_id": "amt_01krdgeqcxet5s7t44vh8rt9mg",
"template_version_id": "amv_01krdgeqcxet5s7t44vh8rt9mg",
"template_content_hash": "sha256:9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
}
Returns a single Apple Messages for Business message: its current status, the content it carries, and failure detail when it failed. There is no delivery or read receipt on this channel, so an outbound message's status advances only as far as sent. For the per-event timeline, use listAMBMessageEvents instead. Messages do not expire based on age.
पैरामीटर
message_idstringMessage identifier. Starts with amb_.
Response Payload
idID of the message, assigned when it is accepted or received. Pass it as message_id to the get-message and list-events endpoints.
conversation_idThe conversation this message belongs to.
business_account_idThe business the message was sent from or received by.
fromApple business identifier on outbound messages, or the customer's opaque Apple identifier on inbound messages. Omitted when that address is unavailable on a historical record.
toCustomer's opaque Apple identifier on outbound messages, or the Apple business identifier on inbound messages. Omitted when that address is unavailable on a historical record.
directionWhether a message was sent by the business or received from the customer:
outbound: A reply the business sent into the conversation.inbound: A message the customer sent.
Possible values: outbound, inbound
statusSend status:
accepted: Accepted and queued for delivery to Apple.sent: Handed to Apple. There is no delivery or read receipt on this channel, sosentis the furthest an outbound message's status advances.send_failed: Sending stopped because of a business or conversation restriction, a recipient opt-out, an Apple refusal, or exhausted attempts. An earlier attempt may have reached Apple if its response or the local record of success was lost. Seelast_errorfor why sending stopped.rejected: Refused by Bird before any send attempt and never charged: the destination has no price, the wallet could not fund the send, or the content cannot be sent yet. Seelast_error.received: Received as an inbound message.
Possible values: accepted, sent, send_failed, rejected, received
kindDerived content classification for filtering and statistics.
Possible values: text, attachment, rich_link, quick_reply, list_picker, time_picker, form, apple_pay, authenticate, imessage_app, interactive
sourceWho sent this message. Absent on an inbound message, which has no source to report.
Possible values: operator, automation, api
textThe message's text and files. Next to rich_link, interactive or interactive_reply, it is the text that came with them.
interactive_replyWhat the customer answered, on an inbound message replying to an interactive message.
चाइल्ड एट्रिब्यूट दिखाएँ
interactive_reply.received_messageinteractive_reply.reply_messageinteractive_reply.session_identifierApple interaction session identifier.
interactive_reply.request_identifierCorrelation identifier reported by Apple.
interactive_reply.imagesImages returned by Apple, with authenticated download URLs.
interactive_reply.quick_replyinteractive_reply.list_pickerinteractive_reply.eventचाइल्ड एट्रिब्यूट दिखाएँ
interactive_reply.event.identifierEvent identifier returned by Apple, when provided.
interactive_reply.event.locationOptional appointment location.
चाइल्ड एट्रिब्यूट दिखाएँ
interactive_reply.event.location.titleName shown for the appointment location.
interactive_reply.event.location.latitudeLatitude in degrees. Set together with longitude.
interactive_reply.event.location.longitudeLongitude in degrees. Set together with latitude.
interactive_reply.event.location.coordinatesApple Messages template content only: exactly one placeholder, such as {{ store }}, set instead of latitude and longitude. When the template is sent, a location variable fills it with its latitude and longitude, and its name, when it has one, replaces title. A direct send that includes it returns 422. Never present on an inbound event.
interactive_reply.event.location.radiusLocation radius in meters. Apple ignores it without coordinates.
interactive_reply.event.timezone_offsetMinutes from GMT at the event location. Omit to use the customer's time zone.
interactive_reply.event.timeslotsTime slots returned by Apple. May be empty when the device supplies only a selected label.
interactive_reply.event.image_identifierIdentifier of the event image in interactive_reply.images.
interactive_reply.event.titleEvent title.
interactive_reply.dynamicinteractive_reply.paymentinteractive_reply.authenticateinteractive_reply.imessage_appThe custom iMessage app a customer replied from.
in_reply_to_message_idOriginal message matched through Apple’s request identifier within the same workspace, business, and conversation. Omitted when no verified match exists, including when more than one sent message in the conversation uses the reply's request identifier.
reply_message_idLatest customer reply whose in_reply_to_message_id names this message. Omitted until a reply is matched, and in webhook payloads.
replied_atWhen Apple delivered the reply in reply_message_id to Bird. This can be slightly earlier than that reply's created_at, which records when Bird processed it. Omitted until a reply is matched, and in webhook payloads.
localeLocale for this message, preserved in Apple’s format, for example en_US. Outbound messages use the request override, then the conversation locale, then the business default. Inbound messages preserve the locale in Apple’s callback. Null when unknown.
categoryThe category this message was sent with, for reporting only. It does not affect sending or suppression policy, or select an Apple department or purpose. Defaults to an empty string when a send names no category. Absent on an inbound message, which has no category to report.
metadataArbitrary JSON object for per-message context. Maximum 2 KB serialized. Top-level keys beginning with __bird are reserved. Returned in the send response, message reads and customer message webhooks.
tagsStructured {name, value} filter labels applied to this message. Absent on an inbound message.
referenceThe reference from the send request. Absent when the send set none, and on inbound messages.
costRecorded per-message charge before MAC pricing. Null in the initial send response, while unpriced, and for MAC-covered replies. MAC fees belong to monthly contact usage, not individual messages. Historical charges have no priced passthrough component.
last_errorFailure detail on a message whose send failed or that Bird rejected before any send attempt. Omitted when there is no failure detail.
created_atThe moment this message was accepted (outbound), or recorded by Bird after Apple delivered it (inbound). This is the timestamp the outbound statistics families bucket and attribute on; there is no separate accepted_at field.
sent_atWhen the selected sending outcome occurred. Null unless the current status is sent and the message is outbound. For older messages without a retained sending event, the stored record time is used.
groupApple department identifier carried by this message. Omitted when absent from the message or unavailable on a historical record.
intentApple purpose identifier carried by this message. Omitted when absent from the message or unavailable on a historical record.
requested_languageThe template language requested by the send, in canonical form. Null when the send named no language or used no template.
resolved_languageThe template language whose text was rendered, in canonical form. Null when the send used no template. This can differ from requested_language when the template's fallback policy selects another language.
template_idThe template rendered for this message, or null for a message sent with native content.
template_version_idThe workspace published version or synthetic built-in version rendered at acceptance, or null for a message sent with native content. For a built-in template, template_content_hash identifies the exact catalogue source.
template_content_hashThe rendered language's source fingerprint, or null for a message sent with native content.
संबंधित संसाधन
इस विषय के लिए दस्तावेज़, गाइड और उदाहरणों के साथ आगे बढ़ें।