---
title: "List Logs"
method: GET
path: "/v2/logs"
tags: ["Logs"]
---

# List Logs

`GET /v2/logs`

## Request

- Base URL: `https://qstash-eu-central-1.upstash.io`
- URL: `https://qstash-eu-central-1.upstash.io/v2/logs`
- Auth: one of:
  - HTTP bearer
  - API key in query parameter `qstash_token`
- TypeScript: <https://skmtc.dev/upstash/apis/qstash-rest-api/docs/v2/logs/get.ts> (a function with typed inputs; its response is checked against the schema)

Paginate through logs of published messages

## Query parameters

- `cursor` string
- `messageId` string
- `state` 'CREATED' | 'ACTIVE' | 'RETRY' | 'ERROR' | 'IN_PROGRESS' | 'DELIVERED' | 'CANCEL_REQUESTED' | 'CANCELLED'
- `url` string
- `topicName` string
- `scheduleId` string
- `queueName` string
- `fromDate` integer
- `toDate` integer
- `count` integer
- `label` string[]

## Response `200`

List of logs

- object
  - `cursor` string: A cursor which you can use in subsequent requests to paginate through all logs. If no cursor is returned, you have reached the end of the logs.
  - `logs` LogEntry[]
    - `time` integer: The timestamp of the log entry in Unix milliseconds
    - `messageId` string: The message ID associated with the log entry
    - `header` object: The headers of the message.
    - `body` string: Base64 encoded body of the message.
    - `state` 'CREATED' | 'ACTIVE' | 'RETRY' | 'ERROR' | 'DELIVERED' | 'FAILED' | 'CANCEL_REQUESTED' | 'CANCELLED': The state of the message at the time of the log entry.
    - `error` string: The error message if the log entry corresponds to an error state.
    - `nextDeliveryTime` integer: The next scheduled time of the message. (Unix timestamp in milliseconds)
    - `url` string: The URL to which the message is being delivered.
    - `topicName` string: The URL Group (a.k.a. topic) name if this message was sent to a URL Group.
    - `endpointName` string: The endpoint name of the message if the endpoint is given a name within the URL group.
    - `scheduleId` string: The scheduleId of the message if the message is triggered by a schedule
    - `queueName` string: The name of the queue if the message is enqueued to a queue.
    - `responseStatus` integer: The status code of the response. Only set if the state is ERROR
    - `responseBody` string: The base64 encoded body of the response. Only set if the state is ERROR
    - `responseHeaders` object: The headers of the response. Only set if the state is ERROR
    - `timeout` integer: The timeout(in milliseconds) of the outgoing http requests, after which Qstash cancels the request
    - `method` string: HTTP method of the message for outgoing request
    - `callback` string: Callback is the URL address where QStash sends the response of a publish
    - `callbackHeaders` object: The headers sent to the callback URL
    - `failureCallback` string: Failur eCallback is the URL address where QStash sends the response of a failed message after all retries are exhausted
    - `failureCallbackHeaders` object: The headers sent to the failure callback URL
    - `maxRetries` integer: The maximum number of retries for the message
    - `retryDelayExpression` string: The retry delay expression used for calculating retry delays
    - `label` string: The label assigned to the message. Deprecated in favor of `labels`.
    - `labels` string[]: The list of labels assigned to the message.

## Changes

- **2026-06-09** `d30bd0904328`: 3 info
  - for the `query` request parameter `label`, the type was generalized from `string` to `array`
  - added the optional property `logs/items/labels` to the response with the `200` status
  - response property `logs/items/label` deprecated
- **2026-06-09** `d859c277ced2`: 1 warning, 2 info
  - removed the optional property `logs/items/labels` from the response with the `200` status
  - for the `query` request parameter `label`, the type was generalized from `array` to `string`
  - response property `logs/items/label` reactivated
- **2026-05-15** `75ecd1c6fb73`: 3 info
  - for the `query` request parameter `label`, the type was generalized from `string` to `array`
  - added the optional property `logs/items/labels` to the response with the `200` status
  - response property `logs/items/label` deprecated
- **2026-03-17** `4ef567cf4b77`: 1 warning
  - deleted the `query` request parameter `order`

[Operation history](https://skmtc.dev/upstash/apis/qstash-rest-api/changes/v2/logs/get.md)

---

[API](https://skmtc.dev/upstash/apis/qstash-rest-api.md) - [All operations](https://skmtc.dev/upstash/apis/qstash-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/upstash/apis/qstash-rest-api/revisions/0c3b83ef4770?raw)
