Remove a template from the curated gallery
Returns a curated template to workspace scope and clears its curation timestamp while leaving it published. Requires `templates:curate` in the owning workspace. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
apiKeyAuthorizationBearer <snoze_sk_…>Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.
workspaceId*stringtemplateId*stringapplication/json- body
Success
application/json- response
data*curl -X POST 'https://api.snoze.dev/v1/workspaces/string/templates/string/uncurate' \ -H 'Content-Type: application/json' \ -d '{}'{ "data": { "id": "string", "workspaceId": "string", "name": "string", "description": "string", "cover": "string", "icon": "string", "kind": "folder", "sourceItemId": "string", "scope": "builtin", "visibility": "private", "reviewStatus": "draft", "installCount": 0, "author": { "workspaceId": "string", "name": "string", "icon": "string" }, "category": "string", "tags": [ "string" ], "inputs": [ { "id": "string", "kind": "database", "label": "string", "description": "string", "placeholder": "string", "required": true, "dependsOn": "string", "choices": [ { "value": "string", "label": "string" } ], "default": "string" } ], "version": 0, "manifest": { "version": 2, "inputs": [ { "id": "string", "kind": "database", "label": "string", "description": "string", "placeholder": "string", "required": true, "dependsOn": "string", "choices": [ { "value": "string", "label": "string" } ], "default": "string" } ], "rootSourceItemId": "string", "rootKind": "folder", "operations": [ { "type": "item.create", "sourceItemId": "string", "parentSourceItemId": "string", "title": "string", "icon": "string", "color": "string", "order": 0, "accessMode": "open", "locked": true, "archived": true, "metadata": {}, "kind": "folder", "sourceTargetId": "string" } ] }, "publishedAt": "string", "curatedAt": "string", "submittedAt": "string", "reviewNote": "string", "createdBy": "string", "createdAt": "string", "updatedAt": "string" }}Promote a template into the curated gallery
Snapshots a listing version and marks the template as curated, which also makes it public and approved so the result does not depend on the order the verbs were called in; category and tags may be set at the same time. Requires `templates:curate` in the owning workspace. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.
Create workspace items from a template
Builds the template's manifest into the calling workspace, filling declared inputs from `answers` and placing the new root under `parentItemId`, then records the instantiation and increments the template's install count. Requires `resources:write` in the target workspace; a public template can be instantiated from any workspace, while a private one additionally requires `resources:read` on the workspace that owns it. Templates that create many records are also checked against the workspace's record allowance. Send an `Idempotency-Key` header to make retries safe; a replay within the window returns the original response.