---
title: "Poll for a message response"
method: GET
path: "/v0/messages/{message_id}"
tags: ["Messages", "Messages"]
---

# Poll for a message response

`GET /v0/messages/{message_id}`

Check the status of a previously sent message. Returns 'processing' while the assistant is working, and 'completed' (with an optional response) once done.

## Path parameters

- `message_id` string, required — The unique message ID returned by POST /messages.

## Response `200`

Successful Response

- InfoResponseMessageStatus
  - `info` MessageStatus, required
    - `message_id` string, required — Unique identifier for this message. Use this to poll for the assistant's response.
    - `assistant_id` integer, required — The ID of the assistant this message was sent to.
    - `message` string, required — The original message that was sent.
    - `status` string, required — Current status: 'processing' or 'completed'.
    - `response` string, nullable — The assistant's response, if any. Null while processing or if the assistant chose not to respond on this channel.
    - `tags` string[] — Tags supplied with the original message.
    - `attachments` AttachmentRef[] — File attachments supplied with the original message.
      - `id` string, required — Unique identifier returned by the upload endpoint.
      - `filename` string, required — Original filename of the attachment.
      - `gs_url` string, required — Google Cloud Storage URI (gs://bucket/path).
      - `signed_url` string, nullable — Pre-signed download URL. Returned by the server; omit when sending.
      - `content_type` string, nullable — MIME type of the file.
      - `size_bytes` integer, nullable — File size in bytes.
    - `response_tags` string[], nullable — Tags attached to the assistant's response. Null while processing.
    - `response_attachments` AttachmentRef[], nullable — File attachments in the assistant's response. Null while processing.
      - `id` string, required — Unique identifier returned by the upload endpoint.
      - `filename` string, required — Original filename of the attachment.
      - `gs_url` string, required — Google Cloud Storage URI (gs://bucket/path).
      - `signed_url` string, nullable — Pre-signed download URL. Returned by the server; omit when sending.
      - `content_type` string, nullable — MIME type of the file.
      - `size_bytes` integer, nullable — File size in bytes.
    - `created_at` string, date-time, required — When the message was sent.
    - `completed_at` string, date-time, nullable — When the assistant finished processing. Null while still processing.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/unify/apis/unifyai-http-api-reference.md) · [All operations](https://skmtc.net/unify/apis/unifyai-http-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/unify/unifyai-http-api-reference/revisions/900377f918b6/schema)
