v5

latestOpenAPI 3.1.02026-08-025631,1012.8 MB
Public Retriever API

Get Public Retriever Template

Get retriever configuration as a reusable template.

Returns the published retriever's configuration in a format that can be directly used to create your own retriever. This is perfect for discovering patterns and adapting them to your own data.

Authentication:

  • NO authentication required - this endpoint is completely public
  • Anyone can get the template if they know the public_name

Use Case:

  1. Browse public retrievers to find patterns you like
  2. GET this endpoint to get the full configuration
  3. Copy the config and modify for your needs (especially collection_identifiers)
  4. POST to /v1/retrievers to create your own retriever
  5. Optionally publish it with the same display_config

What's included:

  • Retriever configuration (stages, input_schema, budget_limits)
  • Display configuration (for publishing with similar UI)
  • Original metadata for reference

What you need to change:

  • collection_identifiers: Replace with your own collection IDs
  • retriever_name: Give it a unique name
  • Optionally modify stages, inputs, display_config as needed

Example:

# 1. Get the template
curl -X GET "https://api.mixpeek.com/v1/public/retrievers/video-search/template"

# 2. Modify the response and create your own retriever
curl -X POST "https://api.mixpeek.com/v1/retrievers" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "retriever_name": "my_video_search",
    "collection_identifiers": ["my_videos"],
    "stages": [...],  # From template
    "input_schema": {...},  # From template
    "budget_limits": {...},  # From template
    "display_config": {...}  # From template (optional)
  }'

Response includes:

  • All retriever configuration fields
  • Display config for publishing (optional to use)
  • Source reference (where this template came from)
get/v1/public/retrievers/{public_name}/template

Path parameters

public_namestring required

Public name of the published retriever

Public name of the published retriever

Response

Successful Response

retriever_namestring required

Original retriever name (you'll change this when creating your own). Provided as reference.

descriptionstring nullable

Original retriever description (you can use or modify this). Provides context about what this retriever does.

collection_identifiersstring[] required

IMPORTANT: These are the original collections. You MUST replace these with your own collection identifiers when creating a retriever from this template.

stagesobject[] required

Pipeline stages configuration. You can use as-is or modify for your needs. This is the core retrieval logic.

input_schemaobject required

Input schema defining expected inputs. If you change the input field names, make sure to update references in stages (e.g., {{inputs.query}}).

budget_limitsobject required

Budget limits for execution. You can adjust these based on your needs.

tagsstring[]

Original tags (optional, for reference)

source_public_namestring required

Public name of the source retriever (for reference)

source_public_urlstring required

Public URL of the source retriever (to view it in action)

feature_extractorsobject[] nullable

Feature extractors from all collections used by this retriever. Each extractor includes: feature_extractor_name, version, params, input_mappings, collection_id, and collection_name for reference. Shows how each collection processes data into searchable features.

Example response

{
  "budget_limits": {
    "max_credits": 10,
    "max_time_ms": 30000
  },
  "collection_identifiers": [
    "demo_videos"
  ],
  "description": "AI-powered video search using semantic understanding",
  "display_config": {
    "components": {
      "result_layout": "grid",
      "show_search": true
    },
    "description": "Search through video content",
    "exposed_fields": [
      "title",
      "thumbnail_url",
      "duration"
    ],
    "inputs": [
      {
        "field_name": "query",
        "field_schema": {
          "type": "text"
        },
        "label": "Search Videos",
        "order": 0,
        "placeholder": "Describe what you're looking for...",
        "required": true
      }
    ],
    "title": "Video Search"
  },
  "input_schema": {
    "query": {
      "description": "Search query",
      "examples": [
        "action scenes",
        "romantic moments"
      ],
      "required": true,
      "type": "text"
    }
  },
  "retriever_name": "video-search-demo",
  "source_public_name": "video-search",
  "source_public_url": "https://mxp.co/r/video-search",
  "stages": [
    {
      "config": {
        "parameters": {
          "final_top_k": 25,
          "searches": [
            {
              "feature_uri": "mixpeek://text_extractor@v1/embedding",
              "query": {
                "input_mode": "text",
                "text": "{{inputs.query}}"
              },
              "top_k": 100
            }
          ]
        },
        "stage_id": "feature_search"
      },
      "stage_name": "semantic_search",
      "stage_type": "filter"
    }
  ],
  "tags": [
    "video",
    "semantic-search",
    "demo"
  ]
}