---
title: "Provision Docs Search"
method: POST
path: "/v1/quickstart/docs-search"
tags: ["Quickstart"]
---

# Provision Docs Search

`POST /v1/quickstart/docs-search`

One-call provisioning of a complete documentation search pipeline. Creates a namespace, bucket, web crawl collection, retriever with semantic + code search, publishes it, and generates a scoped API key. Returns everything needed to embed the search widget.

## Request body

- DocsSearchRequest — Request to provision a docs search pipeline.
  - `site_url` string, required — Root URL of the documentation site to crawl.
  - `site_name` string, required — Human-readable name for the docs site.
  - `include_patterns` string[] — URL patterns to include (regex). Empty means include all.
  - `exclude_patterns` string[] — URL patterns to exclude (regex).
  - `namespace_id` string, nullable — Existing namespace ID. If not provided, one will be created.
  - `options` DocsSearchOptions — Optional configuration for docs search setup.
    - `enable_image_search` boolean — Enable SigLIP image embeddings for diagram/screenshot search.
    - `enable_code_search` boolean — Enable Jina Code embeddings for code-aware search.
    - `max_pages` integer — Maximum pages to crawl.
    - `max_depth` integer — Maximum crawl depth from seed URL.
    - `chunk_strategy` string — Text chunking strategy.
    - `chunk_size` integer — Chunk size in units of chunk_strategy.
    - `render_strategy` string — Page rendering strategy: static, javascript, or auto.

## Response `200`

Successful Response

- DocsSearchResponse — Response after provisioning a docs search pipeline.
  - `project_key` string, required — Retriever-scoped API key (ret_sk_...) for widget authentication.
  - `public_name` string, required — Public retriever name for API access.
  - `retriever_id` string, required — ID of the created retriever.
  - `collection_id` string, required — ID of the web crawl collection.
  - `batch_id` string, nullable — ID of the crawl batch (if processing started).
  - `namespace_id` string, required — Namespace ID for all resources.
  - `bucket_id` string, required — Bucket ID where seed URLs are stored.
  - `embed_snippet` string, required — HTML snippet for drop-in integration.
  - `react_snippet` string, required — React component snippet.

## 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/versions/23e05292e326/schema)
