---
title: "Get message queue"
method: GET
path: "/api/apps/{app_id}/chat/queue"
---

# Get message queue

`GET /api/apps/{app_id}/chat/queue`

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns the messages waiting to run in the app's AI chat, next to run first, and whether the queue is paused.

When the AI is busy, [Send chat message](/api-reference/send-chat-message) can queue your message instead of running it and return `{"queued": true}`. Queued messages run one at a time, in order, each as its own turn, once the turn before it finishes. The queue holds up to 7 messages, and a queue nobody changes for 24 hours is emptied. Base44 queues messages on apps that more than one person edits, so on other apps the queue is usually empty.

The API acts on the queue of the app's main line. Queues on branches aren't available through it.

[Stop generation](/api-reference/stop-generation) pauses a queue that has messages in it, so nothing queued starts after you stop. [Edit and resend](/api-reference/edit-and-resend) pauses the queue while it runs and resumes it afterward, unless the AI ends that turn waiting on a tool call. A turn that ends waiting on a tool call also pauses the queue until you answer it with [Submit tool-call input](/api-reference/submit-tool-call-input). Base44 doesn't lift a pause you set yourself, but every pause expires 24 hours after it was set.

This is limited to 120 requests per minute per app for each workspace's personal API keys, so every key in a workspace shares one allowance. Some workspaces have a different limit.

<Note>This endpoint accepts a personal API key belonging to a user with editor access to the app, including a read-only key. Workspace API keys are not accepted.</Note>

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time.</Warning>

## Path parameters

- `app_id` string, required — ID of the app whose message queue this request acts on.

## Response `200`

The app's message queue.

- MessageQueue — The messages waiting to run, in the order they run.
  - `items` QueuedMessage[], required — The queued messages, next to run first. Holds at most 7.
    - `id` string, required — ID of the queued message.
    - `content` string, required — Text of the message, as it will be sent to the AI.
    - `branch_id` string, nullable, required — ID of the branch the message was queued on, or `null` for main. The API acts on main's queue, so this is normally `null`.
    - `created_at` string, required — When the message was queued, as a UTC timestamp in ISO 8601 format.
  - `is_paused` boolean, required — Whether the queue is paused. While it is, queued messages don't run.

## Other responses

- `401` — Missing or invalid credentials.
- `403` — You don't have editor access to this app, the app is blocked, or you used a workspace API key.
- `404` — App not found.
- `429` — Rate limit exceeded. The base limit is 120 requests per minute. See [Rate limits](/developers/references/apps-api/get-started/rate-limits) for the multiplier your plan gets.

## Changes

> 28 revisions in range; 1 not diffed.

- **2026-10-06** `dddf17e0f9f0` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/adexad/apis/base44-app-management-api/changes/api/apps/:app_id/chat/queue/get.md)

---

[API](https://skmtc.dev/adexad/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/adexad/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adexad/apis/base44-app-management-api/revisions/99df85f579f9?raw)
