---
title: "List app templates"
method: GET
path: "/api/v1/apps/templates"
tags: ["Raff Apps"]
---

# List app templates

`GET /api/v1/apps/templates`

## Request

- Base URL: `https://api.rafftechnologies.com`
- URL: `https://api.rafftechnologies.com/api/v1/apps/templates`
- Auth: API key in header `X-API-Key`

Ready apps you can deploy in one step (n8n, Metabase, Uptime Kuma and
more). Create one with `source_type` `template`, the template's
`image_ref`, `http_port` and `health_check_path`, a size of at least
`min_tier_id`, and its `env` (replace `{url}` with the app's address).
Templates with `database:postgres` in `companions` use a Postgres
database: link one with `link_database_id`.

## Response `200`

Templates

- object
  - `success` boolean
  - `templates` AppTemplate[]
    - `id` string
    - `name` string
    - `description` string
    - `category` string
    - `service_type` string
    - `image_ref` string
    - `builder` string
    - `default_tier_id` integer
    - `min_tier_id` integer: Smallest size the template runs on (0 = any)
    - `http_port` integer
    - `health_check_path` string: The page that answers once the app is ready
    - `companions` string[], nullable: `database:postgres` when the template uses Postgres
    - `database_optional` boolean: With a Postgres companion, the template also runs without one (its data stays inside the app)
    - `env` object, nullable: Settings the template needs to start; `{url}` stands for the app's address
    - `popular` boolean

## Other responses

- `401`: Authentication required

## Changes

- **2026-10-19** `e80a4b1b5024`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rafftechnologies/apis/raff-api/changes/api/v1/apps/templates/get.md)

---

[API](https://skmtc.dev/rafftechnologies/apis/raff-api.md) - [All operations](https://skmtc.dev/rafftechnologies/apis/raff-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rafftechnologies/apis/raff-api/revisions/3d30cde0acb4?raw)
