List Templates

Browse the public template gallery across all workspaces. Returns only templates that have an active published snapshot (`is_public=true`, `published_definition` set, not unpublished). Results come from any workspace — the gallery is intentionally cross-workspace so callers can discover shared starting points regardless of their own workspace membership. Does not require `X-Workspace-Id`, so callers without a workspace (e.g. during onboarding) can still browse. The response reflects the published snapshot for each row, not any unpublished draft edits. Dual-auth: Bearer JWT or API key (scope `templates:read`).

Authentication

AuthorizationBearer
Clerk JWT token
OR
AuthorizationBearer

Onepin live API key (op_live_...). Test and public keys are reserved in Phase 1.

Query parameters

categorylist of enums or nullOptional

Filter by category. Repeat the parameter for OR logic, e.g. ?category=media&category=creative.

Allowed values:
searchstring or nullOptional<=100 characters

Full-text search over template name and description.

sortenumOptionalDefaults to recent

Sort order: recent (last published), popular (most cloned), or name (alphabetical).

Allowed values:
offsetintegerOptional>=0Defaults to 0

Zero-based offset for page navigation.

limitintegerOptional1-100Defaults to 20

Maximum number of templates to return (1–100).

favorites_onlybooleanOptionalDefaults to false

Response

Successful Response
datalist of objects
metaobject
paginationobject

Errors

422
Unprocessable Entity Error