---
title: "List Scaffolds"
method: GET
path: "/v1/public/templates/scaffolds"
tags: ["Public Templates API", "Public Scaffolds"]
---

# List Scaffolds

`GET /v1/public/templates/scaffolds`

List available scaffold templates (public, no auth required).

Scaffolds are pre-configured templates that create complete infrastructure:
- Namespace with feature extractors
- Bucket with data schema
- Collection with processing config
- Retriever with search pipeline

**Categories:**
- `media` - Video, image, podcast search
- `documents` - Document Q&A, RAG
- `ecommerce` - Product catalog search

**To instantiate (requires auth):**
```
POST /v1/templates/scaffolds/{template_id}/instantiate
{"namespace_name": "my_app"}
```

## Query parameters

- `category` string, nullable — Filter by category (media, documents, ecommerce)
- `is_active` boolean — Only show active templates

## Response `200`

Successful Response

- BaseTemplateModel[]
  - `template_id` string, required — Unique template identifier (e.g., 'tmpl_semantic_search')
  - `template_type` 'namespace' | 'retriever' | 'cluster' | 'collection' | 'bucket' | 'taxonomy' | 'scaffold', required — Types of resources that can be templated.
  - `mode` 'scaffold' | 'config' | 'clone' — Mode of template instantiation. scaffold: Create from pre-built preset - Creates: namespace + bucket + collection + retriever - Endpoint: POST /templates/scaffolds/{id}/instantiate - All resources empty, ready for data config: Copy resource configuration only - Creates: empty resource with same settings - Endpoint: POST /templates/{resource}/{id}/instantiate - No data copied clone: Copy resource with all data - Creates: full copy including vectors/embeddings - Endpoint: POST /namespaces/{id}/clone - For config-only, use templates instead
  - `scope` 'system' | 'organization' | 'user' | 'public', required — Scope of template availability. system: Mixpeek-provided, available to all orgs organization: Private to org members user: Private to creator only public: User-created, discoverable by all orgs (marketplace)
  - `internal_id` string, required — Organization internal ID. For system templates, use 'system'. For org templates, use the actual internal_id.
  - `name` string, required — Human-readable template name
  - `description` string, required — Detailed description of the template's purpose
  - `category` string, nullable — Optional category for organizing templates
  - `configuration` object, required — Template-specific configuration (varies by template_type)
  - `tags` string[] — Tags for categorizing and filtering templates
  - `is_active` boolean — Whether this template is available for use
  - `is_public` boolean — Whether this template is publicly discoverable without authentication
  - `use_cases` string[] — List of common use cases for this template
  - `requirements` string[] — List of requirements (e.g., 'Requires text embeddings')
  - `created_by` string, nullable — User ID who created this template (for org templates)
  - `source_resource_id` string, nullable — ID of the resource this template was created from (for org templates)
  - `sample_namespace_id` string, nullable — Reference to a sample/golden namespace for this scaffold (used for Studio quickstart cloning)
  - `example_queries` string[] — Runnable example queries for this template's sample data; the first renders on the card
  - `whats_inside` string, nullable — One-sentence description of the sample corpus (what you get, with counts)
  - `materialize_estimate` string, nullable — Honest time estimate for sample data to become searchable after instantiate
  - `created_at` string, date-time — Timestamp when template was created
  - `updated_at` string, date-time — Timestamp when template was last updated

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Validation Error
- `500` — Internal Server Error

---

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