---
title: "List library collections"
method: GET
path: "/library/collections"
tags: ["Library"]
---

# List library collections

`GET /library/collections`

## Request

- Base URL: `https://elicit.com/api/v2`
- URL: `https://elicit.com/api/v2/library/collections`
- Auth: HTTP bearer

Returns the collections you own and the collections shared with you, sorted by name with id as a tie-breaker. `role` is your access level. `sharedVia` is set on collections shared with you. `links.sources` lists the sources in the collection.

Send `nextCursor` as `cursor` to get the next page. Pagination is not a snapshot: renaming a collection can move it between pages, and deleting or losing access to the cursor's collection returns `400 invalid_request`. Restart from the first page if the cursor is no longer valid.

### Example

```bash
curl https://elicit.com/api/v2/library/collections \
  -H "Authorization: Bearer elk_live_your_key_here"
```

## Query parameters

- `cursor` string, uuid: Pagination cursor from a previous response's nextCursor.
- `limit` integer

## Response `200`

One page of collections.

- ListLibraryCollectionsResponse
  - `collections` LibraryCollection[], required
    - `id` string, uuid, required
    - `name` string, required
    - `description` string, required
    - `role` 'owner' | 'writer' | 'reader', required: Your access level. A reader can view the collection. A writer can also add and remove sources and edit the name and description. An owner can also delete the collection and change who it is shared with.
    - `kind` 'personal' | 'group', required: `personal`: never shared; lists your own sources. `group`: has been shared at least once; owns copies of its sources, and stays a group collection.
    - `sharedVia` 'direct' | 'organization': `direct` if the owner shared the collection with you. `organization` if the owner shared it with your organization. Absent on your own collections.
    - `sourceCount` integer, required
    - `links` object, required
      - `self` string, required: API URL of this collection.
      - `sources` string, required: URL listing the sources in this collection.
  - `nextCursor` string, nullable, required
  - `totalCount` integer, required

## Other responses

- `400`: A malformed id, or an unknown or invalid query parameter.
- `401`: Authentication failed. The API key is missing, invalid, revoked, or expired.
- `403`: API access is not available on your current plan. Upgrade to Pro or above to use the API.
- `429`: Rate limit exceeded. More than 100 requests per minute were received from your IP address; further requests are blocked for 5 minutes.
- `500`: An unexpected error occurred. Retry reads with backoff; before retrying a write, check whether it took effect. See Error Handling for retry guidance.

## Changes

- **2026-10-13** `27c80b9a3470`: 4 info
  - added the optional property `error/details` to the response with the `400` status
  - added the optional property `error/details` to the response with the `401` status
  - added the optional property `error/details` to the response with the `403` status
  - added the optional property `error/details` to the response with the `500` status
- **2026-09-27** `9b5b75b828ab`: 4 info
  - added the optional property `error/sessionId` to the response with the `400` status
  - added the optional property `error/sessionId` to the response with the `401` status
  - added the optional property `error/sessionId` to the response with the `403` status
  - added the optional property `error/sessionId` to the response with the `500` status
- **2026-09-15** `69b6844982c1`: 1 warning, 2 info
  - added the new `writer` enum value to the `collections/items/role` response property for the response status `200`
  - added the optional property `collections/items/sharedVia` to the response with the `200` status
  - added the required property `collections/items/kind` to the response with the `200` status
- **2026-09-11** `acdbab329322`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/elicit/apis/elicit-api/changes/library/collections/get.md)

---

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