---
title: "GET /api/v1/agent-vault/sessions/{sessionId}/logs"
method: GET
path: "/api/v1/agent-vault/sessions/{sessionId}/logs"
tags: ["Agent Vault Session Logs"]
---

# GET /api/v1/agent-vault/sessions/{sessionId}/logs

`GET /api/v1/agent-vault/sessions/{sessionId}/logs`

## Request

- Base URL: `https://us.infisical.com`
- URL: `https://us.infisical.com/api/v1/agent-vault/sessions/{sessionId}/logs`
- Auth: none declared

Lists a session's logs newest first, as encrypted chunks of [records](/documentation/platform/agent-vault/session-logs#what-gets-recorded). To decrypt them, follow [Reading session logs through the API](/documentation/platform/agent-vault/session-logs#reading-session-logs-through-the-api). To follow new logs as they arrive, use [the endpoint that tails session logs](/api-reference/endpoints/agent-vault-session-logs/tail). If Infisical can't read session logs, the request fails with the error `AgentVaultSessionLogStorageUnavailable`.

## Path parameters

- `sessionId` string, uuid, required

## Query parameters

- `cursor` string
- `from` string, date-time
- `to` string, date-time

## Response `200`

Default Response

- object
  - `sessionLogs` object, required: Whether session logs are on, whether this session can be recorded, and the key that decrypts the chunks.
    - `enabled` boolean, required: Whether session logs are on.
    - `isRecordable` boolean, required: False if this session's requests can't be recorded.
    - `sessionKey` string, nullable, required: The key that decrypts every chunk in this response, as base64. Null if the response has no chunks.
    - `disabledReason` 'off' | 'not-on-plan', nullable, required: Why no logs are returned: `off` when session logs are off, `not-on-plan` when the plan doesn't include the storage they use. Null when logs are returned.
    - `storageType` 'default' | 'external', nullable, required: Where this session's logs are read from: `default` or `external`. Null when session logs are off.
  - `chunks` object[], required
    - `chunkId` string, required: The ID of the chunk.
    - `proxyId` string, required: The ID of the proxy that uploaded the chunk.
    - `ciphertextBytes` number, required: The size of the encrypted chunk in bytes.
    - `presignedGetUrl` string, required: The URL to download the chunk from.
  - `nextCursor` string, nullable, required: Pass this as `cursor` to get older logs. Null when there's nothing older. A page can have no chunks and still have a `nextCursor`.

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `422`: Default Response
- `500`: Default Response

## Changes

- **2026-10-23** `0bf8518a0cd0`: 2 info
  - added the required property `sessionLogs/disabledReason` to the response with the `200` status
  - added the required property `sessionLogs/storageType` to the response with the `200` status
- **2026-10-13** `0e8b7eae9f94`: 12 breaking, 1 warning, 1 info
  - removed the required property `chunks/items/ciphertextSha256` from the response with the `200` status
  - removed the required property `chunks/items/createdAt` from the response with the `200` status
  - removed the required property `chunks/items/droppedCount` from the response with the `200` status
  - removed the required property `chunks/items/endedAt` from the response with the `200` status
  - …10 more
- **2026-09-30** `b1861c910818`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/infisical/apis/infisical-api/changes/api/v1/agent-vault/sessions/:sessionId/logs/get.md)

---

[API](https://skmtc.dev/infisical/apis/infisical-api.md) - [All operations](https://skmtc.dev/infisical/apis/infisical-api/llms.txt) - [OpenAPI document](https://skmtc.dev/infisical/apis/infisical-api/revisions/7f940199c899?raw)
