---
title: "Get delivery reports"
method: GET
path: "/messages-api/1/reports"
tags: ["platform", "messages-api", "messages-api-status-reports"]
---

# Get delivery reports

`GET /messages-api/1/reports`

## Request

- Base URL: `https://api.infobip.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.infobip.com/messages-api/1/reports`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `https://api.infobip.com/auth/1/oauth2/token`
  - API key in header `Authorization`
  - API key in header `Authorization`
  - HTTP basic

If you are unable to receive real-time delivery reports towards your endpoint for various reasons, we offer you an API method to fetch batches of delivery reports to confirm whether specific messages have been delivered. Each request towards this endpoint will return batches of the latest delivery reports. This endpoint retrieves delivery reports for messages sent through Messages API as well as messages sent using channel-specific standalone APIs (for example, Viber, API, WhatsApp API, or SMS API). Please note they will be returned only once.

## Query parameters

- `channel` 'APPLE_MB' | 'INSTAGRAM_DM' | 'LINE_ON' | 'MESSENGER' | 'MMS' | 'RCS' | 'SMS' | 'VIBER_BM' | 'VIBER_BOT' | 'WHATSAPP'
- `bulkId` string
- `messageId` string
- `limit` integer
- `entityId` string
- `applicationId` string
- `campaignReferenceId` string

## Response `200`

OK

- 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fMessagesApiDeliveryReportResponse
  - `results` 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fMessagesApiDeliveryResult[], required: Incoming Delivery reports.
    - `event` string, required: Event type (delivery report in this case).
    - `channel` 'APPLE_MB' | 'INSTAGRAM_DM' | 'LINE_ON' | 'MESSENGER' | 'MMS' | 'RCS' | 'SMS' | 'VIBER_BM' | 'VIBER_BOT' | 'WHATSAPP' | 'KAKAO' | 'ZALO' | 'VOICE' | 'TELEGRAM', required: Messaging channel used for sending an event. `KAKAO, ZALO, VOICE or TELEGRAM` can be received with Smart Messaging.
    - `sender` string, required: The sender ID which can be alphanumeric or numeric (e.g., `CompanyName`).
    - `destination` string, required: Message destination address.
    - `sentAt` string, required: Tells when the message was sent. Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
    - `doneAt` string, required: Tells when the message was finished processing by Infobip (ie. delivered to destination, delivered to destination network, etc.). Has the following format: `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
    - `bulkId` string, required: The ID that uniquely identifies the request.
    - `messageId` string, required: The ID that uniquely identifies the received message.
    - `callbackData` string: Value of the `callbackData` field from the MT message (if exists) or from the MO Action setup (if exists).
    - `messageCount` integer, required: The number of parts the message content was split into.
    - `status` 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fMessagesApiDeliveryStatus, required: Messaged status.
      - `groupId` integer, required: Status group.
      - `groupName` string, required: Status group name.
      - `id` integer, required: Status ID.
      - `name` string, required: Status name.
      - `description` string, required: Human-readable description of the status.
    - `error` 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fMessagesApiDeliveryError, required: Message error if occurred, 0 if there is no error.
      - `groupId` integer: Error group ID.
      - `groupName` string: Error group name.
      - `id` integer, required: Error ID.
      - `name` string: Error name.
      - `description` string: Human-readable description of the error.
      - `permanent` boolean: Tells if the error is permanent.
    - `platform` 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fPlatform: Platform options. For more details, see [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
      - `entityId` string: Used when specifying an entity in outbound send requests. It is also returned in notification events. For detailed usage, refer to the [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
      - `applicationId` string: Used when specifying an application in outbound send requests. It is also returned in notification events. For detailed usage, refer to the [documentation](https://www.infobip.com/docs/cpaas-x/application-and-entity-management).
    - `deviceDetails` string: Device name if available.
    - `mccMnc` integer: Mobile country and network codes.
    - `networkId` integer: Network id dependent on Country.
    - `campaignReferenceId` string: ID of a campaign that was sent in the message.
    - `contact` 899caf445aab842b03fe1d74e4afd7097f0161dae66538ffa05bba2f153d708fMessagesApiContact: Contact information of the end user.
      - `name` string: Contact's display name.
      - `phoneNumber` string: Contact's phone number. For WhatsApp, it may be omitted after username launch if the user has adopted a username.
      - `userId` string: User ID. For WhatsApp, this value is Business-Scoped User ID (BSUID) and is always present once available.
      - `parentUserId` string: Parent user ID. For WhatsApp, this field is present for linked business portfolios.
      - `username` string: Username. For WhatsApp, this field is present if the end user has adopted a Meta username.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `500`: Internal Server Error

---

[API](https://skmtc.dev/infobip/apis/infobip-openapi-specification.md) - [All operations](https://skmtc.dev/infobip/apis/infobip-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/infobip/apis/infobip-openapi-specification/revisions/9dcbbaf902de?raw)
