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

# List Session resources

> List resources attached to a Session.

`GET /api/v1/cloud/sessions/{session_id}/resources`

Retrieves Session resources with cursor pagination.

## Path parameters

| Parameter    | Type   | Description                        |
| ------------ | ------ | ---------------------------------- |
| `session_id` | string | Session ID with the `sess_` prefix |

## Query parameters

| Parameter   | Type    | Required | Description                                                                                                          |
| ----------- | ------- | -------- | -------------------------------------------------------------------------------------------------------------------- |
| `limit`     | integer | No       | Maximum number of resources to return. Default 20, range 1-100. Values above 100 return `400 invalid_request_error`. |
| `page`      | string  | No       | Opaque cursor from a previous response's `next_page`. Mutually exclusive with `before_id` and `after_id`             |
| `before_id` | string  | No       | Return resources ordered before this resource ID. Mutually exclusive with `page` and `after_id`                      |
| `after_id`  | string  | No       | Return resources ordered after this resource ID. Mutually exclusive with `page` and `before_id`                      |

## Headers

| Header          | Required | Description         |
| --------------- | -------- | ------------------- |
| `Authorization` | Yes      | `Bearer $QODER_PAT` |

## Example request

```bash theme={null}
curl https://api.qoder.com/api/v1/cloud/sessions/sess_019e392c0d1e74e095d21ea4c6b41def/resources \
  -H "Authorization: Bearer $QODER_PAT"
```

## Response fields

| Field       | Type           | Description                                                     |
| ----------- | -------------- | --------------------------------------------------------------- |
| `data`      | array          | Array of Session resource objects                               |
| `has_more`  | boolean        | Whether more pages exist beyond this result set                 |
| `first_id`  | string \| null | ID of the first resource in this page                           |
| `last_id`   | string \| null | ID of the last resource in this page                            |
| `next_page` | string \| null | Opaque cursor for the next page; pass as `page` query parameter |

## Example response

**HTTP 200 OK**

```json theme={null}
{
  "data": [
    {
      "id": "sesr_0e4323e8f47ba34853f5409e",
      "type": "file",
      "file_id": "file_019ef2a07a06704fb899908c29eed779",
      "mount_path": "/mnt/session/uploads/file_019ef2a07a06704fb899908c29eed779",
      "created_at": "2026-06-23T05:53:19.77484Z",
      "updated_at": "2026-06-23T05:53:38.185714Z"
    }
  ],
  "first_id": "sesr_0e4323e8f47ba34853f5409e",
  "last_id": "sesr_0e4323e8f47ba34853f5409e",
  "has_more": false,
  "next_page": null
}
```

See [Session resource](/cloud-agents/api/sessions/schemas#session-resource) for resource shapes.

## Errors

| HTTP | Type                    | Trigger                                                                                                       |
| ---- | ----------------------- | ------------------------------------------------------------------------------------------------------------- |
| 400  | `invalid_request_error` | Invalid `limit` (non-integer or non-positive), or simultaneously providing `page` with `before_id`/`after_id` |
| 401  | `authentication_error`  | PAT invalid or expired                                                                                        |
| 404  | `not_found_error`       | Session does not exist                                                                                        |

**HTTP 404 Not Found**

```json theme={null}
{
  "type": "error",
  "request_id": "cb80235f-76a2-4ff3-9e28-5aa2da12dc14",
  "error": {
    "type": "not_found_error",
    "message": "Session 'sess_does_not_exist_xxxxxxxxxxxxxxxxxxxxxxx' was not found."
  }
}
```

See [Errors](/cloud-agents/api/conventions/errors) for the full error envelope.
