---
title: "List Folders"
method: GET
path: "/folders"
tags: ["Templates"]
---

# List Folders

`GET /folders`

## Request

- Base URL: `https://app.lettr.com/api`
- URL: `https://app.lettr.com/api/folders`
- Auth: HTTP bearer

Retrieve a paginated list of the folders in a project, so a template can be filed into the right one.

Folder IDs are what `folder_id` on `POST /templates` expects. Folders belong to a module: a `transactional` folder holds the templates you send single emails with, a `campaign` folder holds the ones the campaign builder can pick. A template's folder must belong to the same module as its `purpose`.

## Query parameters

- `project_id` integer
- `purpose` 'transactional' | 'campaign'
- `per_page` integer
- `page` integer

## Response `200`

Folders retrieved successfully

- ListFoldersResponse: Response containing a paginated list of folders
  - `message` string, required: Human-readable response message
  - `data` object, required
    - `folders` FolderView[], required: List of folders
      - `id` integer, required: Unique identifier for the folder. This is what `folder_id` on `POST /templates` expects.
      - `name` string, required: Name of the folder
      - `project_id` integer, required: ID of the project containing this folder
      - `purpose` 'transactional' | 'campaign', required: Module the folder belongs to. A template can only be filed into a folder of its own module.
      - `templates_count` integer, required: Number of templates in this folder
      - `created_at` string, date-time, required: When the folder was created
      - `updated_at` string, date-time, required: When the folder was last updated
    - `pagination` FoldersPagination, required: Pagination information for folders list
      - `total` integer, required: Total number of folders
      - `per_page` integer, required: Number of folders per page
      - `current_page` integer, required: Current page number
      - `last_page` integer, required: Last page number

## Other responses

- `401`: Unauthorized
- `404`: Project not found or no default project configured
- `422`: Validation error
- `503`: Service unavailable - the API key could not be verified, so the request was not processed. This does not mean the key is invalid; retry after the delay given in the Retry-After header.

---

[API](https://skmtc.dev/lettr/apis/lettr-api.md) · [All operations](https://skmtc.dev/lettr/apis/lettr-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lettr/apis/lettr-api/revisions/48ef0dac1ebd?raw)
