# List collections

> GET /v1/memory/collections

`GET https://api.zavu.dev/v1/memory/collections`

## Parameters

- `limit` (query, integer)
- `cursor` (query, string)

## Responses

### 200

Collections in the project.

- `items` (object[], required)
  - `name` (string, required)
  - `indexes` (object[], required): Fields that `POST /v1/memory/collections/{collection}/query` can filter on. Immutable after creation.
    - `field` (string, required)
  - `defaultTtlSeconds` (integer, required, nullable): TTL applied to items written without their own `ttlSeconds`. Null means items are kept until deleted.
  - `status` (string, required): `active`, or `deleting` while a delete drains in the background.
  - `createdAt` (string<date-time>, required)
  - `updatedAt` (string<date-time>, required)
- `nextCursor` (string, nullable)

### 401

Unauthorized.

- `code` (string, required)
- `message` (string, required)
- `details` (object)

## Example

```bash
curl -X GET "https://api.zavu.dev/v1/memory/collections" \
  -H "Authorization: Bearer $ZAVUDEV_API_KEY"
```

```typescript
import Zavudev from "@zavudev/sdk";

const zavu = new Zavudev({ apiKey: process.env.ZAVUDEV_API_KEY });

const result = await zavu.memory.collections.list();

console.log(result);
```
