> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mka1.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Search a vector store

> Performs semantic search within a vector store to find the most relevant document chunks for a query.



## OpenAPI

````yaml https://apigw.mka1.com/speakeasy.json post /api/v1/llm/vector_stores/{vector_store_id}/search
openapi: 3.1.1
info:
  title: MKA1 API
  version: 1.1.0
  description: >-
    The MKA1 API is a RESTful API that provides access to the MKA1 platform.
    Learn how to get started with the API and the TypeScript SDK
    [here](https://mka1.apidocumentation.com/guides/getting-started).
  license:
    name: Proprietary
servers:
  - url: https://apigw.mka1.com
    description: MKA1 API Gateway
  - url: /
    description: Relative server URL (configurable via SDK constructor)
security: []
tags:
  - name: Resource Authorization
    description: >-
      Manage permissions for LLM resources. Create resources, grant/revoke
      permissions, and delete resources. Only resource owners can grant, revoke,
      or delete permissions.
    x-displayName: Resource Authorization
  - name: Embeddings
    description: >-
      Text embedding API endpoints for generating vector representations of
      text. Create semantic embeddings for search, clustering, and similarity
      matching using various embedding models.
    x-displayName: Embeddings
  - name: Feedback
    description: >-
      User feedback API for rating and commenting on chat completions. Collect
      thumbs up/down ratings and detailed feedback to improve model responses
      and track user satisfaction.
    x-displayName: Feedback
  - name: Images
    description: >-
      Image generation API endpoints for creating images from text descriptions.
      Generate images with control over size, quality, and style.
    x-displayName: Images
  - name: MCP Vault
    description: >-
      MCP vault API for storing user-owned MCP server configurations and
      encrypted credentials. Agents reference vault IDs so secrets are resolved
      only at tool execution time.
    x-displayName: MCP Vault
  - name: Speech
    description: >-
      Speech API endpoints for audio processing. Convert text to
      natural-sounding speech (TTS) or transcribe speech to text (STT) in
      different languages.
    x-displayName: Speech
  - name: Usage
    description: >-
      Usage tracking and analytics API for monitoring token consumption, request
      counts, and cost analysis. View detailed statistics per user, model, and
      time period.
    x-displayName: Usage
  - name: Extract
    description: >-
      Structured data extraction API for extracting information from files.
      Define JSON schemas to extract structured data from images, PDFs, and
      documents. Supports reusable schema templates.
    x-displayName: Extract
  - name: Text Classification
    description: >-
      Text classification API for categorizing text into predefined labels. Use
      AI models to classify text content for sentiment analysis, topic
      categorization, and content moderation.
    x-displayName: Text Classification
  - name: Responses
    description: >-
      Agent-powered responses API for creating AI agents with autonomous tool
      usage. Build conversational assistants that can use web search, file
      operations, image generation, code execution, computer use simulation, and
      MCP integrations. Supports background processing, streaming, and real-time
      status tracking.
    x-displayName: Responses
  - name: Files
    description: >-
      File management API for uploading, storing, and managing files with
      automatic expiration and S3 integration. Upload files that can be used
      with Assistants, Vector Stores, and other features. Files are stored in S3
      with metadata tracked in PostgreSQL. Supports automatic cleanup of expired
      files.
    x-displayName: Files
  - name: Vector Stores
    description: >-
      Vector store API for storing and searching documents using embeddings.
      Create vector stores, upload files with automatic chunking and embedding
      generation, and perform semantic search. Files are processed
      asynchronously using Temporal workflows for durability. Supports automatic
      cleanup of expired stores and LanceDB for efficient vector storage.
    x-displayName: Vector Stores
  - name: Conversations
    description: >-
      Conversation management API for storing and retrieving conversation state
      across Response API calls. Create conversations, add items (user messages,
      assistant messages, system messages), and maintain conversation history.
      Supports metadata tracking and multi-turn dialogue state management.
    x-displayName: Conversations
  - name: Guardrails
    description: >-
      AI safety guardrails API for configuring content moderation and security
      policies. Set up ban word lists, prompt injection detection, and system
      prompt leakage prevention. Guardrails apply to all requests from an
      account and can be tested before deployment.
    x-displayName: Guardrails
  - name: Models
    description: >-
      Model listing API for discovering available models. Returns model IDs,
      ownership, and metadata for all registered models in the gateway.
    x-displayName: Models
  - name: Skills
    description: >-
      Skills API for managing versioned bundles of instructions and files
      following the Agent Skills standard. Create, version, and download
      reusable skill packages that include SKILL.md manifests for agent
      environments.
    x-displayName: Skills
  - name: Chat Completions
    description: >-
      **Deprecated: Use the Responses API (`/api/v1/llm/responses`) instead.**
      Chat completion endpoints with support for streaming, tool calls, and
      multiple providers.
    x-deprecated: true
    x-displayName: Chat Completions
  - name: Batches
    x-displayName: Batches
  - name: Evals
    x-displayName: Evals
  - name: Fine-Tuning
    x-displayName: Fine-Tuning
  - name: Memory Stores
    x-displayName: Memory Stores
  - name: Prompts
    x-displayName: Prompts
  - name: API Key
    x-displayName: API Key
  - name: Organization
    x-displayName: Organization
  - name: Cluster Admin
    x-displayName: Cluster Admin
  - name: Sessions
    description: Create, inspect, access, and terminate sandbox sessions.
    x-displayName: Sessions
  - name: Browser
    description: >-
      Connect to browser sessions through the gateway port proxy. Browser
      sessions expose a Chrome DevTools Protocol endpoint on port 9222.
    x-displayName: Browser
  - name: Execution
    description: Run shell commands and code inside an existing sandbox session.
    x-displayName: Execution
  - name: Workspace
    description: >-
      Inspect the workspace manifest, transfer files or archives, and download
      generated artifacts.
    x-displayName: Workspace
  - name: Sandbox Usage
    description: >-
      Aggregate sandbox usage statistics across sessions, execution, and
      workspace operations.
    x-displayName: Sandbox Usage
  - name: Sandbox Pricing
    description: >-
      Cluster-admin management of the sandbox compute rate card used for
      budgeted spend.
    x-displayName: Sandbox Pricing
  - name: Agents
    description: Create and manage reusable agent definitions.
    x-displayName: Agents
  - name: Agent Versions
    description: Inspect an agent's configuration history and roll back to a prior version.
    x-displayName: Agent Versions
  - name: Agent Runs
    description: Execute saved agents and inspect persisted run results.
    x-displayName: Agent Runs
  - name: Agent Connectors
    description: >-
      Connect saved agents to external messaging channels such as Telegram,
      including text, photo, and supported document exchange.
    x-displayName: Agent Connectors
  - name: Agent Schedules
    description: Create and manage scheduled or recurring saved agent runs.
    x-displayName: Agent Schedules
  - name: schema-4_other
    x-displayName: other
  - name: Budgets
    x-displayName: Budgets
  - name: Settings
    x-displayName: Settings
  - name: Deployments
    description: Long-lived inference servers.
    x-displayName: Deployments
  - name: Fine-Tune Jobs
    description: Submit, monitor, and cancel fine-tune jobs.
    x-displayName: Fine-Tune Jobs
  - name: Container Images
    description: Custom container images for deployments and jobs.
    x-displayName: Container Images
  - name: Serving Models
    description: Models registered for deployment and fine-tuning.
    x-displayName: Serving Models
  - name: Volumes
    description: Persistent storage for weights and checkpoints.
    x-displayName: Volumes
  - name: Secrets
    description: Credentials injected into your workloads.
    x-displayName: Secrets
  - name: Accelerators
    description: Available accelerator types (GPU, NPU, TPU).
    x-displayName: Accelerators
paths:
  /api/v1/llm/vector_stores/{vector_store_id}/search:
    post:
      tags:
        - Vector Stores
      summary: Search a vector store
      description: >-
        Performs semantic search within a vector store to find the most relevant
        document chunks for a query.
      operationId: searchVectorStore
      parameters:
        - name: vector_store_id
          in: path
          required: true
          schema:
            type: string
            description: The ID of the vector store to search.
          example: vs_abc123
        - name: X-On-Behalf-Of
          in: header
          required: false
          schema:
            type: string
          description: Optional external end-user identifier forwarded by the API gateway.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchVectorStoreRequest'
            example:
              query: How do I reset my password?
              max_num_results: 5
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VectorStoreSearchResults'
              example:
                object: vector_store.search_results.page
                search_query: How do I reset my password?
                data:
                  - file_id: file-abc123
                    filename: user-guide.pdf
                    score: 0.92
                    content:
                      - type: text
                        text: >-
                          To reset your password, navigate to Settings >
                          Security > Reset Password...
                has_more: false
                next_page: null
      security:
        - bearerAuth: []
      x-codeSamples:
        - lang: python
          label: Python (SDK)
          source: |-
            from meetkai_mka1 import SDK


            with SDK(
                bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
            ) as sdk:

                res = sdk.llm.vector_stores.search(vector_store_id="vs_abc123", query="How do I reset my password?", max_num_results=5, rewrite_query=False)

                # Handle response
                print(res)
        - lang: typescript
          label: Typescript (SDK)
          source: |-
            import { SDK } from "@meetkai/mka1";

            const sdk = new SDK({
              bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            });

            async function run() {
              const result = await sdk.llm.vectorStores.search({
                vectorStoreId: "vs_abc123",
                searchVectorStoreRequest: {
                  query: "How do I reset my password?",
                  maxNumResults: 5,
                },
              });

              console.log(result);
            }

            run();
        - lang: csharp
          label: CSharp (SDK)
          source: |-
            using MeetKai.MKA1;
            using MeetKai.MKA1.Types.Components;

            var sdk = new SDK(bearerAuth: "<YOUR_BEARER_TOKEN_HERE>");

            var res = await sdk.Llm.VectorStores.SearchAsync(
                vectorStoreId: "vs_abc123",
                body: new MeetKai.MKA1.Types.Components.SearchVectorStoreRequest() {
                    Query = Query.CreateStr(
                        "How do I reset my password?"
                    ),
                    MaxNumResults = 5,
                }
            );

            // handle response
components:
  schemas:
    SearchVectorStoreRequest:
      type: object
      properties:
        query:
          anyOf:
            - type: string
            - type: array
              items:
                type: string
          description: A query string for a search, or an array of query strings.
        filters:
          $ref: '#/components/schemas/Filter'
          description: >-
            A filter to apply based on file attributes (evaluated against each
            file's current attributes). A missing attribute key fails every
            comparison, including ne/nin; gt/gte/lt/lte are numeric-only; in/nin
            take an array value.
        max_num_results:
          type: integer
          minimum: 1
          maximum: 50
          default: 10
          description: >-
            The maximum number of results to return. This number should be
            between 1 and 50 inclusive.
        ranking_options:
          type: object
          properties:
            ranker:
              enum:
                - auto
                - none
              type: string
              default: auto
              description: >-
                Enable re-ranking; set to 'none' to disable, which can help
                reduce latency.
            score_threshold:
              type: number
              default: 0
              description: Minimum score threshold for search results.
          description: Ranking options for search.
        rewrite_query:
          type: boolean
          default: false
          description: Whether to rewrite the natural language query for vector search.
      required:
        - query
      description: Request body for searching a vector store.
      examples:
        - query: How do I reset my password?
          max_num_results: 5
    VectorStoreSearchResults:
      type: object
      properties:
        object:
          const: vector_store.search_results.page
          description: The object type, which is always 'vector_store.search_results.page'.
        search_query:
          type: string
          description: The query that was used for the search.
        data:
          type: array
          items:
            $ref: '#/components/schemas/VectorSearchResult'
          description: Array of search results.
        has_more:
          type: boolean
          description: Whether there are more results available.
        next_page:
          anyOf:
            - type: string
            - type: 'null'
          description: Cursor for the next page of results, or null if no more results.
      required:
        - object
        - search_query
        - data
        - has_more
        - next_page
      description: A page of search results from the vector store.
      examples:
        - object: vector_store.search_results.page
          search_query: How do I reset my password?
          data:
            - file_id: file-abc123
              filename: user-guide.pdf
              score: 0.92
              content:
                - type: text
                  text: >-
                    To reset your password, navigate to Settings > Security >
                    Reset Password...
          has_more: false
          next_page: null
    Filter:
      anyOf:
        - type: object
          properties:
            type:
              enum:
                - eq
                - ne
                - gt
                - gte
                - lt
                - lte
                - in
                - nin
              type: string
              description: >-
                Comparison operator: eq (equals), ne (not equal), gt (greater
                than), gte (greater than or equal), lt (less than), lte (less
                than or equal), in (in), nin (not in).
            key:
              type: string
              description: The key to compare against the value.
            value:
              anyOf:
                - type: string
                - type: number
                - type: boolean
                - type: array
                  items:
                    anyOf:
                      - type: string
                      - type: number
                      - type: boolean
              description: >-
                The value to compare against the attribute key; supports string,
                number, boolean, or array types.
          required:
            - type
            - key
            - value
          description: >-
            A filter used to compare a specified attribute key to a given value
            using a defined comparison operation.
        - type: object
          properties:
            type:
              enum:
                - and
                - or
              type: string
              description: 'Type of operation: ''and'' or ''or''.'
            filters:
              type: array
              items:
                anyOf:
                  - type: object
                    properties:
                      type:
                        enum:
                          - eq
                          - ne
                          - gt
                          - gte
                          - lt
                          - lte
                          - in
                          - nin
                        type: string
                        description: >-
                          Comparison operator: eq (equals), ne (not equal), gt
                          (greater than), gte (greater than or equal), lt (less
                          than), lte (less than or equal), in (in), nin (not
                          in).
                      key:
                        type: string
                        description: The key to compare against the value.
                      value:
                        anyOf:
                          - type: string
                          - type: number
                          - type: boolean
                          - type: array
                            items:
                              anyOf:
                                - type: string
                                - type: number
                                - type: boolean
                        description: >-
                          The value to compare against the attribute key;
                          supports string, number, boolean, or array types.
                    required:
                      - type
                      - key
                      - value
                    description: >-
                      A filter used to compare a specified attribute key to a
                      given value using a defined comparison operation.
                  - type: object
                    properties:
                      type:
                        enum:
                          - and
                          - or
                        type: string
                        description: 'Type of operation: ''and'' or ''or''.'
                      filters:
                        type: array
                        items:
                          anyOf:
                            - type: object
                              properties:
                                type:
                                  enum:
                                    - eq
                                    - ne
                                    - gt
                                    - gte
                                    - lt
                                    - lte
                                    - in
                                    - nin
                                  type: string
                                  description: >-
                                    Comparison operator: eq (equals), ne (not
                                    equal), gt (greater than), gte (greater than
                                    or equal), lt (less than), lte (less than or
                                    equal), in (in), nin (not in).
                                key:
                                  type: string
                                  description: The key to compare against the value.
                                value:
                                  anyOf:
                                    - type: string
                                    - type: number
                                    - type: boolean
                                    - type: array
                                      items:
                                        anyOf:
                                          - type: string
                                          - type: number
                                          - type: boolean
                                  description: >-
                                    The value to compare against the attribute
                                    key; supports string, number, boolean, or
                                    array types.
                              required:
                                - type
                                - key
                                - value
                              description: >-
                                A filter used to compare a specified attribute
                                key to a given value using a defined comparison
                                operation.
                            - {}
                        description: >-
                          Array of filters to combine. Items can be
                          ComparisonFilter or CompoundFilter.
                    required:
                      - type
                      - filters
                    description: Combine multiple filters using 'and' or 'or'.
              description: >-
                Array of filters to combine. Items can be ComparisonFilter or
                CompoundFilter.
          required:
            - type
            - filters
          description: Combine multiple filters using 'and' or 'or'.
    VectorSearchResult:
      type: object
      properties:
        file_id:
          type: string
          description: The ID of the file containing this result.
        filename:
          type: string
          description: The name of the file.
        score:
          type: number
          description: The relevance score of this result.
        attributes:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            anyOf:
              - type: string
              - type: boolean
              - type: number
          description: File attributes.
        content:
          type: array
          items:
            $ref: '#/components/schemas/VectorSearchResultContent'
          description: Array of content items.
      required:
        - file_id
        - filename
        - score
        - content
      description: A single search result from a vector store search.
    VectorSearchResultContent:
      type: object
      properties:
        type:
          const: text
          description: The content type identifier for text content.
        text:
          type: string
          description: The text content of the search result.
      required:
        - type
        - text
      description: Content item in a search result.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        Gateway auth: send `Authorization: Bearer <mka1-api-key>`. For
        multi-user server-side integrations, you can also send `X-On-Behalf-Of:
        <external-user-id>`.

````