---
title: "GET /orgs/{org_id}/templates"
method: GET
path: "/orgs/{org_id}/templates"
tags: ["templates"]
---

# GET /orgs/{org_id}/templates

`GET /orgs/{org_id}/templates`

Public project template catalog available to this organization.

## Path parameters

- `org_id` string, required

## Response `200`

Published public project templates

- ListTemplatesResBody
  - `templates` ProjectTemplate[], required
    - `created_at` integer, required — Creation timestamp in epoch milliseconds.
    - `description` string, nullable — Short description of what the template provides.
    - `has_ui` boolean, required — Whether the template includes a web UI.
    - `id` string, required — Project id to pass as `project_id` when creating from this template.
    - `name` string, required — Template display name.
    - `screenshot_signed_url` string, nullable — CloudFront-signed screenshot URL, minted per response (TTL-bound). Present only for Timbal-hosted screenshots (private prefix) when signing is configured. To put a template banner on a public/cacheable surface (e.g. the timbal.ai marketing site), copy the object to a public prefix (`orgs/{org_id}/assets/...`) and serve that unsigned instead.
    - `screenshot_url` string, nullable — **Deprecated:** prefer `screenshot_signed_url` when present.
    - `search_text` string, nullable — Text corpus used for semantic similarity matching when recommending templates.
    - `template_description` string, nullable — Public-facing description shown in the template catalog.
    - `template_uses` integer, required — Number of times this template has been instantiated.

## Other responses

- `403` — Forbidden

---

[API](https://skmtc.net/timbal-ai/apis/timbal-platform-api.md) · [All operations](https://skmtc.net/timbal-ai/apis/timbal-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/timbal-ai/timbal-platform-api/revisions/dd7e398ce0d3/schema)
