> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vambe.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Get WhatsApp Message Delivery Status

> Check what happened to a message sent through the API. Look it up by the messageId returned in the send response: answers the current delivery status (accepted, sent, delivered, read or failed) with the timestamp of each transition and the failure reason when WhatsApp rejected the message. Messages become queryable a few seconds after the send is accepted. Requires x-api-key header.



## OpenAPI

````yaml get /api/public/whatsapp/message/status/{messageId}
openapi: 3.0.0
info:
  title: Vambe AI API
  description: Vambe AI documentation
  version: '1.0'
  contact: {}
servers:
  - url: https://api.vambe.me
    description: Production Server
security: []
tags:
  - name: Vambe AI
    description: ''
paths:
  /api/public/whatsapp/message/status/{messageId}:
    get:
      tags:
        - WhatsApp Message
      summary: Get the delivery status of a sent message
      description: >-
        Look up a message previously sent through the API by the `messageId`
        returned in the send response. Returns the current delivery status
        (`accepted`, `sent`, `delivered`, `read` or `failed`) with the timestamp
        of each transition and the failure reason when WhatsApp rejected the
        message. Messages become queryable a few seconds after the send is
        accepted; a 404 right after sending means the message is still being
        registered — retry shortly.
      operationId: PublicWhatsAppMessageController_getMessageStatus
      parameters:
        - name: messageId
          required: true
          in: path
          description: The `messageId` returned by the send endpoints
          schema:
            type: string
        - name: x-api-key
          in: header
          description: API key needed to authorize the request
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Current status of the message.
          content:
            application/json:
              schema:
                example:
                  messageId: f1e2d3c4-b5a6-4978-8899-aabbccddeeff
                  contactId: b7c9a9e2-4a4b-4f4e-9d2a-1c2d3e4f5a6b
                  status: delivered
                  failedReason: null
                  acceptedAt: '2026-08-03T14:05:12.000Z'
                  sentAt: '2026-08-03T14:05:13.000Z'
                  deliveredAt: '2026-08-03T14:05:15.000Z'
                  readAt: null
                  failedAt: null
        '400':
          description: The messageId is not a valid UUID.
        '401':
          description: Unauthorized.
        '404':
          description: >-
            No message with that id for this account, or the message is not
            registered yet.

````