---
title: "Retrieve From Index"
method: POST
path: "/rag/indices/{index_id}/retrieve/"
tags: ["rag"]
---

# Retrieve From Index

`POST /rag/indices/{index_id}/retrieve/`

Retrieve relevant chunks from a vector index based on a query

## Path parameters

- `index_id` string, required

## Request body

- RetrievalRequestSchema — Request model for retrieving from vector index
  - `query` string, required
  - `top_k` integer, nullable
  - `score_threshold` number, nullable
  - `semantic_weight` number, nullable
  - `keyword_weight` number, nullable

## Response `200`

Successful Response

- RetrievalResponseSchema — Response model for retrieval operations
  - `results` RetrievalResultSchema[], required
    - `text` string, required
    - `score` number, required
    - `metadata` ChunkMetadataSchema, required — Schema for chunk metadata in retrieval response
      - `document_id` string, required
      - `chunk_id` string, required
      - `document_title` string, nullable
      - `page_number` integer, nullable
      - `chunk_number` integer, nullable
  - `total_results` integer, required

## Other responses

- `422` — Validation Error

## Changes

- **2025-03-12** `181efcea9e6e` — 1 info
  - endpoint added
- **2024-11-23** `a2d864f3a8db` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/pyspur-dev/apis/pyspur-api/changes/rag/indices/:index_id/retrieve/post.md)

---

[API](https://skmtc.dev/pyspur-dev/apis/pyspur-api.md) · [All operations](https://skmtc.dev/pyspur-dev/apis/pyspur-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pyspur-dev/pyspur-api/revisions/adc77484c851/schema)
