Creates all resources defined in the manifest file in dependency order.
Modes:
create_only (default) — fails if any resource already exists.
create_missing — creates what is missing, leaves what exists alone, and resolves
manifest references against the resources ALREADY in the namespace. This is what makes
“here is a namespace with buckets, add these collections over them” work. Under
create_only a reference to an undeclared-but-existing bucket is a validation error,
because the manifest is treated as a closed world.
Plan first: before creating anything, apply runs the same checks as
POST /v1/manifest/validate. Any error refuses the whole manifest with
success: false, every resource skipped, and each error naming the
resource, the field and the fix. Nothing is created. A namespace budget above
the organization’s bound is set to the bound and reported as a warning.
Features:
Topological sorting ensures resources are created in correct dependency order
Secret references (${{ secrets.NAME }}) are resolved from organization secrets
Atomic operation: rolls back all created resources if any creation fails, and
an apply whose process is stopped part way is rolled back when the API starts again
Mixpeek API key, sent as Authorization: Bearer mxp_sk_.... Create one in Studio under Settings → API Keys, or with an admin key via POST /v1/organizations/users/{user_email}/api-keys. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.
Run the plan only: the same checks as POST /v1/manifest/validate, returned as errors and warnings, with nothing created. Each resource reads would_create, or exists when it is already there. Under mode create_only an existing resource refuses the plan, as it would refuse the apply
Wait up to this many seconds after the resources are created for every Ray Serve app a declared collection needs to be RUNNING (the apps listed in readiness). Past the deadline the result has success false and an error naming the deadline and each app not RUNNING; the resources stay in place. Omit to return as soon as the resources exist.
After the resources exist, wait until every seed: batch has finished (COMPLETED, COMPLETED_WITH_ERRORS, FAILED or CANCELED), within deadline_seconds or 900 seconds when that is omitted. Each batch's status and documents_written are returned in seed_batches; one that failed or did not finish in time is also named in errors. success still reports resource creation only
Implies wait_for_seed and also waits for the Serve apps in readiness. Then runs the manifest's acceptance: steps in order and returns each in acceptance with passed, expected, observed and error. A step that could not run (deadline reached, seed batch failed, Serve apps not RUNNING) is passed false with the reason. The steps are normal executions in your organization and are billed like any query or inference call; acceptance.max_cost_usd is checked against the meter before each step and at the end. Re-apply with mode=create_missing to re-run the steps on a namespace that already exists without creating anything. A manifest with no acceptance: block is refused with 400
create_only (default): fail if any resource already exists. create_missing: create what is missing and leave what exists alone, which is what lets a manifest be applied to an EXISTING namespace. create_missing does not UPDATE anything — a resource that exists but differs from the manifest is reported as exists and left untouched. upsert: create what is missing AND patch what exists but differs, so re-applying a manifest brings the running resources back to what it declares. Each resource is patched only through its own update surface, so a field that surface does not accept, or refuses the value of, is reported in refused with the resource and the field named, and the rest of the manifest still applies. Explicit on purpose: this is the only mode that CHANGES resources that already exist.
JSON object of values for the manifest's declared parameters, e.g. {"camera_url": "rtsp://host/stream", "polling_seconds": 300}. Each value must match its declared type. Omit when the manifest declares none.
On a dry run, the number of resources the real apply would create. Resources that already exist are reported with status exists and are not counted here. Always 0 on a real apply.
Resources that existed, differed, and were PATCHED to match. Only ever non-zero under upsert. Counted separately because without it an upsert that changed five running resources reports created 0, failed 0, skipped 0, a summary that reads as nothing having happened.
Non-fatal issues found while PARSING the manifest, chiefly keys the parser had to drop. the parser already detects these and /validate and /lint already surface them, but /apply computed them and threw them away — so anyone applying without validating first got a 201 and no hint that part of their manifest was ignored. A collection-level field_passthrough: is the case that cost a customer POC: detected, described, discarded.
Whether a rollback was ATTEMPTED after a failure. this used to read as 'the namespace was returned to its prior state', which it does not mean — rollback deletes only namespaces and buckets today, so any other resource created before the failure SURVIVES. Read rollback_orphans to find out what is still there.
Resources created before the failure that rollback did NOT delete, as '/'. Non-empty means the namespace is in a PARTIAL state and a straight retry will hit AlreadyExists on these. previously these were silently skipped while rollback_performed=true claimed otherwise, which is the state that had to be unpicked by hand on the Radio-Canada POC.
The apply's task: GET /v1/tasks/{task_id} returns every resource of the plan with its states in order (planned, creating, created, exists, updated or failed with the finding; for a collection, warming or ready), each with the time it was reached. Absent on a dry run
For each collection the manifest declares whose extractor needs Ray Serve applications for real-time inference: whether each one is served, read once from the live Serve list after apply. realtime_available true means every app is RUNNING. An app scaled to zero replicas is still RUNNING; its first call answers 503 with Retry-After (code model_warming) while it warms, so retry after that many seconds. Empty for collections whose extractor needs no Serve app.
With wait_for_seed or run_acceptance: each seed: batch and where it stood when apply stopped waiting. A batch that failed or did not finish in time also appears in errors. success still reports resource creation only
With run_acceptance: the outcome of each acceptance: step. acceptance.passed false means the namespace exists but its use case did not prove out; success still reports resource creation only, and a failed run is also named in errors
On a successful real apply: for each retriever the manifest declares, its execute URL, a curl that queries it and its Studio page. Empty on a dry run, a failed apply, or a manifest with no retrievers
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Mixpeek","colors":{"primary":"#FC5185","light":"#FFA0BD","dark":"#364F6B"},"logo":{"light":"https://mintcdn.com/mixpeek/QQyAGObvvz8PjpE0/logo/light.png?fit=max\u0026auto=format\u0026n=QQyAGObvvz8PjpE0\u0026q=85\u0026s=ac5ab550180057404fe833886513775f","dark":"https://mintcdn.com/mixpeek/QQyAGObvvz8PjpE0/logo/dark.png?fit=max\u0026auto=format\u0026n=QQyAGObvvz8PjpE0\u0026q=85\u0026s=e18979c495dbd68be4fc44473098773e"},"favicon":"https://mintcdn.com/mixpeek/QQyAGObvvz8PjpE0/favicon.png?fit=max\u0026auto=format\u0026n=QQyAGObvvz8PjpE0\u0026q=85\u0026s=8be5d2f6dc7e4cb44127a0493d57cde1","api":{"openapi":"api-reference/openapi.json","mdx":{"auth":{"method":"bearer","name":"Authorization"},"server":["https://api.mixpeek.com"]}},"background":{"image":"https://mintcdn.com/mixpeek/QQyAGObvvz8PjpE0/images/background.png?fit=max\u0026auto=format\u0026n=QQyAGObvvz8PjpE0\u0026q=85\u0026s=a68d0aa9f5eba448bcf67f5f410a6c90","color":{"dark":"#121212"}},"navbar":{"links":[{"href":"https://mixpeek.com/contact","label":"Talk to Engineers"}],"primary":{"type":"button","label":"Use Mixpeek","href":"https://studio.mixpeek.com/?utm_source=docs\u0026utm_medium=docs_navbar\u0026utm_campaign=mvs_onramp"}},"footer":{"socials":{"website":"https://mixpeek.com/","github":"https://github.com/mixpeek"}},"integrations":{"posthog":{"apiKey":"phc_x1G3IrW97qXoodTPWbyBK8dbZ3H7x5k5aZPCXmRvuWw","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["view","claude","chatgpt","cursor","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Homepage","icon":"house","href":"https://mixpeek.com"},{"anchor":"Engineering Blog","icon":"newspaper","href":"https://mixpeek.com/blog"},{"anchor":"API Swagger","icon":"file-code","href":"https://api.mixpeek.com/docs"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"mixpeek","hasAudioNarration":false,"actualSubdomain":"mixpeek","customDomains":["docs.mixpeek.com"],"gitSource":{"type":"github","owner":"mixpeek","repo":"mixpeek","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":false,"issues":false},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aeff52f552e9ea17aa8eeb5","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API Reference","count":536},{"language":"default","tag":"Documentation","count":195},{"language":"default","tag":"Advanced","count":140},{"language":"default","tag":"Administer","count":77},{"language":"default","tag":"Buckets","count":70},{"language":"default","tag":"Organization","count":62},{"language":"default","tag":"Retrievers","count":61},{"language":"default","tag":"Integrate \u0026 operate","count":59},{"language":"default","tag":"Build retrievers","count":55},{"language":"default","tag":"Apps","count":53}]},"assistantConfig":{"deflection":{"enabled":true,"email":"ethan@mixpeek.com"}},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/manifest/apply-manifest","slug":"/api-reference/manifest/apply-manifest","pageMetadata":{"openapi":"post /v1/manifest/apply","title":"Apply Manifest","description":"Apply a YAML manifest to create resources.\n\nCreates all resources defined in the manifest file in dependency order.\n\n**Modes:**\n- `create_only` (default) — fails if any resource already exists.\n- `create_missing` — creates what is missing, leaves what exists alone, and resolves\n manifest references against the resources ALREADY in the namespace. This is what makes\n \"here is a namespace with buckets, add these collections over them\" work. Under\n `create_only` a reference to an undeclared-but-existing bucket is a validation error,\n because the manifest is treated as a closed world.\n\n**Plan first:** before creating anything, apply runs the same checks as\n`POST /v1/manifest/validate`. Any error refuses the whole manifest with\n`success: false`, every resource `skipped`, and each error naming the\nresource, the field and the fix. Nothing is created. A namespace budget above\nthe organization's bound is set to the bound and reported as a warning.\n\n**Features:**\n- Topological sorting ensures resources are created in correct dependency order\n- Secret references (`${{ secrets.NAME }}`) are resolved from organization secrets\n- Atomic operation: rolls back all created resources if any creation fails, and\n an apply whose process is stopped part way is rolled back when the API starts again\n- Dry run returns the plan without making changes\n\n**Example:**\n```bash\ncurl -X POST /v1/manifest/apply \\\n -H \"Authorization: Bearer $API_KEY\" \\\n -H \"X-Namespace: ns_xxx\" \\\n -F \"manifest_file=@mixpeek.yaml\"\n```\n\n**Example manifest:**\n```yaml\nversion: \"1.0\"\nmetadata:\n name: \"my-environment\"\n\nnamespaces:\n - name: video_search\n feature_extractors:\n - name: multimodal_extractor\n version: v1\n\nbuckets:\n - name: raw_videos\n namespace: video_search\n schema:\n properties:\n video: { type: video }\n```","href":"/api-reference/manifest/apply-manifest"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n pre: \"pre\",\n span: \"span\",\n strong: \"strong\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n }, {CodeBlock} = _components;\n if (!CodeBlock) _missingMdxReference(\"CodeBlock\", true);\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Apply a YAML manifest to create resources.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Creates all resources defined in the manifest file in dependency order.\"\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Modes:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"create_only\"\n }), \" (default) — fails if any resource already exists.\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"create_missing\"\n }), \" — creates what is missing, leaves what exists alone, and resolves\\nmanifest references against the resources ALREADY in the namespace. This is what makes\\n“here is a namespace with buckets, add these collections over them” work. Under\\n\", _jsx(_components.code, {\n children: \"create_only\"\n }), \" a reference to an undeclared-but-existing bucket is a validation error,\\nbecause the manifest is treated as a closed world.\"]\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Plan first:\"\n }), \" before creating anything, apply runs the same checks as\\n\", _jsx(_components.code, {\n children: \"POST /v1/manifest/validate\"\n }), \". Any error refuses the whole manifest with\\n\", _jsx(_components.code, {\n children: \"success: false\"\n }), \", every resource \", _jsx(_components.code, {\n children: \"skipped\"\n }), \", and each error naming the\\nresource, the field and the fix. Nothing is created. A namespace budget above\\nthe organization’s bound is set to the bound and reported as a warning.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Features:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Topological sorting ensures resources are created in correct dependency order\"\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"Secret references (\", _jsx(_components.code, {\n children: \"${{ secrets.NAME }}\"\n }), \") are resolved from organization secrets\"]\n }), \"\\n\", _jsx(_components.li, {\n children: \"Atomic operation: rolls back all created resources if any creation fails, and\\nan apply whose process is stopped part way is rolled back when the API starts again\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Dry run returns the plan without making changes\"\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Example:\"\n })\n }), \"\\n\", _jsx(CodeBlock, {\n numberOfLines: \"4\",\n language: \"shellscript\",\n children: _jsx(_components.pre, {\n className: \"shiki shiki-themes github-light-default dark-plus\",\n style: {\n backgroundColor: \"#ffffff\",\n \"--shiki-dark-bg\": \"#0B0C0E\",\n color: \"#1f2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n language: \"shellscript\",\n children: _jsxs(_components.code, {\n language: \"shellscript\",\n numberOfLines: \"4\",\n children: [_jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#953800\",\n \"--shiki-dark\": \"#DCDCAA\"\n },\n children: \"curl\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0550AE\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" -X\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \" POST\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \" /v1/manifest/apply\"\n }), _jsx(_components.span, {\n style: {\n color: \"#CF222E\",\n \"--shiki-dark\": \"#D7BA7D\"\n },\n children: \" \\\\\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#0550AE\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" -H\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \" \\\"Authorization: Bearer \"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#9CDCFE\"\n },\n children: \"$API_KEY\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"\\\"\"\n }), _jsx(_components.span, {\n style: {\n color: \"#CF222E\",\n \"--shiki-dark\": \"#D7BA7D\"\n },\n children: \" \\\\\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#0550AE\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" -H\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \" \\\"X-Namespace: ns_xxx\\\"\"\n }), _jsx(_components.span, {\n style: {\n color: \"#CF222E\",\n \"--shiki-dark\": \"#D7BA7D\"\n },\n children: \" \\\\\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#0550AE\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" -F\"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \" \\\"manifest_file=@mixpeek.yaml\\\"\"\n })]\n }), \"\\n\"]\n })\n })\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Example manifest:\"\n })\n }), \"\\n\", _jsx(CodeBlock, {\n numberOfLines: \"16\",\n language: \"yaml\",\n children: _jsx(_components.pre, {\n className: \"shiki shiki-themes github-light-default dark-plus\",\n style: {\n backgroundColor: \"#ffffff\",\n \"--shiki-dark-bg\": \"#0B0C0E\",\n color: \"#1f2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n language: \"yaml\",\n children: _jsxs(_components.code, {\n language: \"yaml\",\n numberOfLines: \"16\",\n children: [_jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"version\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"\\\"1.0\\\"\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"metadata\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" name\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"\\\"my-environment\\\"\"\n })]\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\"\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"namespaces\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \" - \"\n }), _jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"name\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"video_search\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" feature_extractors\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \" - \"\n }), _jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"name\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"multimodal_extractor\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" version\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"v1\"\n })]\n }), \"\\n\", _jsx(_components.span, {\n className: \"line\"\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"buckets\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \" - \"\n }), _jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"name\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"raw_videos\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" namespace\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"video_search\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" schema\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" properties\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \":\"\n })]\n }), \"\\n\", _jsxs(_components.span, {\n className: \"line\",\n children: [_jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \" video\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": { \"\n }), _jsx(_components.span, {\n style: {\n color: \"#116329\",\n \"--shiki-dark\": \"#569CD6\"\n },\n children: \"type\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \": \"\n }), _jsx(_components.span, {\n style: {\n color: \"#0A3069\",\n \"--shiki-dark\": \"#CE9178\"\n },\n children: \"video\"\n }), _jsx(_components.span, {\n style: {\n color: \"#1F2328\",\n \"--shiki-dark\": \"#D4D4D4\"\n },\n children: \" }\"\n })]\n }), \"\\n\"]\n })\n })\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\nfunction _missingMdxReference(id, component) {\n throw new Error(\"Expected \" + (component ? \"component\" : \"object\") + \" `\" + id + \"` to be defined: you likely forgot to import, pass, or provide it.\");\n}\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /v1/manifest/apply","title":"Apply Manifest","description":"Apply a YAML manifest to create resources.\n\nCreates all resources defined in the manifest file in dependency order.\n\n**Modes:**\n- `create_only` (default) — fails if any resource already exists.\n- `create_missing` — creates what is missing, leaves what exists alone, and resolves\n manifest references against the resources ALREADY in the namespace. This is what makes\n \"here is a namespace with buckets, add these collections over them\" work. Under\n `create_only` a reference to an undeclared-but-existing bucket is a validation error,\n because the manifest is treated as a closed world.\n\n**Plan first:** before creating anything, apply runs the same checks as\n`POST /v1/manifest/validate`. Any error refuses the whole manifest with\n`success: false`, every resource `skipped`, and each error naming the\nresource, the field and the fix. Nothing is created. A namespace budget above\nthe organization's bound is set to the bound and reported as a warning.\n\n**Features:**\n- Topological sorting ensures resources are created in correct dependency order\n- Secret references (`${{ secrets.NAME }}`) are resolved from organization secrets\n- Atomic operation: rolls back all created resources if any creation fails, and\n an apply whose process is stopped part way is rolled back when the API starts again\n- Dry run returns the plan without making changes\n\n**Example:**\n```bash\ncurl -X POST /v1/manifest/apply \\\n -H \"Authorization: Bearer $API_KEY\" \\\n -H \"X-Namespace: ns_xxx\" \\\n -F \"manifest_file=@mixpeek.yaml\"\n```\n\n**Example manifest:**\n```yaml\nversion: \"1.0\"\nmetadata:\n name: \"my-environment\"\n\nnamespaces:\n - name: video_search\n feature_extractors:\n - name: multimodal_extractor\n version: v1\n\nbuckets:\n - name: raw_videos\n namespace: video_search\n schema:\n properties:\n video: { type: video }\n```","href":"/api-reference/manifest/apply-manifest"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/mixpeek/fd427c04b3bf84bb/custom.js","/docs/_mintlify/custom/mixpeek/e878da59c725dc0d/scripts/test_first_touch.js"],"openApiReferenceData":{"operation":{"tags":["Manifest"],"summary":"Apply Manifest","description":"Apply a YAML manifest to create resources.\n\nCreates all resources defined in the manifest file in dependency order.\n\n**Modes:**\n- `create_only` (default) — fails if any resource already exists.\n- `create_missing` — creates what is missing, leaves what exists alone, and resolves\n manifest references against the resources ALREADY in the namespace. This is what makes\n \"here is a namespace with buckets, add these collections over them\" work. Under\n `create_only` a reference to an undeclared-but-existing bucket is a validation error,\n because the manifest is treated as a closed world.\n\n**Plan first:** before creating anything, apply runs the same checks as\n`POST /v1/manifest/validate`. Any error refuses the whole manifest with\n`success: false`, every resource `skipped`, and each error naming the\nresource, the field and the fix. Nothing is created. A namespace budget above\nthe organization's bound is set to the bound and reported as a warning.\n\n**Features:**\n- Topological sorting ensures resources are created in correct dependency order\n- Secret references (`${{ secrets.NAME }}`) are resolved from organization secrets\n- Atomic operation: rolls back all created resources if any creation fails, and\n an apply whose process is stopped part way is rolled back when the API starts again\n- Dry run returns the plan without making changes\n\n**Example:**\n```bash\ncurl -X POST /v1/manifest/apply \\\n -H \"Authorization: Bearer $API_KEY\" \\\n -H \"X-Namespace: ns_xxx\" \\\n -F \"manifest_file=@mixpeek.yaml\"\n```\n\n**Example manifest:**\n```yaml\nversion: \"1.0\"\nmetadata:\n name: \"my-environment\"\n\nnamespaces:\n - name: video_search\n feature_extractors:\n - name: multimodal_extractor\n version: v1\n\nbuckets:\n - name: raw_videos\n namespace: video_search\n schema:\n properties:\n video: { type: video }\n```","operationId":"apply_manifest_v1_manifest_apply_post","parameters":["029ad78f-fdab-430e-aa7c-482d903e601f","a137ae71-87f3-4171-9f2a-defbf88cdf68","afd41eb9-2b90-4e69-9d8c-a9d006fe5c88","e3abcc89-4713-4c98-8473-f5810f51eec8","87540c0e-0911-41f7-9bbb-9850ca8128ca"],"requestBody":"5673b18e-e2f9-4a67-88f4-a3ae9df89c2b","responses":{"200":"22128606-a888-4413-a11a-c09df98451aa","400":"07de9bec-770e-4395-91df-a475525da8b6","401":"3686099b-299a-4d5d-8292-a19897a4925a","403":"574ce47c-029d-4731-b79c-25fbcbe72099","404":"56b894aa-8918-4772-9613-910e61e2234a","422":"15047a1f-fc62-40ed-afba-7f51a296ed31","429":"68c6e288-52d6-49c3-be96-71d3faf8b51d","500":"67d6f983-3da2-49ef-a9da-47ee6bf00345","503":"0d935e75-bad8-4f4a-8c87-1be2c63c7be9"},"x-mixpeek-plan":{"minimum_tier":null,"requires_selected_plan":false,"permissions":["write"]},"security":["a99408df-c81f-4024-9efe-dc3db6d166dc"],"method":"post","type":"path","servers":["a3ca4d02-9041-4306-8eae-afdf7d554be4"],"path":"/v1/manifest/apply","baseUrlOptions":["https://api.mixpeek.com"],"title":"Apply Manifest","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"029ad78f-fdab-430e-aa7c-482d903e601f":{"name":"dry_run","in":"query","required":false,"schema":{"type":"boolean","description":"Run the plan only: the same checks as POST /v1/manifest/validate, returned as errors and warnings, with nothing created. Each resource reads `would_create`, or `exists` when it is already there. Under mode create_only an existing resource refuses the plan, as it would refuse the apply","default":false,"title":"Dry Run","isRequired":false,"uniqueKey":"","typeLabel":"boolean"},"description":"Run the plan only: the same checks as POST /v1/manifest/validate, returned as errors and warnings, with nothing created. Each resource reads `would_create`, or `exists` when it is already there. Under mode create_only an existing resource refuses the plan, as it would refuse the apply"},"a137ae71-87f3-4171-9f2a-defbf88cdf68":{"name":"deadline_seconds","in":"query","required":false,"schema":{"oneOf":[{"type":"number","title":"Deadline Seconds","description":"Wait up to this many seconds after the resources are created for every Ray Serve app a declared collection needs to be RUNNING (the apps listed in `readiness`). Past the deadline the result has success false and an error naming the deadline and each app not RUNNING; the resources stay in place. Omit to return as soon as the resources exist.","maximum":1800,"minimum":1,"uniqueKey":"oneOf.0","typeLabel":"number"},{"type":"null","title":"Deadline Seconds","description":"Wait up to this many seconds after the resources are created for every Ray Serve app a declared collection needs to be RUNNING (the apps listed in `readiness`). Past the deadline the result has success false and an error naming the deadline and each app not RUNNING; the resources stay in place. Omit to return as soon as the resources exist.","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"number | null"},"description":"Wait up to this many seconds after the resources are created for every Ray Serve app a declared collection needs to be RUNNING (the apps listed in `readiness`). Past the deadline the result has success false and an error naming the deadline and each app not RUNNING; the resources stay in place. Omit to return as soon as the resources exist."},"afd41eb9-2b90-4e69-9d8c-a9d006fe5c88":{"name":"wait_for_seed","in":"query","required":false,"schema":{"type":"boolean","description":"After the resources exist, wait until every `seed:` batch has finished (COMPLETED, COMPLETED_WITH_ERRORS, FAILED or CANCELED), within deadline_seconds or 900 seconds when that is omitted. Each batch's status and documents_written are returned in `seed_batches`; one that failed or did not finish in time is also named in `errors`. `success` still reports resource creation only","default":false,"title":"Wait For Seed","isRequired":false,"uniqueKey":"","typeLabel":"boolean"},"description":"After the resources exist, wait until every `seed:` batch has finished (COMPLETED, COMPLETED_WITH_ERRORS, FAILED or CANCELED), within deadline_seconds or 900 seconds when that is omitted. Each batch's status and documents_written are returned in `seed_batches`; one that failed or did not finish in time is also named in `errors`. `success` still reports resource creation only"},"e3abcc89-4713-4c98-8473-f5810f51eec8":{"name":"run_acceptance","in":"query","required":false,"schema":{"type":"boolean","description":"Implies wait_for_seed and also waits for the Serve apps in `readiness`. Then runs the manifest's `acceptance:` steps in order and returns each in `acceptance` with passed, expected, observed and error. A step that could not run (deadline reached, seed batch failed, Serve apps not RUNNING) is passed false with the reason. The steps are normal executions in your organization and are billed like any query or inference call; `acceptance.max_cost_usd` is checked against the meter before each step and at the end. Re-apply with mode=create_missing to re-run the steps on a namespace that already exists without creating anything. A manifest with no `acceptance:` block is refused with 400","default":false,"title":"Run Acceptance","isRequired":false,"uniqueKey":"","typeLabel":"boolean"},"description":"Implies wait_for_seed and also waits for the Serve apps in `readiness`. Then runs the manifest's `acceptance:` steps in order and returns each in `acceptance` with passed, expected, observed and error. A step that could not run (deadline reached, seed batch failed, Serve apps not RUNNING) is passed false with the reason. The steps are normal executions in your organization and are billed like any query or inference call; `acceptance.max_cost_usd` is checked against the meter before each step and at the end. Re-apply with mode=create_missing to re-run the steps on a namespace that already exists without creating anything. A manifest with no `acceptance:` block is refused with 400"},"87540c0e-0911-41f7-9bbb-9850ca8128ca":{"name":"mode","in":"query","required":false,"schema":{"type":"string","enum":["create_only","create_missing","upsert"],"title":"ApplyMode","description":"create_only (default): fail if any resource already exists. create_missing: create what is missing and leave what exists alone, which is what lets a manifest be applied to an EXISTING namespace. create_missing does not UPDATE anything — a resource that exists but differs from the manifest is reported as `exists` and left untouched. upsert: create what is missing AND patch what exists but differs, so re-applying a manifest brings the running resources back to what it declares. Each resource is patched only through its own update surface, so a field that surface does not accept, or refuses the value of, is reported in `refused` with the resource and the field named, and the rest of the manifest still applies. Explicit on purpose: this is the only mode that CHANGES resources that already exist.","default":"create_only","isRequired":false,"uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"create_only (default): fail if any resource already exists. create_missing: create what is missing and leave what exists alone, which is what lets a manifest be applied to an EXISTING namespace. create_missing does not UPDATE anything — a resource that exists but differs from the manifest is reported as `exists` and left untouched. upsert: create what is missing AND patch what exists but differs, so re-applying a manifest brings the running resources back to what it declares. Each resource is patched only through its own update surface, so a field that surface does not accept, or refuses the value of, is reported in `refused` with the resource and the field named, and the rest of the manifest still applies. Explicit on purpose: this is the only mode that CHANGES resources that already exist."}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"properties":{"manifest_file":{"type":"string","contentMediaType":"application/octet-stream","title":"Manifest File","description":"YAML manifest file","isRequired":true,"uniqueKey":"manifest_file","typeLabel":"file"},"parameters":{"oneOf":[{"type":"string","title":"Parameters","description":"JSON object of values for the manifest's declared parameters, e.g. {\"camera_url\": \"rtsp://host/stream\", \"polling_seconds\": 300}. Each value must match its declared type. Omit when the manifest declares none.","uniqueKey":"parameters.oneOf.0","typeLabel":"string"},{"type":"null","title":"Parameters","description":"JSON object of values for the manifest's declared parameters, e.g. {\"camera_url\": \"rtsp://host/stream\", \"polling_seconds\": 300}. Each value must match its declared type. Omit when the manifest declares none.","uniqueKey":"parameters.oneOf.1","typeLabel":"null"}],"uniqueKey":"parameters","typeLabel":"string | null"}},"type":"object","required":["manifest_file"],"title":"Body_apply_manifest_v1_manifest_apply_post","uniqueKey":"","typeLabel":"Body_apply_manifest_v1_manifest_apply_post · object"},"examples":{"Example":{"title":"Example","value":{"manifest_file":"\u003cstring>","parameters":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"22128606-a888-4413-a11a-c09df98451aa":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"success":{"type":"boolean","title":"Success","description":"Whether all resources were created successfully","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"resources":{"items":{"properties":{"resource_type":{"type":"string","title":"Resource Type","description":"Type of resource (namespace, bucket, etc.)","isRequired":true,"uniqueKey":"resources.items.[INDEX].resource_type","typeLabel":"string"},"name":{"type":"string","title":"Name","description":"Resource name from manifest","isRequired":true,"uniqueKey":"resources.items.[INDEX].name","typeLabel":"string"},"status":{"type":"string","enum":["created","skipped","failed","exists","drifted","updated","would_create","pending"],"title":"ResourceResultStatus","description":"What apply did to this resource. `created` and `skipped` are what they sound like. `would_create` appears only on a dry run, for a resource the real apply would create. `exists` means it was already what the manifest declares. `drifted` means it differs and still does. `updated` means apply patched it. `pending` means the resource exists but waits on something apply cannot do itself, named in `pending_reason`. READ `updated` WITH `refused`: a resource can be `updated` AND carry refused fields, because apply patches what the update surface accepts and reports the rest. `updated` on its own does not mean every declared field was applied, and a caller that treats it as reconciled will report a partly-applied manifest as complete.","isRequired":true,"uniqueKey":"resources.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"resource_id":{"oneOf":[{"type":"string","title":"Resource Id","description":"Created resource ID","uniqueKey":"resources.items.[INDEX].resource_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Resource Id","description":"Created resource ID","uniqueKey":"resources.items.[INDEX].resource_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].resource_id","typeLabel":"string | null"},"error":{"oneOf":[{"type":"string","title":"Error","description":"Error message if failed","uniqueKey":"resources.items.[INDEX].error.oneOf.0","typeLabel":"string"},{"type":"null","title":"Error","description":"Error message if failed","uniqueKey":"resources.items.[INDEX].error.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].error","typeLabel":"string | null"},"generated_for":{"oneOf":[{"type":"string","title":"Generated For","description":"Present when the manifest did not declare this resource itself: the name of the taxonomy whose inline labels generated it (its label bucket, collection, retriever or seed). Edit the taxonomy's labels to change it.","uniqueKey":"resources.items.[INDEX].generated_for.oneOf.0","typeLabel":"string"},{"type":"null","title":"Generated For","description":"Present when the manifest did not declare this resource itself: the name of the taxonomy whose inline labels generated it (its label bucket, collection, retriever or seed). Edit the taxonomy's labels to change it.","uniqueKey":"resources.items.[INDEX].generated_for.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].generated_for","typeLabel":"string | null"},"pending_reason":{"oneOf":[{"type":"string","title":"Pending Reason","description":"Present when status is `pending`: what the resource waits for and what happens when it arrives.","uniqueKey":"resources.items.[INDEX].pending_reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Pending Reason","description":"Present when status is `pending`: what the resource waits for and what happens when it arrives.","uniqueKey":"resources.items.[INDEX].pending_reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].pending_reason","typeLabel":"string | null"},"drift":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"resources.items.[INDEX].drift.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Drift","description":"Fields the manifest DECLARES that differ from the live resource. Present when status is `drifted`, and ALSO on an `updated` resource, where it is HISTORICAL: the record of what apply changed, not a difference that is still there. A caller that renders any non-empty value as 'differs' will announce the opposite of what happened on every patched row. Named rather than counted: 'collection c1 differs: schedule' is actionable, 'exists' is not. Only fields the manifest explicitly set are compared — an omitted field asserts nothing, and treating an omission as drift would make every apply drift on server-set defaults.","example":["schedule","feature_extractor"],"uniqueKey":"resources.items.[INDEX].drift.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Drift","description":"Fields the manifest DECLARES that differ from the live resource. Present when status is `drifted`, and ALSO on an `updated` resource, where it is HISTORICAL: the record of what apply changed, not a difference that is still there. A caller that renders any non-empty value as 'differs' will announce the opposite of what happened on every patched row. Named rather than counted: 'collection c1 differs: schedule' is actionable, 'exists' is not. Only fields the manifest explicitly set are compared — an omitted field asserts nothing, and treating an omission as drift would make every apply drift on server-set defaults.","example":["schedule","feature_extractor"],"uniqueKey":"resources.items.[INDEX].drift.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].drift","typeLabel":"string[] | null"},"refused":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"resources.items.[INDEX].refused.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Refused","description":"Fields the manifest declares, and that DIFFER, which apply would not change. Present under `upsert` when the resource's own update surface does not accept a field or refuses the value. A refusal is reported per field rather than as a failed apply: the rest of the manifest still applies, and the caller learns exactly which resource and which field to take up by hand. A bucket's schema is the standing example — it is patchable through the API and a destructive change is refused, so upsert does not route around that guard.","example":["budget_limits"],"uniqueKey":"resources.items.[INDEX].refused.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Refused","description":"Fields the manifest declares, and that DIFFER, which apply would not change. Present under `upsert` when the resource's own update surface does not accept a field or refuses the value. A refusal is reported per field rather than as a failed apply: the rest of the manifest still applies, and the caller learns exactly which resource and which field to take up by hand. A bucket's schema is the standing example — it is patchable through the API and a destructive change is refused, so upsert does not route around that guard.","example":["budget_limits"],"uniqueKey":"resources.items.[INDEX].refused.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].refused","typeLabel":"string[] | null"},"drift_not_compared":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"resources.items.[INDEX].drift_not_compared.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Drift Not Compared","description":"Fields the manifest declares that could NOT be compared, because the live resource has no corresponding key. Reported rather than dropped: a field silently excluded from the comparison is indistinguishable from one that matched, and that is the exact ambiguity `drifted` exists to remove.","uniqueKey":"resources.items.[INDEX].drift_not_compared.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Drift Not Compared","description":"Fields the manifest declares that could NOT be compared, because the live resource has no corresponding key. Reported rather than dropped: a field silently excluded from the comparison is indistinguishable from one that matched, and that is the exact ambiguity `drifted` exists to remove.","uniqueKey":"resources.items.[INDEX].drift_not_compared.oneOf.1","typeLabel":"null"}],"uniqueKey":"resources.items.[INDEX].drift_not_compared","typeLabel":"string[] | null"}},"type":"object","required":["resource_type","name","status"],"title":"ResourceResult","description":"Result of applying a single resource.","examples":[{"name":"video_search","resource_id":"ns_abc123","resource_type":"namespace","status":"created"}],"uniqueKey":"resources.items.[INDEX]","typeLabel":"ResourceResult · object"},"type":"array","title":"Resources","description":"Results for each resource","uniqueKey":"resources","typeLabel":"ResourceResult · object[]"},"created_count":{"type":"integer","title":"Created Count","description":"Number of resources created","default":0,"uniqueKey":"created_count","typeLabel":"integer"},"failed_count":{"type":"integer","title":"Failed Count","description":"Number of resources that failed","default":0,"uniqueKey":"failed_count","typeLabel":"integer"},"skipped_count":{"type":"integer","title":"Skipped Count","description":"Number of resources skipped","default":0,"uniqueKey":"skipped_count","typeLabel":"integer"},"would_create_count":{"type":"integer","title":"Would Create Count","description":"On a dry run, the number of resources the real apply would create. Resources that already exist are reported with status `exists` and are not counted here. Always 0 on a real apply.","default":0,"uniqueKey":"would_create_count","typeLabel":"integer"},"updated_count":{"type":"integer","title":"Updated Count","description":"Resources that existed, differed, and were PATCHED to match. Only ever non-zero under `upsert`. Counted separately because without it an upsert that changed five running resources reports created 0, failed 0, skipped 0, a summary that reads as nothing having happened.","default":0,"uniqueKey":"updated_count","typeLabel":"integer"},"errors":{"items":{"type":"string","uniqueKey":"errors.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Errors","description":"Error messages","uniqueKey":"errors","typeLabel":"string[]"},"warnings":{"items":{"type":"string","uniqueKey":"warnings.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Warnings","description":"Non-fatal issues found while PARSING the manifest, chiefly keys the parser had to drop. the parser already detects these and /validate and /lint already surface them, but /apply computed them and threw them away — so anyone applying without validating first got a 201 and no hint that part of their manifest was ignored. A collection-level `field_passthrough:` is the case that cost a customer POC: detected, described, discarded.","uniqueKey":"warnings","typeLabel":"string[]"},"rollback_performed":{"type":"boolean","title":"Rollback Performed","description":"Whether a rollback was ATTEMPTED after a failure. this used to read as 'the namespace was returned to its prior state', which it does not mean — rollback deletes only namespaces and buckets today, so any other resource created before the failure SURVIVES. Read `rollback_orphans` to find out what is still there.","default":false,"uniqueKey":"rollback_performed","typeLabel":"boolean"},"rollback_orphans":{"items":{"type":"string","uniqueKey":"rollback_orphans.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Rollback Orphans","description":"Resources created before the failure that rollback did NOT delete, as '\u003ctype>/\u003cid>'. Non-empty means the namespace is in a PARTIAL state and a straight retry will hit AlreadyExists on these. previously these were silently skipped while rollback_performed=true claimed otherwise, which is the state that had to be unpicked by hand on the Radio-Canada POC.","uniqueKey":"rollback_orphans","typeLabel":"string[]"},"dry_run":{"type":"boolean","title":"Dry Run","description":"Whether this was a dry run (no changes made)","default":false,"uniqueKey":"dry_run","typeLabel":"boolean"},"task_id":{"oneOf":[{"type":"string","title":"Task Id","description":"The apply's task: GET /v1/tasks/{task_id} returns every resource of the plan with its states in order (planned, creating, created, exists, updated or failed with the finding; for a collection, warming or ready), each with the time it was reached. Absent on a dry run","uniqueKey":"task_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Task Id","description":"The apply's task: GET /v1/tasks/{task_id} returns every resource of the plan with its states in order (planned, creating, created, exists, updated or failed with the finding; for a collection, warming or ready), each with the time it was reached. Absent on a dry run","uniqueKey":"task_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"task_id","typeLabel":"string | null"},"readiness":{"items":{"properties":{"collection":{"type":"string","title":"Collection","description":"Collection name from the manifest","isRequired":true,"uniqueKey":"readiness.items.[INDEX].collection","typeLabel":"string"},"feature_extractor":{"type":"string","title":"Feature Extractor","description":"Registry extractor id the collection runs, e.g. text_extractor_v1","isRequired":true,"uniqueKey":"readiness.items.[INDEX].feature_extractor","typeLabel":"string"},"realtime_available":{"oneOf":[{"type":"boolean","title":"Realtime Available","description":"true when every Serve app below is RUNNING, false when one is absent or not RUNNING, null when the live Serve list could not be read","uniqueKey":"readiness.items.[INDEX].realtime_available.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Realtime Available","description":"true when every Serve app below is RUNNING, false when one is absent or not RUNNING, null when the live Serve list could not be read","uniqueKey":"readiness.items.[INDEX].realtime_available.oneOf.1","typeLabel":"null"}],"uniqueKey":"readiness.items.[INDEX].realtime_available","typeLabel":"boolean | null"},"serve_apps":{"items":{"properties":{"name":{"type":"string","title":"Name","description":"Ray Serve application name, as the engine deploys it.","isRequired":true,"uniqueKey":"readiness.items.[INDEX].serve_apps.items.[INDEX].name","typeLabel":"string"},"status":{"type":"string","title":"Status","description":"Live status of that application on the deployment serving this request. A Ray Serve status such as 'RUNNING', 'DEPLOYING' or 'UNHEALTHY'; 'absent' when the deployment does not serve it; 'unconfigured' when it runs but the deployment lacks the model provider's key or credentials; 'unknown' when the live list could not be read.","isRequired":true,"uniqueKey":"readiness.items.[INDEX].serve_apps.items.[INDEX].status","typeLabel":"string"}},"type":"object","required":["name","status"],"title":"ServeAppStatus","description":"One Ray Serve application an extractor needs, with its live status.","uniqueKey":"readiness.items.[INDEX].serve_apps.items.[INDEX]","typeLabel":"ServeAppStatus · object"},"type":"array","title":"Serve Apps","description":"Each Ray Serve application the extractor needs, with its status","uniqueKey":"readiness.items.[INDEX].serve_apps","typeLabel":"ServeAppStatus · object[]"}},"type":"object","required":["collection","feature_extractor"],"title":"CollectionReadiness","description":"Whether one collection's real-time inference is served after apply.","uniqueKey":"readiness.items.[INDEX]","typeLabel":"CollectionReadiness · object"},"type":"array","title":"Readiness","description":"For each collection the manifest declares whose extractor needs Ray Serve applications for real-time inference: whether each one is served, read once from the live Serve list after apply. `realtime_available` true means every app is RUNNING. An app scaled to zero replicas is still RUNNING; its first call answers 503 with Retry-After (code model_warming) while it warms, so retry after that many seconds. Empty for collections whose extractor needs no Serve app.","uniqueKey":"readiness","typeLabel":"CollectionReadiness · object[]"},"seed_batches":{"items":{"properties":{"bucket":{"type":"string","title":"Bucket","description":"Bucket name the seed ingested into","isRequired":true,"uniqueKey":"seed_batches.items.[INDEX].bucket","typeLabel":"string"},"batch_id":{"type":"string","title":"Batch Id","description":"The seed batch's id","isRequired":true,"uniqueKey":"seed_batches.items.[INDEX].batch_id","typeLabel":"string"},"status":{"type":"string","title":"Status","description":"The batch status when apply stopped waiting: COMPLETED, COMPLETED_WITH_ERRORS, FAILED, CANCELED, PROCESSING and so on. UNKNOWN when the batch could not be read","isRequired":true,"uniqueKey":"seed_batches.items.[INDEX].status","typeLabel":"string"},"terminal":{"type":"boolean","title":"Terminal","description":"true when the batch finished, whether or not it succeeded","isRequired":true,"uniqueKey":"seed_batches.items.[INDEX].terminal","typeLabel":"boolean"},"usable":{"type":"boolean","title":"Usable","description":"true when the batch finished COMPLETED or COMPLETED_WITH_ERRORS, so its documents can be queried","isRequired":true,"uniqueKey":"seed_batches.items.[INDEX].usable","typeLabel":"boolean"},"documents_written":{"oneOf":[{"type":"integer","title":"Documents Written","description":"Documents the batch wrote, when the batch reports it","uniqueKey":"seed_batches.items.[INDEX].documents_written.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Documents Written","description":"Documents the batch wrote, when the batch reports it","uniqueKey":"seed_batches.items.[INDEX].documents_written.oneOf.1","typeLabel":"null"}],"uniqueKey":"seed_batches.items.[INDEX].documents_written","typeLabel":"integer | null"},"failed_objects":{"oneOf":[{"type":"integer","title":"Failed Objects","description":"Objects the batch could not process","uniqueKey":"seed_batches.items.[INDEX].failed_objects.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Failed Objects","description":"Objects the batch could not process","uniqueKey":"seed_batches.items.[INDEX].failed_objects.oneOf.1","typeLabel":"null"}],"uniqueKey":"seed_batches.items.[INDEX].failed_objects","typeLabel":"integer | null"},"error":{"oneOf":[{"type":"string","title":"Error","description":"Why the batch could not be read","x-mixpeek-redacted":"driver_text","uniqueKey":"seed_batches.items.[INDEX].error.oneOf.0","typeLabel":"string"},{"type":"null","title":"Error","description":"Why the batch could not be read","x-mixpeek-redacted":"driver_text","uniqueKey":"seed_batches.items.[INDEX].error.oneOf.1","typeLabel":"null"}],"uniqueKey":"seed_batches.items.[INDEX].error","typeLabel":"string | null"}},"type":"object","required":["bucket","batch_id","status","terminal","usable"],"title":"SeedBatchStatus","description":"Where one `seed:` batch stands, read while apply waits for it.","uniqueKey":"seed_batches.items.[INDEX]","typeLabel":"SeedBatchStatus · object"},"type":"array","title":"Seed Batches","description":"With wait_for_seed or run_acceptance: each `seed:` batch and where it stood when apply stopped waiting. A batch that failed or did not finish in time also appears in `errors`. `success` still reports resource creation only","uniqueKey":"seed_batches","typeLabel":"SeedBatchStatus · object[]"},"acceptance":{"oneOf":[{"type":"object","title":"AcceptanceResult","description":"With run_acceptance: the outcome of each `acceptance:` step. `acceptance.passed` false means the namespace exists but its use case did not prove out; `success` still reports resource creation only, and a failed run is also named in `errors`","required":["passed"],"properties":{"passed":{"type":"boolean","title":"Passed","description":"true only when every step, and the cost check, passed","isRequired":true,"uniqueKey":"acceptance.oneOf.0.passed","typeLabel":"boolean"},"steps":{"items":{"properties":{"name":{"type":"string","title":"Name","description":"Step name from the manifest","isRequired":true,"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].name","typeLabel":"string"},"kind":{"type":"string","title":"Kind","description":"query, documents, alert or realtime, as the manifest declares; `cost` for the max_cost_usd check that closes the run","isRequired":true,"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].kind","typeLabel":"string"},"passed":{"type":"boolean","title":"Passed","description":"true only when the step ran and every expected outcome held. A step that could not run (deadline reached, seed batch failed, resource missing, cost cap reached) is false, with `error` saying why","isRequired":true,"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].passed","typeLabel":"boolean"},"expected":{"additionalProperties":true,"type":"object","title":"Expected","description":"The step's `expect` fields as declared","uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].expected","typeLabel":"Expected · object"},"observed":{"oneOf":[{"type":"object","title":"Observed","description":"What the step measured, e.g. results and top_value for a query, documents for a collection, fires for an alert, dims for a realtime call, spent_usd for the cost check. null when it did not run","additionalProperties":true,"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].observed.oneOf.0","typeLabel":"Observed · object"},{"type":"null","title":"Observed","description":"What the step measured, e.g. results and top_value for a query, documents for a collection, fires for an alert, dims for a realtime call, spent_usd for the cost check. null when it did not run","uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].observed.oneOf.1","typeLabel":"null"}],"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].observed","typeLabel":"Observed · object | null"},"error":{"oneOf":[{"type":"string","title":"Error","description":"Why the step failed or could not run","x-mixpeek-redacted":"driver_text","uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].error.oneOf.0","typeLabel":"string"},{"type":"null","title":"Error","description":"Why the step failed or could not run","x-mixpeek-redacted":"driver_text","uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].error.oneOf.1","typeLabel":"null"}],"uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX].error","typeLabel":"string | null"}},"type":"object","required":["name","kind","passed"],"title":"AcceptanceStepResult","description":"The outcome of one `acceptance:` step.","uniqueKey":"acceptance.oneOf.0.steps.items.[INDEX]","typeLabel":"AcceptanceStepResult · object"},"type":"array","title":"Steps","description":"Each step in manifest order","uniqueKey":"acceptance.oneOf.0.steps","typeLabel":"AcceptanceStepResult · object[]"}},"uniqueKey":"acceptance.oneOf.0","typeLabel":"AcceptanceResult · object"},{"type":"null","description":"With run_acceptance: the outcome of each `acceptance:` step. `acceptance.passed` false means the namespace exists but its use case did not prove out; `success` still reports resource creation only, and a failed run is also named in `errors`","uniqueKey":"acceptance.oneOf.1","typeLabel":"null"}],"uniqueKey":"acceptance","typeLabel":"AcceptanceResult · object | null"},"next_steps":{"items":{"properties":{"retriever":{"type":"string","title":"Retriever","description":"Retriever name from the manifest","isRequired":true,"uniqueKey":"next_steps.items.[INDEX].retriever","typeLabel":"string"},"retriever_id":{"type":"string","title":"Retriever Id","description":"The retriever's id","isRequired":true,"uniqueKey":"next_steps.items.[INDEX].retriever_id","typeLabel":"string"},"execute_url":{"type":"string","title":"Execute Url","description":"POST here with {\"inputs\": ...} to run the retriever","isRequired":true,"uniqueKey":"next_steps.items.[INDEX].execute_url","typeLabel":"string"},"curl":{"type":"string","title":"Curl","description":"A curl that runs the query; set MIXPEEK_API_KEY first","isRequired":true,"uniqueKey":"next_steps.items.[INDEX].curl","typeLabel":"string"},"studio_url":{"type":"string","title":"Studio Url","description":"The retriever in Studio","isRequired":true,"uniqueKey":"next_steps.items.[INDEX].studio_url","typeLabel":"string"},"namespace":{"oneOf":[{"type":"string","title":"Namespace","description":"Namespace name from the manifest, sent as X-Namespace","uniqueKey":"next_steps.items.[INDEX].namespace.oneOf.0","typeLabel":"string"},{"type":"null","title":"Namespace","description":"Namespace name from the manifest, sent as X-Namespace","uniqueKey":"next_steps.items.[INDEX].namespace.oneOf.1","typeLabel":"null"}],"uniqueKey":"next_steps.items.[INDEX].namespace","typeLabel":"string | null"},"inputs":{"additionalProperties":true,"type":"object","title":"Inputs","description":"Inputs for a first query: the manifest's acceptance query for this retriever when it has one, otherwise each required input of the retriever's input_schema as a \u003cplaceholder> to fill in","uniqueKey":"next_steps.items.[INDEX].inputs","typeLabel":"Inputs · object"},"inputs_proven":{"type":"boolean","title":"Inputs Proven","description":"true when `inputs` is the manifest's acceptance query. It answered only if that acceptance step passed on this apply","default":false,"uniqueKey":"next_steps.items.[INDEX].inputs_proven","typeLabel":"boolean"}},"type":"object","required":["retriever","retriever_id","execute_url","curl","studio_url"],"title":"ApplyNextStep","description":"How to query one retriever the apply created or found.","uniqueKey":"next_steps.items.[INDEX]","typeLabel":"ApplyNextStep · object"},"type":"array","title":"Next Steps","description":"On a successful real apply: for each retriever the manifest declares, its execute URL, a curl that queries it and its Studio page. Empty on a dry run, a failed apply, or a manifest with no retrievers","uniqueKey":"next_steps","typeLabel":"ApplyNextStep · object[]"}},"type":"object","required":["success"],"title":"ApplyResult","description":"Result of applying a manifest.","examples":[{"created_count":2,"dry_run":false,"errors":[],"failed_count":0,"resources":[{"name":"video_search","resource_id":"ns_abc123","resource_type":"namespace","status":"created"},{"name":"raw_videos","resource_id":"bkt_xyz789","resource_type":"bucket","status":"created"}],"rollback_performed":false,"skipped_count":0,"success":true}],"uniqueKey":"","typeLabel":"ApplyResult · object"},"examples":{"Example":{"title":"Example","value":{"created_count":2,"dry_run":false,"errors":[],"failed_count":0,"resources":[{"name":"video_search","resource_id":"ns_abc123","resource_type":"namespace","status":"created"},{"name":"raw_videos","resource_id":"bkt_xyz789","resource_type":"bucket","status":"created"}],"rollback_performed":false,"skipped_count":0,"success":true}}},"exampleType":"generated"}},"exampleType":"generated"},"07de9bec-770e-4395-91df-a475525da8b6":{"description":"Bad Request","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"3686099b-299a-4d5d-8292-a19897a4925a":{"description":"Unauthorized","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"574ce47c-029d-4731-b79c-25fbcbe72099":{"description":"Forbidden","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"56b894aa-8918-4772-9613-910e61e2234a":{"description":"Not Found","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"15047a1f-fc62-40ed-afba-7f51a296ed31":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"68c6e288-52d6-49c3-be96-71d3faf8b51d":{"description":"Too Many Requests","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"67d6f983-3da2-49ef-a9da-47ee6bf00345":{"description":"Internal Server Error","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"},"0d935e75-bad8-4f4a-8c87-1be2c63c7be9":{"description":"Service Unavailable","content":{"application/json":{"schema":{"properties":{"status":{"type":"integer","title":"Status","description":"HTTP status code for this error","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"error":{"properties":{"message":{"type":"string","title":"Message","description":"Human-readable error message","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","title":"Type","description":"Stable error type identifier (machine-readable)","isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Fine-grained error code for programmatic handling (e.g., namespace_name_taken, feature_extractor_not_found). Present only when consumers may need to branch on a specific error condition.","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"object","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","additionalProperties":true,"uniqueKey":"error.details.oneOf.0","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Optional structured details to help debugging (validation errors, IDs, etc.)","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"Details · object | null"}},"type":"object","required":["message","type"],"title":"ErrorDetail","description":"Error details payload","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"success":{"type":"boolean","title":"Success","description":"Always false for error responses","default":false,"uniqueKey":"success","typeLabel":"boolean"}},"type":"object","required":["status","error"],"title":"ErrorResponse","description":"Error response model.","examples":[{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}],"uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"details":{"id":"ns_123","resource":"namespace"},"message":"Namespace not found","type":"NotFoundError"},"status":404,"success":false}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a99408df-c81f-4024-9efe-dc3db6d166dc":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Mixpeek API key, sent as `Authorization: Bearer mxp_sk_...`. Create one in Studio under Settings → API Keys, or with an admin key via `POST /v1/organizations/users/{user_email}/api-keys`. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"a3ca4d02-9041-4306-8eae-afdf7d554be4":{"url":"https://api.mixpeek.com","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Mixpeek API key, sent as `Authorization: Bearer mxp_sk_...`. Create one in Studio under Settings → API Keys, or with an admin key via `POST /v1/organizations/users/{user_email}/api-keys`. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Mixpeek API key, sent as `Authorization: Bearer mxp_sk_...`. Create one in Studio under Settings → API Keys, or with an admin key via `POST /v1/organizations/users/{user_email}/api-keys`. A missing, malformed, unknown, revoked, inactive or expired key returns 401; a key without the permission, scope or plan an operation needs returns 403.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"mixpeek","siteName":"Mixpeek","title":"Apply Manifest - Mixpeek","navMaps":{"firstHrefInVersion":{"v1":{"href":"/api-reference/manifest/apply-manifest","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-10-03T16:20:01.395Z","originalFileLocation":"api-reference/manifest/apply-manifest.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Apply a YAML manifest to create resources. Creates all resources defined in the manifest file in dependency order. Modes: - create_only (default) — fails if any resource already exists. - create_missing — creates what is missing, leaves what exists alone, and resolves manifest references against the resources ALREADY in the namespace. This is what makes \u0026quot;here is a namespace with buckets, add these collections over them\u0026quot; work. Under create_only a reference to an undeclared-but-existing bucket is a validation error, because the manifest is treated as a closed world. Plan first: before creating anything, apply runs the same checks as POST /v1/manifest/validate. Any error refuses the whole manifest with success: false, every resource skipped, and each error naming the resource, the field and the fix. Nothing is created. A namespace budget above the organization\u0026#x27;s bound is set to the bound and reported as a warning. Features: - Topological sorting ensures resources are created in correct dependency order - Secret references (${{ secrets.NAME }}) are resolved from organization secrets - Atomic operation: rolls back all created resources if any creation fails, and an apply whose process is stopped part way is rolled back when the API starts again - Dry run returns the plan without making changes Example: bash curl -X POST /v1/manifest/apply \\ -H \u0026quot;Authorization: Bearer $API_KEY\u0026quot; \\ -H \u0026quot;X-Namespace: ns_xxx\u0026quot; \\ -F \u0026quot;manifest_file=@mixpeek.yaml\u0026quot; Example manifest: yaml version: \u0026quot;1.0\u0026quot; metadata: name: \u0026quot;my-environment\u0026quot; namespaces: - name: video_search feature_extractors: - name: multimodal_extractor version: v1 buckets: - name: raw_videos namespace: video_search schema: properties: video: { type: video }\">\u003cmeta data-mint-head name=\"application-name\" content=\"Mixpeek\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Apply Manifest - Mixpeek\">\u003cmeta data-mint-head property=\"og:description\" content=\"Apply a YAML manifest to create resources. Creates all resources defined in the manifest file in dependency order. Modes: - create_only (default) — fails if any resource already exists. - create_missing — creates what is missing, leaves what exists alone, and resolves manifest references against the resources ALREADY in the namespace. This is what makes \u0026quot;here is a namespace with buckets, add these collections over them\u0026quot; work. Under create_only a reference to an undeclared-but-existing bucket is a validation error, because the manifest is treated as a closed world. Plan first: before creating anything, apply runs the same checks as POST /v1/manifest/validate. Any error refuses the whole manifest with success: false, every resource skipped, and each error naming the resource, the field and the fix. Nothing is created. A namespace budget above the organization\u0026#x27;s bound is set to the bound and reported as a warning. Features: - Topological sorting ensures resources are created in correct dependency order - Secret references (${{ secrets.NAME }}) are resolved from organization secrets - Atomic operation: rolls back all created resources if any creation fails, and an apply whose process is stopped part way is rolled back when the API starts again - Dry run returns the plan without making changes Example: bash curl -X POST /v1/manifest/apply \\ -H \u0026quot;Authorization: Bearer $API_KEY\u0026quot; \\ -H \u0026quot;X-Namespace: ns_xxx\u0026quot; \\ -F \u0026quot;manifest_file=@mixpeek.yaml\u0026quot; Example manifest: yaml version: \u0026quot;1.0\u0026quot; metadata: name: \u0026quot;my-environment\u0026quot; namespaces: - name: video_search feature_extractors: - name: multimodal_extractor version: v1 buckets: - name: raw_videos namespace: video_search schema: properties: video: { type: video }\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Mixpeek\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mixpeek.mintlify.site/docs/_mintlify/api/og/v2?division=Manifest\u0026amp;title=Apply+Manifest\u0026amp;description=Apply+a+YAML+manifest+to+create+resources.%0A%0ACreates+all+resources+defined+in+the+manifest+file+in+dependency+order.%0A%0A**Modes%3A**%0A-+%60create_only%60+%28default%29+%E2%80%94+fail\u0026amp;theme=c63607064cbc270563da1421\u0026amp;signature=9cb238f580bfed6e042e1eac0e23030a07821fae9e707876addfd6472c9df906\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Apply Manifest - Mixpeek\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Apply a YAML manifest to create resources. Creates all resources defined in the manifest file in dependency order. Modes: - create_only (default) — fails if any resource already exists. - create_missing — creates what is missing, leaves what exists alone, and resolves manifest references against the resources ALREADY in the namespace. This is what makes \u0026quot;here is a namespace with buckets, add these collections over them\u0026quot; work. Under create_only a reference to an undeclared-but-existing bucket is a validation error, because the manifest is treated as a closed world. Plan first: before creating anything, apply runs the same checks as POST /v1/manifest/validate. Any error refuses the whole manifest with success: false, every resource skipped, and each error naming the resource, the field and the fix. Nothing is created. A namespace budget above the organization\u0026#x27;s bound is set to the bound and reported as a warning. Features: - Topological sorting ensures resources are created in correct dependency order - Secret references (${{ secrets.NAME }}) are resolved from organization secrets - Atomic operation: rolls back all created resources if any creation fails, and an apply whose process is stopped part way is rolled back when the API starts again - Dry run returns the plan without making changes Example: bash curl -X POST /v1/manifest/apply \\ -H \u0026quot;Authorization: Bearer $API_KEY\u0026quot; \\ -H \u0026quot;X-Namespace: ns_xxx\u0026quot; \\ -F \u0026quot;manifest_file=@mixpeek.yaml\u0026quot; Example manifest: yaml version: \u0026quot;1.0\u0026quot; metadata: name: \u0026quot;my-environment\u0026quot; namespaces: - name: video_search feature_extractors: - name: multimodal_extractor version: v1 buckets: - name: raw_videos namespace: video_search schema: properties: video: { type: video }\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mixpeek.mintlify.site/docs/_mintlify/api/og/v2?division=Manifest\u0026amp;title=Apply+Manifest\u0026amp;description=Apply+a+YAML+manifest+to+create+resources.%0A%0ACreates+all+resources+defined+in+the+manifest+file+in+dependency+order.%0A%0A**Modes%3A**%0A-+%60create_only%60+%28default%29+%E2%80%94+fail\u0026amp;theme=c63607064cbc270563da1421\u0026amp;signature=9cb238f580bfed6e042e1eac0e23030a07821fae9e707876addfd6472c9df906\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/mixpeek/FL3jtq6uKM5AAW-Z/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Mixpeek\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FC5185\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/api-reference/manifest/apply-manifest.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mixpeek.com/#organization\",\"name\":\"Mixpeek\",\"url\":\"https://docs.mixpeek.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/mixpeek/QQyAGObvvz8PjpE0/logo/light.png?fit=max\u0026auto=format\u0026n=QQyAGObvvz8PjpE0\u0026q=85\u0026s=ac5ab550180057404fe833886513775f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mixpeek.com/docs#website\",\"name\":\"Mixpeek\",\"url\":\"https://docs.mixpeek.com/docs\",\"publisher\":{\"@id\":\"https://docs.mixpeek.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest#webpage\",\"url\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest\",\"name\":\"Apply Manifest\",\"description\":\"Apply a YAML manifest to create resources. Creates all resources defined in the manifest file in dependency order. Modes: - create_only (default) — fails if any resource already exists. - create_missing — creates what is missing, leaves what exists alone, and resolves manifest references against the resources ALREADY in the namespace. This is what makes \\\"here is a namespace with buckets, add these collections over them\\\" work. Under create_only a reference to an undeclared-but-existing bucket is a validation error, because the manifest is treated as a closed world. Plan first: before creating anything, apply runs the same checks as POST /v1/manifest/validate. Any error refuses the whole manifest with success: false, every resource skipped, and each error naming the resource, the field and the fix. Nothing is created. A namespace budget above the organization's bound is set to the bound and reported as a warning. Features: - Topological sorting ensures resources are created in correct dependency order - Secret references (${{ secrets.NAME }}) are resolved from organization secrets - Atomic operation: rolls back all created resources if any creation fails, and an apply whose process is stopped part way is rolled back when the API starts again - Dry run returns the plan without making changes Example: bash curl -X POST /v1/manifest/apply \\\\ -H \\\"Authorization: Bearer $API_KEY\\\" \\\\ -H \\\"X-Namespace: ns_xxx\\\" \\\\ -F \\\"manifest_file=@mixpeek.yaml\\\" Example manifest: yaml version: \\\"1.0\\\" metadata: name: \\\"my-environment\\\" namespaces: - name: video_search feature_extractors: - name: multimodal_extractor version: v1 buckets: - name: raw_videos namespace: video_search schema: properties: video: { type: video }\",\"dateModified\":\"2026-10-03T16:20:01.395Z\",\"isPartOf\":{\"@id\":\"https://docs.mixpeek.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Advanced\",\"item\":\"https://docs.mixpeek.com/docs/api-reference/apps/create-app\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apply Manifest\",\"item\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest#apireference\",\"headline\":\"Apply Manifest\",\"name\":\"Apply Manifest\",\"description\":\"Apply a YAML manifest to create resources. Creates all resources defined in the manifest file in dependency order. Modes: - create_only (default) — fails if any resource already exists. - create_missing — creates what is missing, leaves what exists alone, and resolves manifest references against the resources ALREADY in the namespace. This is what makes \\\"here is a namespace with buckets, add these collections over them\\\" work. Under create_only a reference to an undeclared-but-existing bucket is a validation error, because the manifest is treated as a closed world. Plan first: before creating anything, apply runs the same checks as POST /v1/manifest/validate. Any error refuses the whole manifest with success: false, every resource skipped, and each error naming the resource, the field and the fix. Nothing is created. A namespace budget above the organization's bound is set to the bound and reported as a warning. Features: - Topological sorting ensures resources are created in correct dependency order - Secret references (${{ secrets.NAME }}) are resolved from organization secrets - Atomic operation: rolls back all created resources if any creation fails, and an apply whose process is stopped part way is rolled back when the API starts again - Dry run returns the plan without making changes Example: bash curl -X POST /v1/manifest/apply \\\\ -H \\\"Authorization: Bearer $API_KEY\\\" \\\\ -H \\\"X-Namespace: ns_xxx\\\" \\\\ -F \\\"manifest_file=@mixpeek.yaml\\\" Example manifest: yaml version: \\\"1.0\\\" metadata: name: \\\"my-environment\\\" namespaces: - name: video_search feature_extractors: - name: multimodal_extractor version: v1 buckets: - name: raw_videos namespace: video_search schema: properties: video: { type: video }\",\"url\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mixpeek.com/docs/api-reference/manifest/apply-manifest#webpage\"},\"dateModified\":\"2026-10-03T16:20:01.395Z\",\"publisher\":{\"@id\":\"https://docs.mixpeek.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mixpeek.com/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Mixpeek\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Mixpeek","nav":{"global":{"anchors":[{"anchor":"Homepage","icon":"house","href":"https://mixpeek.com"},{"anchor":"Engineering Blog","icon":"newspaper","href":"https://mixpeek.com/blog"},{"anchor":"API Swagger","icon":"file-code","href":"https://api.mixpeek.com/docs"}]},"versions":[{"version":"v1","default":true,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/overview/introduction"}]},{"tab":"Vector Store","pages":[{"title":"Vector Store","href":"/vector-store/overview"}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/tutorials/semantic-search"}]},{"tab":"API Reference","groups":[{"group":"Namespaces","pages":[{"openapi":"post /v1/namespaces","title":"Create Namespace","href":"/api-reference/namespaces/create-namespace"},{"openapi":"get /v1/namespaces/{namespace_identifier}","title":"Get Namespace","href":"/api-reference/namespaces/get-namespace"},{"openapi":"put /v1/namespaces/{namespace_identifier}","title":"Update Namespace","href":"/api-reference/namespaces/update-namespace"},{"openapi":"patch /v1/namespaces/{namespace_identifier}","title":"Partially Update Namespace","href":"/api-reference/namespaces/partially-update-namespace"},{"openapi":"post /v1/namespaces/list","title":"List Namespaces","href":"/api-reference/namespaces/list-namespaces"},{"openapi":"get /v1/namespaces/{namespace_identifier}/stats","title":"Get Namespace Stats","href":"/api-reference/namespaces/get-namespace-stats"},{"openapi":"delete /v1/namespaces/{namespace_identifier}","title":"Delete Namespace","href":"/api-reference/namespaces/delete-namespace"},{"group":"Clone","pages":[{"openapi":"post /v1/namespaces/{namespace_identifier}/clone","title":"Clone Namespace","href":"/api-reference/namespace-clone/clone-namespace"}]},{"group":"Migrations","pages":[{"openapi":"post /v1/namespaces/migrations/","title":"Create Migration","href":"/api-reference/namespace-migrations/create-migration"},{"openapi":"get /v1/namespaces/migrations/{migration_id}","title":"Get Migration","href":"/api-reference/namespace-migrations/get-migration"},{"openapi":"post /v1/namespaces/migrations/list","title":"List Migrations","href":"/api-reference/namespace-migrations/list-migrations"},{"openapi":"post /v1/namespaces/migrations/{migration_id}/start","title":"Start Migration","href":"/api-reference/namespace-migrations/start-migration"},{"openapi":"post /v1/namespaces/migrations/validate","title":"Validate Migration","href":"/api-reference/namespace-migrations/validate-migration"},{"openapi":"post /v1/namespaces/migrations/{migration_id}/cancel","title":"Cancel Migration","href":"/api-reference/namespace-migrations/cancel-migration"},{"openapi":"delete /v1/namespaces/migrations/{migration_id}","title":"Delete Migration","href":"/api-reference/namespace-migrations/delete-migration"}]},{"group":"Extractors","pages":[{"openapi":"get /v1/namespaces/{namespace_id}/extractors","title":"List all extractors available to namespace","href":"/api-reference/namespace-extractors/list-all-extractors-available-to-namespace"},{"openapi":"get /v1/namespaces/{namespace_id}/extractors/{extractor_id}","title":"Get extractor details","href":"/api-reference/namespace-extractors/get-extractor-details"}]},{"group":"Models","pages":[{"openapi":"get /v1/namespaces/{namespace_id}/models","title":"List models in namespace","href":"/api-reference/custom-models/list-models-in-namespace"},{"openapi":"post /v1/namespaces/{namespace_id}/models","title":"Upload a custom model","href":"/api-reference/custom-models/upload-a-custom-model"},{"openapi":"get /v1/namespaces/{namespace_id}/models/{model_id}","title":"Get model details","href":"/api-reference/custom-models/get-model-details"},{"openapi":"post /v1/namespaces/{namespace_id}/models/{model_id}/deploy","title":"Deploy model to Ray object store","href":"/api-reference/custom-models/deploy-model-to-ray-object-store"},{"openapi":"post /v1/namespaces/{namespace_id}/models/org/{model_id}/enable","title":"Enable org model for namespace","href":"/api-reference/custom-models/enable-org-model-for-namespace"},{"openapi":"post /v1/namespaces/{namespace_id}/models/org/{model_id}/disable","title":"Disable org model for namespace","href":"/api-reference/custom-models/disable-org-model-for-namespace"},{"openapi":"get /v1/namespaces/{namespace_id}/models/available","title":"List available org models","href":"/api-reference/custom-models/list-available-org-models"},{"openapi":"delete /v1/namespaces/{namespace_id}/models/{model_id}","title":"Delete a model","href":"/api-reference/custom-models/delete-a-model"}]},{"group":"Snapshots","pages":[{"openapi":"post /v1/namespaces/{namespace_identifier}/snapshots","title":"Create Namespace Snapshot","href":"/api-reference/namespace-snapshots/create-namespace-snapshot"},{"openapi":"post /v1/namespaces/{namespace_identifier}/snapshots/list","title":"List Namespace Snapshots","href":"/api-reference/namespace-snapshots/list-namespace-snapshots"},{"openapi":"get /v1/namespaces/{namespace_identifier}/snapshots/{snapshot_id}","title":"Get Snapshot","href":"/api-reference/namespace-snapshots/get-snapshot"},{"openapi":"delete /v1/namespaces/{namespace_identifier}/snapshots/{snapshot_id}","title":"Delete Snapshot","href":"/api-reference/namespace-snapshots/delete-snapshot"},{"openapi":"get /v1/namespaces/{namespace_identifier}/snapshots/{snapshot_id}/verify","title":"Verify Snapshot Restore-Readiness","href":"/api-reference/namespace-snapshots/verify-snapshot-restore-readiness"},{"openapi":"post /v1/namespaces/{namespace_identifier}/snapshots/{snapshot_id}/restore","title":"Restore From Snapshot","href":"/api-reference/namespace-snapshots/restore-from-snapshot"}]},{"openapi":"get /v1/namespaces","title":"List Namespaces","href":"/api-reference/namespaces/list-namespaces-get"},{"openapi":"post /v1/namespaces/stats/batch","title":"Get Namespace Stats (Batch)","href":"/api-reference/namespaces/get-namespace-stats-batch"},{"openapi":"post /v1/namespaces/{namespace_identifier}/ensure-indexes","title":"Ensure Namespace Payload Indexes","href":"/api-reference/namespaces/ensure-namespace-payload-indexes"},{"group":"BYO vectors","pages":[{"openapi":"post /v1/namespaces/{namespace_id}/documents/upsert","title":"Upsert documents with BYO vectors","href":"/api-reference/byo-documents/upsert-documents-byo-vectors"},{"openapi":"get /v1/namespaces/{namespace_id}/documents/{document_id}","title":"Get a document by ID (path-scoped namespace)","href":"/api-reference/byo-documents/get-document-id"},{"openapi":"post /v1/namespaces/standalone","title":"Create standalone namespace (BYO vectors)","href":"/api-reference/byo-documents/create-standalone-namespace"},{"openapi":"post /v1/namespaces/{namespace_id}/promote","title":"Promote standalone namespace to managed mode","href":"/api-reference/byo-documents/promote-standalone-namespace-managed-mode"},{"openapi":"post /v1/namespaces/{namespace_id}/promote/validate","title":"Dry-run validate a standalone → managed promotion","href":"/api-reference/byo-documents/dry-run-validate-standalone-managed-promotion"}]}]},{"group":"Buckets","pages":[{"openapi":"post /v1/buckets","title":"Create Bucket","href":"/api-reference/buckets/create-bucket"},{"openapi":"get /v1/buckets/{bucket_identifier}","title":"Get Bucket","href":"/api-reference/buckets/get-bucket"},{"openapi":"put /v1/buckets/{bucket_identifier}","title":"Update Bucket","href":"/api-reference/buckets/update-bucket"},{"openapi":"patch /v1/buckets/{bucket_identifier}","title":"Partially Update Bucket","href":"/api-reference/buckets/partially-update-bucket"},{"openapi":"post /v1/buckets/list","title":"List Buckets","href":"/api-reference/buckets/list-buckets"},{"openapi":"delete /v1/buckets/{bucket_identifier}","title":"Delete Bucket","href":"/api-reference/buckets/delete-bucket"},{"group":"Syncs","pages":[{"openapi":"post /v1/buckets/{bucket_id}/syncs/list","title":"List Sync Configurations","href":"/api-reference/bucket-syncs/list-sync-configurations"},{"openapi":"post /v1/buckets/{bucket_id}/syncs","title":"Create Sync Configuration","href":"/api-reference/bucket-syncs/create-sync-configuration"},{"openapi":"get /v1/buckets/{bucket_id}/syncs/{sync_config_id}","title":"Get Sync Configuration","href":"/api-reference/bucket-syncs/get-sync-configuration"},{"openapi":"patch /v1/buckets/{bucket_id}/syncs/{sync_config_id}","title":"Update Sync Configuration","href":"/api-reference/bucket-syncs/update-sync-configuration"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/pause","title":"Pause Sync Configuration","href":"/api-reference/bucket-syncs/pause-sync-configuration"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/resume","title":"Resume Sync Configuration","href":"/api-reference/bucket-syncs/resume-sync-configuration"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/trigger","title":"Trigger Sync Configuration","href":"/api-reference/bucket-syncs/trigger-sync-configuration"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/unlock","title":"Force Unlock Sync Configuration","href":"/api-reference/bucket-syncs/force-unlock-sync-configuration"},{"openapi":"delete /v1/buckets/{bucket_id}/syncs/{sync_config_id}","title":"Delete Sync Configuration","href":"/api-reference/bucket-syncs/delete-sync-configuration"},{"openapi":"get /v1/buckets/{bucket_id}/syncs/{sync_config_id}/metrics","title":"Get Sync Metrics","href":"/api-reference/bucket-syncs/get-sync-metrics"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/jobs","title":"List Sync Jobs","href":"/api-reference/bucket-syncs/list-sync-jobs"},{"openapi":"get /v1/buckets/{bucket_id}/syncs/{sync_config_id}/jobs/{sync_job_id}","title":"Get Sync Job","href":"/api-reference/bucket-syncs/get-sync-job"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/dlq","title":"List Dlq Entries","href":"/api-reference/bucket-syncs/list-dlq-entries"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/dlq/requeue","title":"Requeue Dlq Entries","href":"/api-reference/bucket-syncs/requeue-dlq-entries"},{"openapi":"post /v1/buckets/{bucket_id}/syncs/{sync_config_id}/dlq/bulk-mark-failed","title":"Bulk Mark Dlq Permanently Failed","href":"/api-reference/bucket-syncs/bulk-mark-dlq-permanently-failed"}]},{"group":"Source adapter","pages":[{"openapi":"get /v1/buckets/{bucket_id}/source-adapter/status","title":"Get Adapter Status","href":"/api-reference/bucket-source-adapter/get-source-adapter-status"},{"openapi":"post /v1/buckets/{bucket_id}/source-adapter/refresh","title":"Refresh Source Adapter","href":"/api-reference/bucket-source-adapter/refresh-source-adapter"}]},{"group":"Objects","pages":[{"openapi":"post /v1/buckets/{bucket_identifier}/objects","title":"Create Object","href":"/api-reference/bucket-objects/create-object"},{"openapi":"post /v1/buckets/{bucket_identifier}/objects/batch","title":"Create Objects in Batch","href":"/api-reference/bucket-objects/create-objects-in-batch"},{"openapi":"get /v1/buckets/{bucket_identifier}/objects/{object_identifier}","title":"Get Object","href":"/api-reference/bucket-objects/get-object"},{"openapi":"put /v1/buckets/{bucket_identifier}/objects/{object_identifier}","title":"Update Object","href":"/api-reference/bucket-objects/update-object"},{"openapi":"patch /v1/buckets/{bucket_identifier}/objects/{object_identifier}","title":"Partially Update Object","href":"/api-reference/bucket-objects/partially-update-object"},{"openapi":"post /v1/buckets/{bucket_identifier}/objects/list","title":"List Objects","href":"/api-reference/bucket-objects/list-objects"},{"openapi":"post /v1/buckets/{bucket_identifier}/objects/aggregate","title":"Aggregate Objects","href":"/api-reference/bucket-objects/aggregate-objects"},{"openapi":"delete /v1/buckets/{bucket_identifier}/objects/{object_identifier}","title":"Delete Object","href":"/api-reference/bucket-objects/delete-object"},{"openapi":"get /v1/buckets/{bucket_identifier}/objects","title":"List Objects (GET)","href":"/api-reference/bucket-objects/list-objects-get"},{"openapi":"post /v1/buckets/{bucket_identifier}/objects/bulk-soft-delete","title":"Bulk Soft-Delete Objects","href":"/api-reference/bucket-objects/bulk-soft-delete-objects"}]},{"group":"Uploads","pages":[{"openapi":"post /v1/buckets/{bucket_identifier}/uploads","title":"Create Upload","href":"/api-reference/bucket-uploads/create-upload"},{"openapi":"post /v1/buckets/{bucket_identifier}/uploads/batch","title":"Batch Create Uploads","href":"/api-reference/bucket-uploads/batch-create-uploads"},{"openapi":"get /v1/buckets/{bucket_identifier}/uploads/{upload_id}","title":"Get Upload","href":"/api-reference/bucket-uploads/get-upload"},{"openapi":"post /v1/buckets/{bucket_identifier}/uploads/{upload_id}/confirm","title":"Confirm Upload","href":"/api-reference/bucket-uploads/confirm-upload"},{"openapi":"post /v1/buckets/{bucket_identifier}/uploads/confirm/batch","title":"Batch Confirm Uploads","href":"/api-reference/bucket-uploads/batch-confirm-uploads"},{"openapi":"post /v1/buckets/{bucket_identifier}/uploads/list","title":"List Uploads","href":"/api-reference/bucket-uploads/list-uploads"},{"openapi":"delete /v1/buckets/{bucket_identifier}/uploads/{upload_id}","title":"Delete Upload","href":"/api-reference/bucket-uploads/delete-upload"}]},{"group":"Batches","pages":[{"openapi":"post /v1/buckets/{bucket_identifier}/batches","title":"Create Batch","href":"/api-reference/bucket-batches/create-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/objects","title":"Add Objects to Batch","href":"/api-reference/bucket-batches/add-objects-to-batch"},{"openapi":"get /v1/buckets/{bucket_identifier}/batches/{batch_id}","title":"Get Batch Configuration","href":"/api-reference/bucket-batches/get-batch-configuration"},{"openapi":"patch /v1/buckets/{bucket_identifier}/batches/{batch_id}","title":"Partially Update Batch","href":"/api-reference/bucket-batches/partially-update-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/submit","title":"Submit Batch for Processing","href":"/api-reference/bucket-batches/submit-batch-for-processing"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/submit-all","title":"Submit All Draft Batches","href":"/api-reference/bucket-batches/submit-all-draft-batches"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/list","title":"List Batches","href":"/api-reference/bucket-batches/list-batches"},{"openapi":"get /v1/buckets/{bucket_identifier}/batches/{batch_id}/logs","title":"Get Ray Job Logs for Batch","href":"/api-reference/bucket-batches/get-ray-job-logs-for-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/cancel","title":"Cancel Batch","href":"/api-reference/bucket-batches/cancel-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/tiers/{tier_num}/cancel","title":"Cancel Tier","href":"/api-reference/bucket-batches/cancel-tier"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/tiers/{tier_num}/jobs/{ray_job_id}/cancel","title":"Cancel Job","href":"/api-reference/bucket-batches/cancel-job"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/tiers/{tier_num}/retry","title":"Retry Tier with Resource Overrides","href":"/api-reference/bucket-batches/retry-tier"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/retry","title":"Retry Failed Documents","href":"/api-reference/bucket-batches/retry-failed-documents"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/resubmit","title":"Resubmit Failed Batch","href":"/api-reference/bucket-batches/resubmit-failed-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/tiers/{tier_num}/heal","title":"Manual Self-Healing","href":"/api-reference/bucket-batches/heal-tier"},{"openapi":"get /v1/buckets/{bucket_identifier}/batches/{batch_id}/diagnose","title":"Diagnose Batch","href":"/api-reference/bucket-batches/diagnose-batch"},{"openapi":"get /v1/buckets/{bucket_identifier}/batches/{batch_id}/failed-documents","title":"Get Failed Documents for Batch","href":"/api-reference/bucket-batches/get-failed-documents-for-batch"},{"openapi":"delete /v1/buckets/{bucket_identifier}/batches/{batch_id}/documents","title":"Delete Documents Produced by Batch","href":"/api-reference/bucket-batches/delete-documents-produced-by-batch"},{"openapi":"delete /v1/buckets/{bucket_identifier}/batches/{batch_id}","title":"Delete Batch","href":"/api-reference/bucket-batches/delete-batch"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/{batch_id}/estimate-cost","title":"Estimate Batch Cost (pre-flight, dry-run)","href":"/api-reference/bucket-batches/estimate-batch-cost"},{"openapi":"post /v1/buckets/{bucket_identifier}/batches/bulk-submit","title":"Bulk-submit a whole bucket as N auto-chunked, auto-queued batches","href":"/api-reference/bucket-batches/bulk-submit-whole-bucket-n-auto"},{"openapi":"get /v1/buckets/{bucket_identifier}/batches/{batch_id}/audit","title":"Tier-completion invariant audit","href":"/api-reference/bucket-batches/tier-completion-invariant-audit"}]},{"openapi":"get /v1/buckets","title":"List Buckets","href":"/api-reference/buckets/list-buckets-get"}]},{"group":"Collections","pages":[{"openapi":"post /v1/collections","title":"Create Collection","href":"/api-reference/collections/create-collection"},{"openapi":"post /v1/collections/{collection_identifier}/clone","title":"Clone Collection","href":"/api-reference/collections/clone-collection"},{"openapi":"get /v1/collections/{collection_identifier}","title":"Get Collection","href":"/api-reference/collections/get-collection"},{"openapi":"patch /v1/collections/{collection_identifier}","title":"Update Collection","href":"/api-reference/collections/update-collection"},{"openapi":"get /v1/collections/{collection_identifier}/features","title":"Describe collection features","href":"/api-reference/collections/describe-collection-features"},{"openapi":"post /v1/collections/list","title":"List Collections","href":"/api-reference/collections/list-collections"},{"openapi":"post /v1/collections/{collection_identifier}/export","title":"Export Collection","href":"/api-reference/collections/export-collection"},{"openapi":"post /v1/collections/{collection_identifier}/trigger","title":"Trigger Collection Processing","href":"/api-reference/collections/trigger-collection-processing"},{"openapi":"delete /v1/collections/{collection_identifier}","title":"Delete Collection","href":"/api-reference/collections/delete-collection"},{"openapi":"get /v1/collections/{collection_identifier}/reconciliation","title":"Reconcile objects vs documents","href":"/api-reference/collections/reconcile-collection"},{"openapi":"get /v1/collections/{collection_identifier}/documents/{document_id}/diagnostics","title":"Per-document support diagnostics (visibility, failures, history).","href":"/api-reference/collections/document-diagnostics"},{"group":"Schema","pages":[{"openapi":"post /v1/collections/{collection_id}/sync-schema","title":"Sync Collection Schema","href":"/api-reference/collection-schema/sync-collection-schema"}]},{"group":"Documents","pages":[{"openapi":"post /v1/collections/{collection_identifier}/documents","title":"Create a document.","href":"/api-reference/collection-documents/create-a-document"},{"openapi":"get /v1/collections/{collection_identifier}/documents/{document_id}","title":"Get a document by ID.","href":"/api-reference/collection-documents/get-a-document-by-id"},{"openapi":"get /v1/collections/{collection_identifier}/documents/{document_id}/download","title":"Download frame-accurate scene media for this document.","href":"/api-reference/collection-documents/download-document-media"},{"openapi":"put /v1/collections/{collection_identifier}/documents/{document_id}","title":"Update Document","href":"/api-reference/collection-documents/update-document"},{"openapi":"patch /v1/collections/{collection_identifier}/documents/{document_id}","title":"Patch Document","href":"/api-reference/collection-documents/patch-document"},{"openapi":"patch /v1/collections/{collection_identifier}/documents/{document_id}/acl","title":"Update a document's access control list (ACL).","href":"/api-reference/collection-documents/update-a-documents-access-control-list-acl"},{"openapi":"post /v1/collections/{collection_identifier}/documents/list","title":"List documents.","href":"/api-reference/collection-documents/list-documents"},{"openapi":"post /v1/collections/{collection_identifier}/documents/aggregate","title":"Aggregate Documents","href":"/api-reference/collection-documents/aggregate-documents"},{"openapi":"post /v1/collections/{collection_identifier}/documents/distinct","title":"Return distinct values for a single field.","href":"/api-reference/collection-documents/return-distinct-values-for-a-single-field"},{"openapi":"patch /v1/collections/{collection_identifier}/documents/bulk","title":"Bulk Update Documents","href":"/api-reference/collection-documents/bulk-update-documents"},{"openapi":"post /v1/collections/{collection_identifier}/documents/batch","title":"Batch Update Documents","href":"/api-reference/collection-documents/batch-update-documents"},{"openapi":"delete /v1/collections/{collection_identifier}/documents/batch","title":"Batch Delete Documents","href":"/api-reference/collection-documents/batch-delete-documents"},{"openapi":"delete /v1/collections/{collection_identifier}/documents/{document_id}","title":"Delete a document by ID.","href":"/api-reference/collection-documents/delete-a-document-by-id"},{"openapi":"post /v1/collections/{collection_identifier}/documents/schema/validate","title":"Validate document against collection schema","href":"/api-reference/collection-documents/validate-document-schema"},{"openapi":"get /v1/collections/{collection_identifier}/documents/count","title":"Count documents in a collection.","href":"/api-reference/collection-documents/count-documents-collection"},{"openapi":"get /v1/collections/{collection_identifier}/documents/{document_id}/ancestors","title":"Get document ancestors (lineage chain root → parent).","href":"/api-reference/collection-documents/get-document-ancestors"},{"openapi":"get /v1/collections/{collection_identifier}/documents/{document_id}/descendants","title":"Get direct downstream documents (depth=1 children).","href":"/api-reference/collection-documents/get-direct-downstream-documents"},{"openapi":"get /v1/collections/{collection_identifier}/documents","title":"List documents.","href":"/api-reference/collection-documents/list-documents-get"}]},{"group":"Lineage","pages":[{"openapi":"get /v1/collections/{collection_id}/documents/{document_id}/lineage","title":"Get document lineage","href":"/api-reference/document-lineage/get-document-lineage"},{"openapi":"get /v1/objects/{object_id}/documents","title":"Get all documents derived from an object","href":"/api-reference/document-lineage/get-all-documents-derived-from-an-object"},{"openapi":"get /v1/objects/{object_id}/decomposition-tree","title":"Get decomposition tree visualization","href":"/api-reference/document-lineage/get-decomposition-tree-visualization"}]},{"group":"Lifecycle","pages":[{"openapi":"get /v1/collections/{collection_identifier}/lifecycle","title":"Get Lifecycle Status","href":"/api-reference/collection-lifecycle/get-lifecycle-status"},{"openapi":"patch /v1/collections/{collection_identifier}/lifecycle","title":"Transition Lifecycle","href":"/api-reference/collection-lifecycle/transition-lifecycle"}]},{"group":"Taxonomies","pages":[{"openapi":"post /v1/collections/{collection_identifier}/apply-taxonomy","title":"Apply Taxonomy to Existing Documents","href":"/api-reference/collection-taxonomies/apply-taxonomy-to-existing-documents"}]},{"group":"Import","pages":[{"openapi":"post /v1/collections/import/infer","title":"Infer import schema","href":"/api-reference/collections/infer-import-schema"},{"openapi":"post /v1/collections/import/validate-mapping","title":"Validate an import mapping","href":"/api-reference/collections/validate-import-mapping"},{"openapi":"post /v1/collections/{collection_identifier}/import","title":"Import external documents into a collection","href":"/api-reference/collections/import-collection-documents"}]},{"openapi":"get /v1/collections/features","title":"Discover Features","href":"/api-reference/features/discover-features"}]},{"group":"Feature Extractors","pages":[{"openapi":"get /v1/collections/features/extractors","title":"List Feature Extractors","href":"/api-reference/feature-extractors/list-feature-extractors"},{"openapi":"get /v1/collections/features/extractors/{feature_extractor_id}","title":"Get Feature Extractor by Name","href":"/api-reference/feature-extractors/get-feature-extractor-by-name"},{"group":"Marketplace","pages":[{"openapi":"get /v1/public/extractors/","title":"List Public Extractors","href":"/api-reference/public-extractor-marketplace/list-public-extractors"},{"openapi":"get /v1/public/extractors/{public_name}","title":"Get Public Extractor","href":"/api-reference/public-extractor-marketplace/get-public-extractor"}]},{"group":"Publishing","pages":[{"openapi":"post /v1/extractors/{extractor_id}/publish","title":"Publish an extractor to the marketplace","href":"/api-reference/extractor-publishing/publish-extractor-marketplace"},{"openapi":"get /v1/extractors/{extractor_id}/publish","title":"Get published extractor status","href":"/api-reference/extractor-publishing/get-published-extractor-status"},{"openapi":"patch /v1/extractors/{extractor_id}/publish","title":"Update published extractor","href":"/api-reference/extractor-publishing/update-published-extractor"},{"openapi":"delete /v1/extractors/{extractor_id}/publish","title":"Unpublish an extractor","href":"/api-reference/extractor-publishing/unpublish-extractor"},{"openapi":"post /v1/extractors/install","title":"Install a public extractor","href":"/api-reference/extractor-publishing/install-public-extractor"}]},{"group":"Submissions","pages":[{"openapi":"get /v1/extractors","title":"List all extractors available to organization","href":"/api-reference/extractor-submissions/list-all-extractors-available-organization"},{"openapi":"post /v1/extractors/submissions/uploads","title":"Get presigned URL for extractor submission","href":"/api-reference/extractor-submissions/get-presigned-url-extractor-submission"},{"openapi":"post /v1/extractors/submissions/uploads/{submission_id}/confirm","title":"Confirm extractor submission upload","href":"/api-reference/extractor-submissions/confirm-extractor-submission-upload"},{"openapi":"get /v1/extractors/submissions","title":"List extractor submissions","href":"/api-reference/extractor-submissions/list-extractor-submissions"},{"openapi":"get /v1/extractors/submissions/{submission_id}","title":"Get submission details","href":"/api-reference/extractor-submissions/get-submission-details"}]}]},{"group":"Documents","pages":[{"openapi":"get /v1/documents/{document_id}","title":"Get a document by ID (namespace-scoped).","href":"/api-reference/documents/get-a-document-by-id-namespace-scoped"},{"openapi":"put /v1/documents/{document_id}","title":"Update a document by ID (namespace-scoped).","href":"/api-reference/documents/update-a-document-by-id-namespace-scoped"},{"openapi":"patch /v1/documents/{document_id}","title":"Partially update a document by ID (namespace-scoped).","href":"/api-reference/documents/partially-update-a-document-by-id-namespace-scoped"},{"openapi":"post /v1/documents/list","title":"List documents across all collections (namespace-scoped).","href":"/api-reference/documents/list-documents-across-all-collections-namespace-scoped"},{"openapi":"post /v1/documents/batch-get","title":"Batch get documents by IDs","href":"/api-reference/documents/batch-get-documents-by-ids"},{"openapi":"post /v1/documents/list/batch","title":"Run multiple list-documents queries concurrently.","href":"/api-reference/documents/run-multiple-list-documents-queries-concurrently"}]},{"group":"Retrievers","pages":[{"openapi":"post /v1/retrievers","title":"Create Retriever","href":"/api-reference/retrievers/create-retriever"},{"openapi":"post /v1/retrievers/list","title":"List Retrievers","href":"/api-reference/retrievers/list-retrievers"},{"openapi":"get /v1/retrievers/{retriever_id}","title":"Get Retriever","href":"/api-reference/retrievers/get-retriever"},{"openapi":"patch /v1/retrievers/{retriever_id}","title":"Patch Retriever","href":"/api-reference/retrievers/patch-retriever"},{"openapi":"post /v1/retrievers/{retriever_id}/clone","title":"Clone Retriever","href":"/api-reference/retrievers/clone-retriever"},{"openapi":"delete /v1/retrievers/{retriever_id}","title":"Delete Retriever","href":"/api-reference/retrievers/delete-retriever"},{"openapi":"post /v1/retrievers/{retriever_id}/execute","title":"Execute Retriever (Auto-Optimized)","href":"/api-reference/retrievers/execute-retriever-auto-optimized"},{"openapi":"post /v1/retrievers/{retriever_id}/execute/batch","title":"Batch Execute Retriever","href":"/api-reference/retrievers/batch-execute-retriever"},{"openapi":"post /v1/retrievers/{retriever_id}/executions/list","title":"List Executions","href":"/api-reference/retrievers/list-executions"},{"openapi":"get /v1/retrievers/{retriever_id}/executions/{execution_id}","title":"Get Execution","href":"/api-reference/retrievers/get-execution"},{"openapi":"get /v1/retrievers/{retriever_id}/executions/{execution_id}/status","title":"Get Live Execution Status","href":"/api-reference/retrievers/get-live-execution-status"},{"openapi":"post /v1/retrievers/{retriever_id}/execute/explain","title":"Explain Retriever Execution Plan","href":"/api-reference/retrievers/explain-retriever-execution-plan"},{"openapi":"get /v1/retrievers/{retriever_id}/executions/{execution_id}/profile","title":"Get Execution Query Profile (explain-on-execute read path)","href":"/api-reference/retrievers/get-execution-profile"},{"openapi":"get /v1/retrievers/typeahead","title":"Typeahead","href":"/api-reference/retrievers/typeahead"},{"group":"Stages","pages":[{"openapi":"get /v1/retrievers/stages","title":"List Available Retriever Stages","href":"/api-reference/retriever-stages/list-available-retriever-stages"}]},{"group":"Interactions","pages":[{"openapi":"post /v1/retrievers/interactions","title":"Create Interaction","href":"/api-reference/retriever-interactions/create-interaction"},{"openapi":"post /v1/retrievers/interactions/list","title":"List Interactions","href":"/api-reference/retriever-interactions/list-interactions"},{"openapi":"get /v1/retrievers/interactions/{interaction_id}","title":"Get Interaction","href":"/api-reference/retriever-interactions/get-interaction"},{"openapi":"delete /v1/retrievers/interactions/{interaction_id}","title":"Delete Interaction","href":"/api-reference/retriever-interactions/delete-interaction"},{"openapi":"post /v1/retrievers/interactions/batch","title":"Create Interactions Bulk","href":"/api-reference/retriever-interactions/create-interactions-bulk"}]},{"group":"Evaluations","pages":[{"openapi":"get /v1/retrievers/evaluations/datasets","title":"List evaluation datasets","href":"/api-reference/retriever-evaluations/list-evaluation-datasets"},{"openapi":"post /v1/retrievers/evaluations/datasets","title":"Create evaluation dataset","href":"/api-reference/retriever-evaluations/create-evaluation-dataset"},{"openapi":"get /v1/retrievers/evaluations/datasets/{dataset_identifier}","title":"Get evaluation dataset","href":"/api-reference/retriever-evaluations/get-evaluation-dataset"},{"openapi":"get /v1/retrievers/{retriever_id}/evaluations","title":"List evaluations","href":"/api-reference/retriever-evaluations/list-evaluations"},{"openapi":"post /v1/retrievers/{retriever_id}/evaluations","title":"Run evaluation","href":"/api-reference/retriever-evaluations/run-evaluation"},{"openapi":"get /v1/retrievers/{retriever_id}/evaluations/{evaluation_id}","title":"Get evaluation results","href":"/api-reference/retriever-evaluations/get-evaluation-results"},{"openapi":"post /v1/evaluations/score","title":"Score predictions vs ground truth (stateless)","href":"/api-reference/retriever-evaluations/score-predictions"},{"openapi":"get /v1/evaluations","title":"Discover evaluation endpoints","href":"/api-reference/retriever-evaluations/discover-evaluation-endpoints"},{"openapi":"post /v1/retrievers/{retriever_id}/evaluations/generate-from-interactions","title":"Generate evaluation dataset from interactions","href":"/api-reference/retriever-evaluations/generate-from-interactions"}]},{"group":"Benchmarks","pages":[{"openapi":"get /v1/retrievers/benchmarks","title":"List benchmarks","href":"/api-reference/retriever-benchmarks/list-benchmarks"},{"openapi":"post /v1/retrievers/benchmarks","title":"Create benchmark","href":"/api-reference/retriever-benchmarks/create-benchmark"},{"openapi":"get /v1/retrievers/benchmarks/{benchmark_id}","title":"Get benchmark","href":"/api-reference/retriever-benchmarks/get-benchmark"},{"openapi":"delete /v1/retrievers/benchmarks/{benchmark_id}","title":"Delete benchmark","href":"/api-reference/retriever-benchmarks/delete-benchmark"}]},{"group":"API Keys","pages":[{"openapi":"post /v1/retrievers/{retriever_id}/api-keys","title":"Create Retriever API Key","href":"/api-reference/retriever-api-keys/create-retriever-api-key"},{"openapi":"get /v1/retrievers/{retriever_id}/api-keys","title":"List Retriever API Keys","href":"/api-reference/retriever-api-keys/list-retriever-api-keys"},{"openapi":"delete /v1/retrievers/{retriever_id}/api-keys/{key_id}","title":"Revoke Retriever API Key","href":"/api-reference/retriever-api-keys/revoke-retriever-api-key"}]},{"group":"Adhoc","pages":[{"openapi":"post /v1/retrievers/execute","title":"Execute Adhoc Retriever","href":"/api-reference/adhoc-retrievers/execute-adhoc-retriever"},{"openapi":"post /v1/retrievers/executions/list","title":"List Adhoc Executions","href":"/api-reference/adhoc-retrievers/list-adhoc-executions"},{"openapi":"get /v1/retrievers/executions/{execution_id}","title":"Get Adhoc Execution","href":"/api-reference/adhoc-retrievers/get-adhoc-execution"}]},{"group":"Publishing","pages":[{"openapi":"post /v1/retrievers/{retriever_id}/publish","title":"Publish Retriever","href":"/api-reference/published-retrievers/publish-retriever"},{"openapi":"get /v1/retrievers/published","title":"List Published Retrievers","href":"/api-reference/published-retrievers/list-published-retrievers"},{"openapi":"get /v1/retrievers/{retriever_id}/publish","title":"Get Published Retriever","href":"/api-reference/published-retrievers/get-published-retriever"},{"openapi":"patch /v1/retrievers/{retriever_id}/publish","title":"Update Published Retriever","href":"/api-reference/published-retrievers/update-published-retriever"},{"openapi":"delete /v1/retrievers/{retriever_id}/publish","title":"Unpublish Retriever","href":"/api-reference/published-retrievers/unpublish-retriever"},{"openapi":"get /v1/retrievers/{retriever_id}/publish/availability","title":"Check Name Availability","href":"/api-reference/published-retrievers/check-name-availability"},{"openapi":"get /v1/retrievers/publish/stats","title":"Get Organization Publish Stats","href":"/api-reference/published-retrievers/get-organization-publish-stats"},{"openapi":"post /v1/retrievers/{retriever_id}/publish/reconcile","title":"Reconcile Publish State","href":"/api-reference/published-retrievers/reconcile-publish-state"}]},{"group":"Public Retriever API","pages":[{"openapi":"get /v1/public/retrievers/","title":"List Public Retrievers","href":"/api-reference/public-retriever-api/list-public-retrievers"},{"openapi":"get /v1/public/retrievers/{public_name}/config","title":"Get Public Retriever Config","href":"/api-reference/public-retriever-api/get-public-retriever-config"},{"openapi":"get /v1/public/retrievers/{public_name}/template","title":"Get Public Retriever Template","href":"/api-reference/public-retriever-api/get-public-retriever-template"},{"openapi":"post /v1/public/retrievers/{public_name}/execute","title":"Execute Public Retriever","href":"/api-reference/public-retriever-api/execute-public-retriever"},{"openapi":"post /v1/public/retrievers/{public_name}/verify","title":"Verify Password","href":"/api-reference/public-retriever-api/verify-password"},{"openapi":"post /v1/public/retrievers/{public_name}/interactions","title":"Track Interaction","href":"/api-reference/public-retriever-api/track-interaction"},{"openapi":"post /v1/public/retrievers/{public_name}/interactions/batch","title":"Track Interaction Batch","href":"/api-reference/public-retriever-api/track-interaction-batch"}]},{"group":"Feature search","pages":[{"openapi":"post /v1/features/search","title":"Feature Search","href":"/api-reference/feature-search/feature-search"}]}]},{"group":"Enrich \u0026 Improve","pages":[{"group":"Taxonomies","pages":[{"openapi":"post /v1/taxonomies","title":"Create Taxonomy","href":"/api-reference/taxonomies/create-taxonomy"},{"openapi":"get /v1/taxonomies/{taxonomy_identifier}","title":"Get Taxonomy","href":"/api-reference/taxonomies/get-taxonomy"},{"openapi":"patch /v1/taxonomies/{taxonomy_identifier}","title":"Partially Update Taxonomy","href":"/api-reference/taxonomies/partially-update-taxonomy"},{"openapi":"post /v1/taxonomies/list","title":"List Taxonomies","href":"/api-reference/taxonomies/list-taxonomies"},{"openapi":"post /v1/taxonomies/execute/{taxonomy_identifier}","title":"Test taxonomy configuration (validation only) — DEPRECATED path","href":"/api-reference/taxonomies/test-taxonomy-configuration-validation-only"},{"openapi":"get /v1/taxonomies/{taxonomy_id}/versions","title":"List Taxonomy Versions","href":"/api-reference/taxonomies/list-taxonomy-versions"},{"openapi":"post /v1/taxonomies/{taxonomy_id}/versions","title":"Create Taxonomy Version","href":"/api-reference/taxonomies/create-taxonomy-version"},{"openapi":"post /v1/taxonomies/{taxonomy_identifier}/clone","title":"Clone Taxonomy","href":"/api-reference/taxonomies/clone-taxonomy"},{"openapi":"delete /v1/taxonomies/{taxonomy_identifier}","title":"Delete Taxonomy","href":"/api-reference/taxonomies/delete-taxonomy"},{"group":"Analytics","pages":[{"openapi":"get /v1/taxonomies/{taxonomy_id}/analytics/available-steps","title":"Get Available Steps","href":"/api-reference/taxonomy-analytics/get-available-steps"},{"openapi":"post /v1/taxonomies/{taxonomy_id}/analytics/transitions","title":"Compute step transition analytics","href":"/api-reference/taxonomy-analytics/compute-step-transition-analytics"},{"openapi":"post /v1/taxonomies/{taxonomy_id}/analytics/paths","title":"Analyze multi-step transition paths","href":"/api-reference/taxonomy-analytics/analyze-multi-step-transition-paths"},{"openapi":"get /v1/taxonomies/{taxonomy_id}/analytics/runs","title":"List taxonomy analytics run history","href":"/api-reference/taxonomy-analytics/list-taxonomy-analytics-run-history"},{"openapi":"get /v1/taxonomies/{taxonomy_id}/analytics/runs/{run_id}","title":"Get a taxonomy analytics run","href":"/api-reference/taxonomy-analytics/get-taxonomy-analytics-run"},{"openapi":"post /v1/taxonomies/{taxonomy_id}/analytics/runs/{run_id}/rerun","title":"Re-run a stored taxonomy analytics run","href":"/api-reference/taxonomy-analytics/re-run-stored-taxonomy-analytics-run"}]},{"openapi":"get /v1/taxonomies","title":"List taxonomies (GET alias for POST /list).","href":"/api-reference/taxonomies/list-taxonomies-get"},{"openapi":"post /v1/taxonomies/from-documents","title":"Create a taxonomy from a document selection or a cluster run (one gesture)","href":"/api-reference/taxonomies/create-taxonomy-from-document-selection"},{"openapi":"post /v1/taxonomies/{taxonomy_identifier}/nodes/from-documents","title":"Add a taxonomy node derived from a document selection","href":"/api-reference/taxonomies/add-taxonomy-node-derived-from-document"},{"openapi":"post /v1/taxonomies/{taxonomy_identifier}/execute","title":"Test taxonomy configuration (validation only)","href":"/api-reference/taxonomies/test-taxonomy-configuration"}]},{"group":"Clusters","pages":[{"openapi":"post /v1/clusters","title":"Create Cluster","href":"/api-reference/clusters/create-cluster"},{"openapi":"get /v1/clusters/{cluster_identifier}","title":"Get Cluster","href":"/api-reference/clusters/get-cluster"},{"openapi":"patch /v1/clusters/{cluster_identifier}","title":"Partially Update Cluster","href":"/api-reference/clusters/partially-update-cluster"},{"openapi":"post /v1/clusters/list","title":"List Clusters","href":"/api-reference/clusters/list-clusters"},{"openapi":"post /v1/clusters/{cluster_id}/execute","title":"Execute Clustering","href":"/api-reference/clusters/execute-clustering"},{"openapi":"get /v1/clusters/{cluster_id}/groups","title":"List Cluster Groups","href":"/api-reference/clusters/list-cluster-groups"},{"openapi":"delete /v1/clusters/{cluster_id}","title":"Delete Cluster","href":"/api-reference/clusters/delete-cluster"},{"group":"Triggers","pages":[{"openapi":"post /v1/clusters/triggers","title":"Create Cluster Trigger","href":"/api-reference/cluster-triggers/create-cluster-trigger"},{"openapi":"post /v1/clusters/triggers/list","title":"List Cluster Triggers","href":"/api-reference/cluster-triggers/list-cluster-triggers"},{"openapi":"get /v1/clusters/triggers/{trigger_id}","title":"Get Cluster Trigger","href":"/api-reference/cluster-triggers/get-cluster-trigger"},{"openapi":"patch /v1/clusters/triggers/{trigger_id}","title":"Update Cluster Trigger","href":"/api-reference/cluster-triggers/update-cluster-trigger"},{"openapi":"post /v1/clusters/triggers/{trigger_id}/pause","title":"Pause Cluster Trigger","href":"/api-reference/cluster-triggers/pause-cluster-trigger"},{"openapi":"post /v1/clusters/triggers/{trigger_id}/resume","title":"Resume Cluster Trigger","href":"/api-reference/cluster-triggers/resume-cluster-trigger"},{"openapi":"post /v1/clusters/triggers/{trigger_id}/history","title":"Get Trigger Execution History","href":"/api-reference/cluster-triggers/get-trigger-execution-history"},{"openapi":"delete /v1/clusters/triggers/{trigger_id}","title":"Delete Cluster Trigger","href":"/api-reference/cluster-triggers/delete-cluster-trigger"}]},{"group":"Executions","pages":[{"openapi":"get /v1/clusters/{cluster_id}/executions","title":"Get Latest Cluster Execution","href":"/api-reference/cluster-executions/get-latest-cluster-execution"},{"openapi":"get /v1/clusters/{cluster_id}/executions/{run_id}","title":"Get Specific Cluster Execution","href":"/api-reference/cluster-executions/get-specific-cluster-execution"},{"openapi":"post /v1/clusters/{cluster_id}/executions/list","title":"List Cluster Execution History","href":"/api-reference/cluster-executions/list-cluster-execution-history"},{"openapi":"post /v1/clusters/{cluster_id}/executions/{run_id}/cancel","title":"Cancel Execution","href":"/api-reference/cluster-executions/cancel-execution"},{"openapi":"get /v1/clusters/{cluster_id}/executions/{run_id}/export","title":"Export Cluster Run Data (CSV / Parquet)","href":"/api-reference/cluster-executions/export-cluster-run-data"},{"openapi":"patch /v1/clusters/{cluster_id}/executions/{run_id}/labels","title":"Rename Cluster Labels (Per-Execution)","href":"/api-reference/cluster-executions/rename-cluster-labels"},{"openapi":"patch /v1/clusters/{cluster_id}/executions/{run_id}/name","title":"Name an Execution Run","href":"/api-reference/cluster-executions/name-execution-run"}]},{"openapi":"get /v1/clusters","title":"List Clusters (GET)","href":"/api-reference/clusters/list-clusters-get"},{"openapi":"get /v1/clusters/{cluster_id}/visualization","title":"Cluster Visualization Data","href":"/api-reference/clusters/cluster-visualization-data"}]},{"group":"Annotations","pages":[{"openapi":"post /v1/annotations","title":"Create Annotation","href":"/api-reference/annotations/create-annotation"},{"openapi":"get /v1/annotations/{annotation_id}","title":"Get Annotation","href":"/api-reference/annotations/get-annotation"},{"openapi":"get /v1/annotations/{annotation_id}/versions","title":"Get Annotation Versions","href":"/api-reference/annotations/get-annotation-versions"},{"openapi":"get /v1/annotations/{annotation_id}/versions/{version}","title":"Get Annotation At Version","href":"/api-reference/annotations/get-annotation-at-version"},{"openapi":"post /v1/annotations/list","title":"List Annotations","href":"/api-reference/annotations/list-annotations"},{"openapi":"get /v1/annotations/stats","title":"Annotation Stats","href":"/api-reference/annotations/annotation-stats"},{"openapi":"patch /v1/annotations/{annotation_id}","title":"Patch Annotation","href":"/api-reference/annotations/update-annotation"},{"openapi":"delete /v1/annotations/{annotation_id}","title":"Delete Annotation","href":"/api-reference/annotations/delete-annotation"},{"openapi":"post /v1/annotations/bulk","title":"Bulk Annotations","href":"/api-reference/annotations/bulk-annotations"}]}]},{"group":"Automate","pages":[{"group":"Triggers","pages":[{"openapi":"post /v1/triggers","title":"Create Trigger","href":"/api-reference/create-trigger"},{"openapi":"post /v1/triggers/list","title":"List Triggers","href":"/api-reference/list-triggers"},{"openapi":"get /v1/triggers/{trigger_id}","title":"Get Trigger","href":"/api-reference/get-trigger"},{"openapi":"patch /v1/triggers/{trigger_id}","title":"Update Trigger","href":"/api-reference/update-trigger"},{"openapi":"delete /v1/triggers/{trigger_id}","title":"Delete Trigger","href":"/api-reference/delete-trigger"},{"openapi":"post /v1/triggers/{trigger_id}/execute","title":"Execute Trigger Now","href":"/api-reference/execute-trigger-now"},{"openapi":"post /v1/triggers/{trigger_id}/pause","title":"Pause Trigger","href":"/api-reference/pause-trigger"},{"openapi":"post /v1/triggers/{trigger_id}/resume","title":"Resume Trigger","href":"/api-reference/resume-trigger"},{"openapi":"get /v1/triggers/{trigger_id}/history","title":"Get Trigger Execution History","href":"/api-reference/get-trigger-execution-history"},{"openapi":"get /v1/triggers","title":"List Triggers (GET alias for POST /list).","href":"/api-reference/triggers/list-triggers"}]},{"group":"Webhooks","pages":[{"openapi":"post /v1/organizations/webhooks","title":"Create Webhook","href":"/api-reference/webhooks/create-webhook"},{"openapi":"post /v1/organizations/webhooks/list","title":"List Webhooks","href":"/api-reference/webhooks/list-webhooks"},{"openapi":"get /v1/organizations/webhooks/{identifier}","title":"Get Webhook","href":"/api-reference/webhooks/get-webhook"},{"openapi":"put /v1/organizations/webhooks/{identifier}","title":"Update Webhook","href":"/api-reference/webhooks/update-webhook"},{"openapi":"delete /v1/organizations/webhooks/{identifier}","title":"Delete Webhook","href":"/api-reference/webhooks/delete-webhook"}]},{"group":"Alerts","pages":[{"openapi":"post /v1/alerts","title":"Create Alert","href":"/api-reference/alerts/create-alert"},{"openapi":"get /v1/alerts/{alert_identifier}","title":"Get Alert","href":"/api-reference/alerts/get-alert"},{"openapi":"patch /v1/alerts/{alert_identifier}","title":"Update Alert","href":"/api-reference/alerts/update-alert"},{"openapi":"post /v1/alerts/list","title":"List Alerts","href":"/api-reference/alerts/list-alerts"},{"openapi":"delete /v1/alerts/{alert_identifier}","title":"Delete Alert","href":"/api-reference/alerts/delete-alert"},{"openapi":"get /v1/alerts/{alert_identifier}/executions","title":"List Alert Executions","href":"/api-reference/alerts/list-alert-executions"},{"openapi":"get /v1/alerts/executions/{execution_id}","title":"Get Alert Execution","href":"/api-reference/alerts/get-alert-execution"},{"openapi":"get /v1/alerts/{alert_identifier}/results","title":"Get Latest Alert Result","href":"/api-reference/alerts/get-latest-alert-result"},{"openapi":"get /v1/alerts/executions","title":"List All Executions","href":"/api-reference/alerts/list-all-executions"},{"openapi":"get /v1/alerts","title":"List Alerts (GET alias for POST /list).","href":"/api-reference/alerts/list-alerts-get"},{"openapi":"post /v1/organizations/alerts","title":"Create Org-Scoped Alert","href":"/api-reference/alerts/create-org-scoped-alert"},{"openapi":"get /v1/organizations/alerts","title":"List Org-Scoped Alerts (GET alias for POST /list).","href":"/api-reference/alerts/list-org-scoped-alerts"},{"openapi":"post /v1/organizations/alerts/list","title":"List Org-Scoped Alerts","href":"/api-reference/alerts/list-org-scoped-alerts-list"},{"openapi":"get /v1/organizations/alerts/{alert_identifier}","title":"Get Org-Scoped Alert","href":"/api-reference/alerts/get-org-scoped-alert"},{"openapi":"patch /v1/organizations/alerts/{alert_identifier}","title":"Update Org-Scoped Alert","href":"/api-reference/alerts/update-org-scoped-alert"},{"openapi":"delete /v1/organizations/alerts/{alert_identifier}","title":"Delete Org-Scoped Alert","href":"/api-reference/alerts/delete-org-scoped-alert"}]},{"group":"Notifications","pages":[{"openapi":"post /v1/notifications/list","title":"List Notifications","href":"/api-reference/notifications/list-notifications"},{"openapi":"get /v1/notifications/{notification_id}","title":"Get Notification","href":"/api-reference/notifications/get-notification"},{"openapi":"post /v1/notifications/{notification_id}/read","title":"Mark As Read","href":"/api-reference/notifications/mark-as-read"},{"openapi":"post /v1/notifications/read/all","title":"Mark All As Read","href":"/api-reference/notifications/mark-all-as-read"},{"openapi":"get /v1/notifications/unread/count","title":"Get Unread Count","href":"/api-reference/notifications/get-unread-count"},{"openapi":"delete /v1/notifications/{notification_id}","title":"Delete Notification","href":"/api-reference/notifications/delete-notification"},{"openapi":"get /v1/notifications/preferences","title":"Get Preferences","href":"/api-reference/notifications/get-preferences"},{"openapi":"put /v1/notifications/preferences","title":"Update Preferences","href":"/api-reference/notifications/update-preferences"},{"openapi":"get /v1/notifications/preferences/reminders","title":"Get Reminder Preferences","href":"/api-reference/notifications/get-reminder-preferences"},{"openapi":"put /v1/notifications/preferences/reminders","title":"Update Reminder Preferences","href":"/api-reference/notifications/update-reminder-preferences"},{"openapi":"get /v1/notifications/funnel/state","title":"Get Funnel State","href":"/api-reference/notifications/get-funnel-state"},{"openapi":"post /v1/notifications/funnel/advance","title":"Advance Funnel Stage","href":"/api-reference/notifications/advance-funnel-stage"}]},{"group":"Tasks","pages":[{"openapi":"post /v1/tasks/list","title":"List Tasks","href":"/api-reference/tasks/list-tasks"},{"openapi":"get /v1/tasks/{task_id}","title":"Get Task Information","href":"/api-reference/tasks/get-task-information"},{"openapi":"delete /v1/tasks/{task_id}","title":"Kill Task","href":"/api-reference/tasks/kill-task"}]},{"group":"Batch Queue","pages":[{"openapi":"post /v1/batches/list","title":"List All Batches","href":"/api-reference/batches/list-all-batches"},{"openapi":"get /v1/batches/{batch_id}","title":"Get Batch by ID","href":"/api-reference/batches/get-batch-by-id"},{"openapi":"post /v1/batches/{batch_id}/cancel","title":"Cancel Batch","href":"/api-reference/batches/cancel-batch"},{"openapi":"get /v1/batches/queue","title":"Batch Queue Status","href":"/api-reference/batches/batch-queue-status"}]}]},{"group":"Administer","pages":[{"group":"Organization","pages":[{"openapi":"get /v1/me","title":"Whoami","href":"/api-reference/account/whoami"},{"openapi":"get /v1/organizations","title":"Get Organization","href":"/api-reference/organizations/get-organization"},{"openapi":"patch /v1/organizations","title":"Update Organization","href":"/api-reference/organizations/update-organization"},{"openapi":"get /v1/organizations/targets","title":"Get Organization Targets","href":"/api-reference/organizations/get-organization-targets"},{"group":"Users","pages":[{"openapi":"get /v1/organizations/users","title":"List Users","href":"/api-reference/organization-users/list-users"},{"openapi":"post /v1/organizations/users","title":"Create User","href":"/api-reference/organization-users/create-user"},{"openapi":"get /v1/organizations/users/{user_email}","title":"Get User","href":"/api-reference/organization-users/get-user"},{"openapi":"patch /v1/organizations/users/{user_email}","title":"Update User","href":"/api-reference/organization-users/update-user"},{"openapi":"delete /v1/organizations/users/{user_email}","title":"Delete User","href":"/api-reference/organization-users/delete-user"}]},{"group":"API Keys","pages":[{"openapi":"get /v1/organizations/users/{user_email}/api-keys","title":"List Api Keys","href":"/api-reference/organization-api-keys/list-api-keys"},{"openapi":"post /v1/organizations/users/{user_email}/api-keys","title":"Create Api Key","href":"/api-reference/organization-api-keys/create-api-key"},{"openapi":"patch /v1/organizations/users/{user_email}/api-keys/{key_name}","title":"Update Api Key","href":"/api-reference/organization-api-keys/update-api-key"},{"openapi":"post /v1/organizations/users/{user_email}/api-keys/{key_name}/rotate","title":"Rotate Api Key","href":"/api-reference/organization-api-keys/rotate-api-key"},{"openapi":"delete /v1/organizations/users/{user_email}/api-keys/{key_name}","title":"Delete Api Key","href":"/api-reference/organization-api-keys/delete-api-key"},{"openapi":"post /v1/auth/token-exchange","title":"Exchange a workload OIDC token for a short-lived API key","href":"/api-reference/organization-api-keys/exchange-oidc-token"}]},{"group":"Storage Connections","pages":[{"openapi":"post /v1/organizations/connections/list","title":"List Storage Connections","href":"/api-reference/organization-connections/list-storage-connections"},{"openapi":"post /v1/organizations/connections","title":"Create Storage Connection","href":"/api-reference/organization-connections/create-storage-connection"},{"openapi":"get /v1/organizations/connections/{connection_identifier}","title":"Get Storage Connection","href":"/api-reference/organization-connections/get-storage-connection"},{"openapi":"patch /v1/organizations/connections/{connection_identifier}","title":"Update Storage Connection","href":"/api-reference/organization-connections/update-storage-connection"},{"openapi":"post /v1/organizations/connections/{connection_identifier}/test","title":"Test Storage Connection","href":"/api-reference/organization-connections/test-storage-connection"},{"openapi":"delete /v1/organizations/connections/{connection_identifier}","title":"Delete Storage Connection","href":"/api-reference/organization-connections/delete-storage-connection"},{"openapi":"get /v1/organizations/connections/{connection_identifier}/files","title":"List Google Drive Files","href":"/api-reference/organization-connections/list-google-drive-files"},{"openapi":"get /v1/organizations/connections/{connection_identifier}/folders","title":"List Google Drive Folders","href":"/api-reference/organization-connections/list-google-drive-folders"}]},{"group":"Secrets","pages":[{"openapi":"get /v1/organizations/secrets","title":"List Secrets","href":"/api-reference/organization-secrets/list-secrets"},{"openapi":"post /v1/organizations/secrets","title":"Create Secret","href":"/api-reference/organization-secrets/create-secret"},{"openapi":"put /v1/organizations/secrets/{secret_name}","title":"Update Secret","href":"/api-reference/organization-secrets/update-secret"},{"openapi":"delete /v1/organizations/secrets/{secret_name}","title":"Delete Secret","href":"/api-reference/organization-secrets/delete-secret"}]},{"group":"Billing","pages":[{"openapi":"get /v1/organizations/billing/balance","title":"Get Credit Balance","href":"/api-reference/organization-billing/get-credit-balance"},{"openapi":"get /v1/organizations/billing/usage/current","title":"Get Current Usage","href":"/api-reference/organization-billing/get-current-usage"},{"openapi":"get /v1/organizations/billing/usage/vector-backend","title":"Get Vector Backend Usage","href":"/api-reference/organization-billing/get-vector-backend-usage"},{"openapi":"get /v1/organizations/billing/usage/breakdown","title":"Get Usage Breakdown","href":"/api-reference/organization-billing/get-usage-breakdown"},{"openapi":"get /v1/organizations/billing/spending-caps","title":"Get Spending Caps","href":"/api-reference/organization-billing/get-spending-caps"},{"openapi":"post /v1/organizations/billing/spending-caps","title":"Update Spending Caps","href":"/api-reference/organization-billing/update-spending-caps"},{"openapi":"post /v1/organizations/billing/setup-payment-method","title":"Setup Payment Method","href":"/api-reference/organization-billing/setup-payment-method"},{"openapi":"post /v1/organizations/billing/confirm-payment-method","title":"Confirm Payment Method","href":"/api-reference/organization-billing/confirm-payment-method"},{"openapi":"get /v1/organizations/billing/payment-method","title":"Get Payment Method","href":"/api-reference/organization-billing/get-payment-method"},{"openapi":"get /v1/organizations/billing/invoices","title":"List Invoices","href":"/api-reference/organization-billing/list-invoices"},{"openapi":"post /v1/organizations/billing/generate-invoice","title":"Generate Invoice Now","href":"/api-reference/organization-billing/generate-invoice-now"},{"openapi":"post /v1/organizations/billing/enable-auto-billing","title":"Enable Auto Billing","href":"/api-reference/organization-billing/enable-auto-billing"},{"openapi":"post /v1/organizations/billing/disable-auto-billing","title":"Disable Auto Billing","href":"/api-reference/organization-billing/disable-auto-billing"},{"openapi":"post /v1/organizations/billing/estimate","title":"Estimate Cost","href":"/api-reference/organization-billing/estimate-cost"},{"openapi":"get /v1/organizations/billing/transactions","title":"List Transactions","href":"/api-reference/organization-billing/list-transactions"},{"openapi":"post /v1/organizations/billing/checkout","title":"Create Checkout","href":"/api-reference/organization-billing/create-checkout"},{"openapi":"post /v1/organizations/billing/subscribe","title":"Subscribe To Plan","href":"/api-reference/organization-billing/subscribe-plan"},{"openapi":"post /v1/organizations/billing/portal","title":"Open Billing Portal","href":"/api-reference/organization-billing/open-billing-portal"},{"openapi":"get /v1/organizations/billing/subscription","title":"Get Subscription Status","href":"/api-reference/organization-billing/get-subscription-status"},{"openapi":"post /v1/organizations/billing/subscription/cancel","title":"Cancel Subscription","href":"/api-reference/organization-billing/cancel-subscription"},{"openapi":"post /v1/organizations/billing/apply-promo","title":"Apply Promo","href":"/api-reference/organization-billing/apply-promo"},{"openapi":"post /v1/organizations/billing/redeem-promo","title":"Redeem Promo","href":"/api-reference/organization-billing/redeem-promo"}]},{"group":"Usage","pages":[{"openapi":"get /v1/organizations/usage","title":"Get Org Usage","href":"/api-reference/organization-usage/get-org-usage"},{"openapi":"get /v1/organizations/api-keys/{key_id}/usage","title":"Get Api Key Usage","href":"/api-reference/organization-usage/get-api-key-usage"},{"openapi":"get /v1/organizations/api-keys/{key_id}/usage/endpoints","title":"Get Api Key Endpoint Breakdown","href":"/api-reference/organization-usage/get-api-key-endpoint-breakdown"}]},{"group":"Audit Logs","pages":[{"openapi":"get /v1/organizations/audit/logs","title":"List Audit Logs","href":"/api-reference/organization-audit/list-audit-logs"},{"openapi":"get /v1/organizations/audit/logs/export","title":"Export Audit Logs","href":"/api-reference/organization-audit/export-audit-logs"},{"openapi":"get /v1/organizations/audit/logs/{audit_id}","title":"Get Audit Log","href":"/api-reference/organization-audit/get-audit-log"},{"openapi":"get /v1/organizations/audit/settings","title":"Get Audit Settings","href":"/api-reference/organization-audit/get-audit-settings"},{"openapi":"patch /v1/organizations/audit/settings","title":"Update Audit Settings","href":"/api-reference/organization-audit/update-audit-settings"}]},{"group":"Privacy (DSAR)","pages":[{"openapi":"post /v1/organizations/dsar/export","title":"Request Data Export","href":"/api-reference/data-subject-access-requests/request-data-export"},{"openapi":"post /v1/organizations/dsar/delete","title":"Request Data Deletion","href":"/api-reference/data-subject-access-requests/request-data-deletion"},{"openapi":"get /v1/organizations/dsar/status","title":"List Dsar Requests","href":"/api-reference/data-subject-access-requests/list-dsar-requests"}]},{"openapi":"get /v1/organizations/credits","title":"Get Credits","href":"/api-reference/organizations/get-credits"},{"group":"Infrastructure","pages":[{"openapi":"get /v1/organizations/infrastructure/summary","title":"Get Infrastructure","href":"/api-reference/organization-infrastructure/get-infrastructure"}]}]},{"group":"Pricing","pages":[{"openapi":"get /v1/billing/pricing","title":"Get Pricing Configuration","href":"/api-reference/pricing/get-pricing-configuration"}]},{"group":"Support","pages":[{"openapi":"post /v1/support/tickets","title":"Create Support Ticket","href":"/api-reference/support/create-support-ticket"},{"openapi":"get /v1/support/tickets","title":"List Support Tickets","href":"/api-reference/support/list-support-tickets"},{"openapi":"post /v1/support/tickets/list","title":"List Support Tickets (org + global).","href":"/api-reference/support/list-support-tickets-list"},{"openapi":"get /v1/support/tickets/{ticket_identifier}","title":"Get Support Ticket (with message thread).","href":"/api-reference/support/get-support-ticket"},{"openapi":"patch /v1/support/tickets/{ticket_identifier}","title":"Update a support ticket (status/priority).","href":"/api-reference/support/update-support-ticket"},{"openapi":"post /v1/support/tickets/{ticket_identifier}/messages","title":"Reply to a support ticket.","href":"/api-reference/support/reply-support-ticket"},{"openapi":"post /v1/support/comms/list","title":"List correspondence (ticket messages + broadcasts, org + global).","href":"/api-reference/support/list-correspondence"},{"openapi":"get /v1/support/comms","title":"List Correspondence","href":"/api-reference/support/list-correspondence-get"},{"openapi":"post /v1/support/comms/broadcast","title":"Create a broadcast communication (Mixpeek admin only).","href":"/api-reference/support/create-broadcast-communication"},{"openapi":"post /v1/support/videos/upload-url","title":"Presigned PUT to upload a support video to cold storage (admin only).","href":"/api-reference/support/presigned-put-upload-support-video-cold"},{"openapi":"post /v1/support/videos","title":"Register a support video (admin only); triggers Gemini review for uploads.","href":"/api-reference/support/register-support-video-triggers-gemini-review"},{"openapi":"get /v1/support/videos","title":"List Support Videos","href":"/api-reference/support/list-support-videos"},{"openapi":"post /v1/support/videos/list","title":"List curated support videos (org + global).","href":"/api-reference/support/list-curated-support-videos"},{"openapi":"get /v1/support/videos/{video_identifier}","title":"Get a support video (with presigned playback URL + chapters).","href":"/api-reference/support/get-support-video"}]}]},{"group":"Advanced","pages":[{"group":"Apps","pages":[{"openapi":"post /v1/apps","title":"Create an App","href":"/api-reference/apps/create-app"},{"openapi":"get /v1/apps","title":"List Apps","href":"/api-reference/apps/list-apps"},{"openapi":"get /v1/apps/{app_id}","title":"Get an App","href":"/api-reference/apps/get-app"},{"openapi":"patch /v1/apps/{app_id}","title":"Update an App","href":"/api-reference/apps/update-app"},{"openapi":"delete /v1/apps/{app_id}","title":"Delete an App","href":"/api-reference/apps/delete-app"},{"openapi":"post /v1/apps/{app_id}/publish","title":"Publish an App","href":"/api-reference/apps/publish-app"},{"openapi":"post /v1/apps/{app_id}/rollback","title":"Rollback an App","href":"/api-reference/apps/rollback-app"},{"group":"Deploy","pages":[{"openapi":"post /v1/apps/{app_id}/deploy","title":"Deploy an App","href":"/api-reference/apps/deploy-app"},{"openapi":"post /v1/apps/{app_id}/deploy/upload-url","title":"Get presigned upload URL","href":"/api-reference/apps/get-deploy-upload-url"},{"title":"Get Deploy Status","openapi":"GET /v1/apps/{app_id}/deploys/{deploy_id}","href":"/api-reference/apps/get-deploy-status"},{"openapi":"get /v1/apps/{app_id}/deploys/{deploy_id}/logs/stream","title":"Stream deploy logs (SSE)","href":"/api-reference/apps/stream-deploy-logs-sse"},{"openapi":"post /v1/apps/{app_id}/deploy/verify-upload","title":"Verify a presigned-URL upload landed in S3","href":"/api-reference/apps/verify-a-presigned-url-upload-landed-in-s3"},{"openapi":"post /v1/apps/{app_id}/promote","title":"Promote staging to production","href":"/api-reference/apps/promote-staging-to-production"}]},{"group":"GitHub","pages":[{"openapi":"post /v1/apps/{app_id}/connect-repo","title":"Connect a GitHub repository","href":"/api-reference/apps/connect-a-github-repository"},{"openapi":"delete /v1/apps/{app_id}/connect-repo","title":"Disconnect GitHub repository","href":"/api-reference/apps/disconnect-github-repository"}]},{"group":"Users","pages":[{"openapi":"get /v1/apps/{app_id}/users","title":"List app users","href":"/api-reference/apps/list-app-users"},{"openapi":"post /v1/apps/{app_id}/users/invite","title":"Invite a user","href":"/api-reference/apps/invite-a-user"},{"openapi":"get /v1/apps/{app_id}/users/invitations","title":"List pending invitations","href":"/api-reference/apps/list-pending-invitations"},{"openapi":"patch /v1/apps/{app_id}/users/{user_id}/role","title":"Update user role","href":"/api-reference/apps/update-user-role"},{"openapi":"delete /v1/apps/{app_id}/users/{user_id}","title":"Remove a user","href":"/api-reference/apps/remove-a-user"},{"openapi":"delete /v1/apps/{app_id}/users/invitations/{invitation_id}","title":"Revoke an invitation","href":"/api-reference/apps/revoke-an-invitation"}]},{"group":"Versions","pages":[{"openapi":"get /v1/apps/{app_id}/versions","title":"List version history","href":"/api-reference/apps/list-versions"},{"title":"Get Version Details","openapi":"GET /v1/apps/{app_id}/versions/{version}","href":"/api-reference/apps/get-version"},{"title":"Diff Two Versions","openapi":"GET /v1/apps/{app_id}/versions/{from_version}/diff/{to_version}","href":"/api-reference/apps/diff-versions"},{"title":"Download Version Bundle","openapi":"GET /v1/apps/{app_id}/versions/{version}/download","href":"/api-reference/apps/download-version"},{"title":"Restore a Version","openapi":"POST /v1/apps/{app_id}/versions/{version}/restore","href":"/api-reference/apps/restore-version"}]},{"group":"Domains","pages":[{"openapi":"post /v1/apps/{app_id}/domains","title":"Add a custom domain","href":"/api-reference/apps/add-domain"},{"openapi":"get /v1/apps/{app_id}/domains","title":"List custom domains","href":"/api-reference/apps/list-domains"},{"openapi":"delete /v1/apps/{app_id}/domains/{domain}","title":"Remove a domain","href":"/api-reference/apps/delete-domain"},{"openapi":"post /v1/apps/{app_id}/domains/{domain}/verify","title":"Trigger DNS verification","href":"/api-reference/apps/verify-domain"}]},{"group":"Analytics","pages":[{"openapi":"get /v1/apps/{app_id}/analytics","title":"Get app analytics overview","href":"/api-reference/apps/get-app-analytics-overview"},{"openapi":"get /v1/apps/{app_id}/error-rate","title":"Get recent error rate","href":"/api-reference/apps/get-recent-error-rate"},{"openapi":"get /v1/apps/{app_id}/logs","title":"Get runtime or request logs","href":"/api-reference/apps/get-runtime-or-request-logs"}]},{"group":"Public","pages":[{"openapi":"get /v1/public/apps/{slug}/config","title":"Get public App config","href":"/api-reference/public-apps-api/get-app-config"},{"openapi":"post /v1/public/apps/{slug}/search","title":"Execute an App tab search","href":"/api-reference/public-apps-api/search-app"},{"openapi":"get /v1/public/apps/{slug}/gallery","title":"Get App featured gallery","href":"/api-reference/public-apps-api/get-app-gallery"},{"openapi":"get /v1/public/apps/{slug}/taxonomies/{taxonomy_id}/tree","title":"Get taxonomy node tree for an App","href":"/api-reference/public-apps-api/get-app-taxonomies"},{"openapi":"post /v1/public/apps/{slug}/interactions","title":"Track an App interaction event","href":"/api-reference/public-apps-api/track-app-interaction"}]},{"openapi":"get /v1/apps/{app_id}/github/install-url","title":"Get the GitHub App install URL for this app","href":"/api-reference/apps/get-github-app-install-url-app"}]},{"group":"Agent Sessions","pages":[{"openapi":"post /v1/agents/sessions","title":"Create Session","href":"/api-reference/agent-sessions/create-session"},{"openapi":"post /v1/agents/sessions/list","title":"List Sessions","href":"/api-reference/agent-sessions/list-sessions"},{"openapi":"get /v1/agents/sessions/{session_id}","title":"Get Session","href":"/api-reference/agent-sessions/get-session"},{"openapi":"patch /v1/agents/sessions/{session_id}","title":"Patch Session","href":"/api-reference/agent-sessions/patch-session"},{"openapi":"post /v1/agents/sessions/{session_id}/messages","title":"Send Message","href":"/api-reference/agent-sessions/send-message"},{"openapi":"get /v1/agents/sessions/{session_id}/history","title":"Get History","href":"/api-reference/agent-sessions/get-history"},{"openapi":"get /v1/agents/sessions/tools","title":"List Tools","href":"/api-reference/agent-sessions/list-tools"},{"openapi":"post /v1/agents/sessions/intent/detect","title":"Detect Intent","href":"/api-reference/agent-sessions/detect-intent"},{"openapi":"post /v1/agents/sessions/{session_id}/confirmations/{confirmation_id}","title":"Respond To Confirmation","href":"/api-reference/agent-sessions/respond-to-confirmation"},{"openapi":"post /v1/agents/sessions/{session_id}/feedback","title":"Submit Feedback","href":"/api-reference/agent-sessions/submit-feedback"},{"openapi":"delete /v1/agents/sessions/{session_id}","title":"Terminate Session","href":"/api-reference/agent-sessions/terminate-session"}]},{"group":"Templates","pages":[{"group":"Namespace","pages":[{"openapi":"get /v1/templates/namespaces","title":"List Namespace Templates","href":"/api-reference/templates/list-namespace-templates"},{"openapi":"get /v1/templates/namespaces/{template_id}","title":"Get Namespace Template","href":"/api-reference/templates/get-namespace-template"},{"openapi":"post /v1/templates/namespaces/from-namespace/{namespace_id}","title":"Create Namespace Template","href":"/api-reference/templates/create-namespace-template"}]},{"group":"Retriever","pages":[{"openapi":"post /v1/templates/retrievers","title":"List Retriever Templates","href":"/api-reference/templates/list-retriever-templates"},{"openapi":"get /v1/templates/retrievers/{template_id}","title":"Get Retriever Template","href":"/api-reference/templates/get-retriever-template"},{"openapi":"post /v1/templates/retrievers/from-retriever/{retriever_id}","title":"Create Retriever Template","href":"/api-reference/templates/create-retriever-template"},{"openapi":"post /v1/templates/retrievers/{template_id}/instantiate","title":"Instantiate Retriever Template","href":"/api-reference/templates/instantiate-retriever-template"}]},{"group":"Collection","pages":[{"openapi":"post /v1/templates/collections","title":"List Collection Templates","href":"/api-reference/templates/list-collection-templates"},{"openapi":"get /v1/templates/collections/{template_id}","title":"Get Collection Template","href":"/api-reference/templates/get-collection-template"},{"openapi":"post /v1/templates/collections/from-collection/{collection_id}","title":"Create Collection Template","href":"/api-reference/templates/create-collection-template"},{"openapi":"post /v1/templates/collections/{template_id}/instantiate","title":"Instantiate Collection Template","href":"/api-reference/templates/instantiate-collection-template"}]},{"group":"Bucket","pages":[{"openapi":"post /v1/templates/buckets","title":"List Bucket Templates","href":"/api-reference/templates/list-bucket-templates"},{"openapi":"get /v1/templates/buckets/{template_id}","title":"Get Bucket Template","href":"/api-reference/templates/get-bucket-template"},{"openapi":"post /v1/templates/buckets/from-bucket/{bucket_id}","title":"Create Bucket Template","href":"/api-reference/templates/create-bucket-template"},{"openapi":"post /v1/templates/buckets/{template_id}/instantiate","title":"Instantiate Bucket Template","href":"/api-reference/templates/instantiate-bucket-template"}]},{"group":"Cluster","pages":[{"openapi":"post /v1/templates/clusters","title":"List Cluster Templates","href":"/api-reference/templates/list-cluster-templates"},{"openapi":"get /v1/templates/clusters/{template_id}","title":"Get Cluster Template","href":"/api-reference/templates/get-cluster-template"},{"openapi":"post /v1/templates/clusters/from-cluster/{cluster_id}","title":"Create Cluster Template","href":"/api-reference/templates/create-cluster-template"},{"openapi":"post /v1/templates/clusters/{template_id}/instantiate","title":"Instantiate Cluster Template","href":"/api-reference/templates/instantiate-cluster-template"}]},{"group":"Taxonomy","pages":[{"openapi":"post /v1/templates/taxonomies","title":"List Taxonomy Templates","href":"/api-reference/templates/list-taxonomy-templates"},{"openapi":"get /v1/templates/taxonomies/{template_id}","title":"Get Taxonomy Template","href":"/api-reference/templates/get-taxonomy-template"},{"openapi":"post /v1/templates/taxonomies/from-taxonomy/{taxonomy_id}","title":"Create Taxonomy Template","href":"/api-reference/templates/create-taxonomy-template"},{"openapi":"post /v1/templates/taxonomies/{template_id}/instantiate","title":"Instantiate Taxonomy Template","href":"/api-reference/templates/instantiate-taxonomy-template"}]},{"group":"Public Templates","pages":[{"openapi":"get /v1/public/templates/namespaces","title":"List Public Namespace Templates","href":"/api-reference/public-templates-api/list-public-namespace-templates"},{"openapi":"get /v1/public/templates/namespaces/{template_id}","title":"Get Public Namespace Template","href":"/api-reference/public-templates-api/get-public-namespace-template"},{"openapi":"get /v1/public/templates/retrievers","title":"List Public Retriever Templates","href":"/api-reference/public-templates-api/list-public-retriever-templates"},{"openapi":"get /v1/public/templates/retrievers/{template_id}","title":"Get Public Retriever Template","href":"/api-reference/public-templates-api/get-public-retriever-template"},{"openapi":"get /v1/public/templates/scaffolds","title":"List Scaffolds","href":"/api-reference/public-templates-api/list-scaffolds"},{"openapi":"get /v1/public/templates/scaffolds/{template_id}","title":"Get Scaffold","href":"/api-reference/public-templates-api/get-scaffold"},{"openapi":"get /v1/public/templates/scaffolds/{template_id}/sample-data","title":"Get Scaffold Sample Data","href":"/api-reference/public-templates-api/get-scaffold-sample-data"},{"openapi":"get /v1/public/templates/scaffolds/{template_id}/manifest","title":"Get Scaffold Manifest","href":"/api-reference/public-templates-api/get-scaffold-manifest"}]},{"group":"Scaffold Templates","pages":[{"openapi":"post /v1/templates/scaffolds/default","title":"Get Or Create Default Namespace","href":"/api-reference/scaffold-templates/get-or-create-default-namespace"},{"openapi":"get /v1/templates/scaffolds/{template_id}/manifest","title":"Get Scaffold Template Manifest","description":"Render a scaffold template as a Mixpeek manifest.\n\nConverts the scaffold's configuration (namespace, bucket, collections,\nretriever, taxonomies, clusters) into declarative Infrastructure-as-Code\nYAML — the same format used by `POST /v1/manifest/apply` and\n`GET /v1/manifest/export`.\n\nReturns both the YAML string (`manifest_yaml`) and the parsed manifest\ndict (`manifest`).","href":"/api-reference/scaffold-templates/get-scaffold-template-manifest"}]}]},{"group":"Manifest","pages":[{"openapi":"post /v1/manifest/apply","title":"Apply Manifest","href":"/api-reference/manifest/apply-manifest"},{"openapi":"post /v1/manifest/validate","title":"Validate Manifest","description":"Validate a YAML manifest without applying.\n\nChecks:\n- YAML syntax validity\n- Schema validation against manifest models\n- Cross-resource reference validation\n- Dependency resolution (no circular dependencies)\n- Secret reference existence\n- Every extractor a namespace or collection names exists and is turned on\n- Retriever stages are registered and their parameters valid\n- Every feature URI a retriever or cluster names is written by a collection\n- Alert applications map every input their alert's retriever requires\n- Namespace budgets above the organization's bound (a warning: apply sets\n the bound)\n\nThese are the checks apply runs before creating anything, so a manifest\nthat validates with no errors is one apply will not refuse on references.\n\nReturns detailed validation results including:\n- Resource counts by type\n- Missing secrets that need to be configured\n- Validation errors and warnings\n\n**Example:**\n```bash\ncurl -X POST /v1/manifest/validate \\\n -H \"Authorization: Bearer $API_KEY\" \\\n -F \"manifest_file=@mixpeek.yaml\"\n```","href":"/api-reference/manifest/validate-manifest"},{"openapi":"get /v1/manifest/export","title":"Export Manifest Get","href":"/api-reference/manifest/export-manifest"},{"openapi":"post /v1/manifest/diff","title":"Diff Manifest","href":"/api-reference/manifest/diff-manifest"},{"openapi":"post /v1/manifest/generate","title":"Generate Manifest","href":"/api-reference/manifest/generate-manifest"},{"openapi":"post /v1/manifest/lint","title":"Lint Manifest","href":"/api-reference/manifest/lint-manifest"}]},{"group":"Analytics","pages":[{"group":"Namespace","pages":[{"openapi":"get /v1/analytics/namespaces/summary","title":"Get Namespace Summary","href":"/api-reference/analytics/get-namespace-summary"},{"openapi":"get /v1/analytics/indexes/usage","title":"Get Field Usage","href":"/api-reference/analytics/get-field-usage"},{"openapi":"get /v1/analytics/namespaces/fields/performance","title":"Get Field Performance","href":"/api-reference/analytics/get-field-performance"},{"openapi":"get /v1/analytics/namespaces/fields/most-queried","title":"Get Most Queried Fields","href":"/api-reference/analytics/get-most-queried-fields"},{"openapi":"get /v1/analytics/namespaces/indexes/compound-patterns","title":"Get Compound Index Patterns","href":"/api-reference/analytics/get-compound-index-patterns"},{"openapi":"get /v1/analytics/namespaces/indexes/recommendations","title":"Get Index Recommendations","href":"/api-reference/analytics/get-index-recommendations"},{"openapi":"get /v1/analytics/indexes/suggestions","title":"Get Index Suggestions","href":"/api-reference/analytics/get-index-suggestions"},{"openapi":"get /v1/analytics/namespaces/errors","title":"Get Namespace Errors","href":"/api-reference/analytics/get-namespace-errors"}]},{"group":"Buckets","pages":[{"openapi":"get /v1/analytics/buckets/{bucket_id}/health","title":"Get Bucket Health","href":"/api-reference/analytics/get-bucket-health"},{"openapi":"get /v1/analytics/buckets/health","title":"Get Namespace Buckets Health","href":"/api-reference/analytics/get-namespace-buckets-health"},{"openapi":"get /v1/analytics/buckets/{bucket_id}/storage","title":"Get Bucket Storage","href":"/api-reference/analytics/get-bucket-storage"},{"openapi":"get /v1/analytics/buckets/{bucket_id}/usage","title":"Get Bucket Usage","href":"/api-reference/analytics/get-bucket-usage"},{"openapi":"get /v1/analytics/buckets/{bucket_id}/sync-performance","title":"Get Sync Performance","href":"/api-reference/analytics/get-sync-performance"},{"openapi":"get /v1/analytics/buckets/{bucket_id}/sync-comparison","title":"Get Sync Comparison","href":"/api-reference/analytics/get-sync-comparison"},{"openapi":"get /v1/analytics/buckets/{bucket_id}/upload-performance","title":"Get Upload Performance","href":"/api-reference/analytics/get-upload-performance"}]},{"group":"Collections","pages":[{"openapi":"get /v1/analytics/collections/{collection_id}/overview","title":"Get Collection Overview","href":"/api-reference/analytics/get-collection-overview"},{"openapi":"get /v1/analytics/collections/{collection_id}/growth","title":"Get Document Growth","href":"/api-reference/analytics/get-document-growth"},{"openapi":"get /v1/analytics/collections/{collection_id}/latency","title":"Get Latency Metrics","href":"/api-reference/analytics/get-latency-metrics"},{"openapi":"get /v1/analytics/collections/{collection_id}/failures","title":"Get Failure Analysis","href":"/api-reference/analytics/get-failure-analysis"},{"openapi":"get /v1/analytics/extractors/performance","title":"Get Extractor Performance","href":"/api-reference/analytics/get-extractor-performance"}]},{"group":"Retrievers","pages":[{"openapi":"get /v1/analytics/retrievers/{retriever_id}/performance","title":"Get Retriever Performance","href":"/api-reference/analytics/get-retriever-performance"},{"openapi":"get /v1/analytics/retrievers/{retriever_id}/signals","title":"Get Retriever Signals","href":"/api-reference/analytics/get-retriever-signals"},{"openapi":"get /v1/analytics/namespaces/queries/slow","title":"Get Slow Queries","href":"/api-reference/analytics/get-slow-queries"},{"openapi":"get /v1/analytics/retrievers/{retriever_id}/stages","title":"Get Stage Breakdown","href":"/api-reference/analytics/get-stage-breakdown"},{"openapi":"get /v1/analytics/retrievers/{retriever_id}/cache-performance","title":"Get Cache Performance","href":"/api-reference/analytics/get-cache-performance"},{"openapi":"post /v1/analytics/retrievers/{retriever_id}/analyze-tuning","title":"Analyze For Tuning","href":"/api-reference/analytics/analyze-for-tuning"}]},{"group":"Engine","pages":[{"openapi":"get /v1/analytics/performance/engine","title":"Get Engine Performance","href":"/api-reference/analytics/get-engine-performance"},{"openapi":"get /v1/analytics/performance/engine/bottlenecks","title":"Analyze Bottlenecks","href":"/api-reference/analytics/analyze-bottlenecks"},{"openapi":"get /v1/analytics/performance/engine/extractors","title":"Get Extractor Breakdown","href":"/api-reference/analytics/get-extractor-breakdown"},{"openapi":"get /v1/analytics/performance/engine/stages","title":"Get Engine Stage Breakdown","href":"/api-reference/analytics/get-engine-stage-breakdown"},{"openapi":"get /v1/analytics/performance/engine/slow-operations","title":"Get Slowest Operations","href":"/api-reference/analytics/get-slowest-operations"}]},{"group":"Taxonomies","pages":[{"openapi":"get /v1/analytics/taxonomies/{taxonomy_id}/assignments","title":"Get Assignment Metrics","href":"/api-reference/analytics/get-assignment-metrics"},{"openapi":"get /v1/analytics/taxonomies/{taxonomy_id}/confidence","title":"Get Confidence Distribution","href":"/api-reference/analytics/get-confidence-distribution"},{"openapi":"get /v1/analytics/taxonomies/{taxonomy_id}/labels","title":"Get Label Distribution","href":"/api-reference/analytics/get-label-distribution"},{"openapi":"get /v1/analytics/taxonomies/{taxonomy_id}/enrichments","title":"Get Enrichment History","href":"/api-reference/analytics/get-enrichment-history"}]},{"group":"Clusters","pages":[{"openapi":"get /v1/analytics/clusters/{cluster_id}/execution-history","title":"Get Execution History","href":"/api-reference/analytics/get-execution-history"},{"openapi":"get /v1/analytics/clusters/{cluster_id}/failures","title":"Get Failure Analysis","href":"/api-reference/analytics/get-failure-analysis-1"}]},{"group":"Inference \u0026 Extractors","pages":[{"openapi":"get /v1/analytics/collections/{collection_id}/extractors","title":"Get Extractor Performance","href":"/api-reference/analytics/get-extractor-performance-1"}]},{"group":"Diagnostics","pages":[{"openapi":"get /v1/analytics/performance/batches/{batch_id}/diagnostics","title":"Get Batch Diagnostics","href":"/api-reference/analytics/get-batch-diagnostics"},{"openapi":"get /v1/analytics/usage/summary","title":"Get Usage Summary","href":"/api-reference/analytics/get-usage-summary"},{"openapi":"get /v1/analytics/retrievers/{retriever_id}/slow-queries","title":"Get Slowest Queries","href":"/api-reference/analytics/get-slowest-queries"}]}]},{"group":"Discovery","pages":[{"openapi":"get /v1/discovery","title":"Get All Discovery Information","href":"/api-reference/discovery/get-all-discovery-information"},{"openapi":"get /v1/discovery/extractors","title":"List Available Feature Extractors","href":"/api-reference/discovery/list-available-feature-extractors"},{"openapi":"get /v1/discovery/stages","title":"List Available Retriever Stages with Examples","href":"/api-reference/discovery/list-available-retriever-stages-with-examples"},{"openapi":"get /v1/discovery/schema","title":"Get Manifest Schema for Agent Configuration","href":"/api-reference/discovery/get-manifest-schema-for-agent-configuration"}]},{"group":"Inference","pages":[{"openapi":"post /v1/inference","title":"Execute Raw Inference","href":"/api-reference/inference/execute-raw-inference"}]},{"group":"Events","pages":[{"openapi":"get /v1/events","title":"List change feed events","href":"/api-reference/events/list-events"}]},{"group":"Resource Search","pages":[{"openapi":"post /v1/resources/search","title":"Search Resources","href":"/api-reference/resource-search/search-resources"}]},{"group":"Onboarding","pages":[{"openapi":"post /v1/onboarding/infer-config","title":"Infer onboarding configuration","href":"/api-reference/onboarding/infer-onboarding-configuration"},{"openapi":"get /v1/onboarding/suggested-config","title":"Get the org's signup-time suggested namespace","href":"/api-reference/onboarding/get-suggested-config"},{"openapi":"post /v1/signup/agent","title":"Sign up as an agent","href":"/api-reference/onboarding/agent-signup"}]}]}]}]}]},"basePath":"","title":"Apply Manifest - Mixpeek","buildId":"dpl_BSPUBxEoKhhK7HzXVDPxdPvWx4xc","deploymentId":"dpl_BSPUBxEoKhhK7HzXVDPxdPvWx4xc","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Do6EtGSl.js","utils-id4tQ6My.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-Byrixac4.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-nakYa3Zl.js","snippetPresets-Bq-pUS7h.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-CujTC_9K.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-FneVUsVu.js","shallow-DY9WpUCz.js","getApiPlaygroundDisplay-Bz8WpPfA.js","CodeSnippet-DgCuJg4G.js","CodeSnippets-Dub9c4T0.js","Page-CePXnjd1.js","getPastedJson-xdI8y2XB.js","icon--yVw5vkr.js","MethodPill-C47t7MdS.js","DuplicateIcon-BzwJ2LeC.js","createIcon-BzggGy84.js","DynamicMarkdown-AlxJK8VR.js","SectionHeading-CMlwFxdK.js","axios-vUo_bRtp.js","Markdown-BNgNrPsi.js","clsx-apD-Q0Oo.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-qmLwQyWY.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Dc4qTkWx.js"]}