---
title: "List templates"
method: GET
path: "/v3/templates"
tags: ["templates"]
---

# List templates

`GET /v3/templates`

List templates with cursor-based pagination. Returns templates in descending order by update time.

## Query parameters

- `projectId` string
- `limit` integer
- `cursor` string
- `displayMode` 'email' | 'web' | 'document'
- `name` string

## Response `200`

Default Response

- object
  - `data` object[], required
    - `id` string — Template ID
    - `name` string — Template name
    - `displayMode` 'email' | 'web' | 'document' — Template type/display mode
    - `createdAt` string, date-time
    - `updatedAt` string, date-time
  - `next_cursor` string, nullable — Cursor for the next page. Null if no more results.
  - `has_more` boolean, required — Whether there are more results after this page

## Other responses

- `400` — Default Response
- `401` — Default Response
- `403` — Default Response
- `404` — Default Response

## Changes

- **2026-02-20** `14707e371ca6` — 1 info
  - the `query` request parameter `projectId` became optional
- **2026-02-16** `e77bc881d5cb` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/unlayer/apis/unlayer-api/changes/v3/templates/get.md)

---

[API](https://skmtc.dev/unlayer/apis/unlayer-api.md) · [All operations](https://skmtc.dev/unlayer/apis/unlayer-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/unlayer/unlayer-api/revisions/48f00d1c04c2/schema)
