---
title: "List all curation sets"
method: GET
path: "/curation_sets"
tags: ["curation_sets"]
---

# List all curation sets

`GET /curation_sets`

Retrieve all curation sets

## Response `200`

List of all curation sets

- CurationSetSchema[]
  - `items` CurationItemCreateSchema[], required — Array of curation items
    - `rule` CurationRule, required
      - `tags` string[] — List of tag values to associate with this curation rule.
      - `query` string — Indicates what search queries should be curated
      - `match` 'exact' | 'contains' — Indicates whether the match on the query term should be `exact` or `contains`. If we want to match all queries that contained the word `apple`, we will use the `contains` match instead.
      - `filter_by` string — Indicates that the curation should apply when the filter_by parameter in a search query exactly matches the string specified here (including backticks, spaces, brackets, etc).
    - `includes` CurationInclude[] — List of document `id`s that should be included in the search results with their corresponding `position`s.
      - `id` string, required — document id that should be included
      - `position` integer, required — position number where document should be included in the search results
    - `excludes` CurationExclude[] — List of document `id`s that should be excluded from the search results.
      - `id` string, required — document id that should be excluded from the search results.
    - `filter_by` string — A filter by clause that is applied to any search query that matches the curation rule.
    - `remove_matched_tokens` boolean — Indicates whether search query tokens that exist in the curation's rule should be removed from the search query.
    - `metadata` object — Return a custom JSON object in the Search API response, when this rule is triggered. This can can be used to display a pre-defined message (eg: a promotion banner) on the front-end when a particular rule is triggered.
    - `sort_by` string — A sort by clause that is applied to any search query that matches the curation rule.
    - `replace_query` string — Replaces the current search query with this value, when the search query matches the curation rule.
    - `filter_curated_hits` boolean — When set to true, the filter conditions of the query is applied to the curated records as well. Default: false.
    - `effective_from_ts` integer — A Unix timestamp that indicates the date/time from which the curation will be active. You can use this to create rules that start applying from a future point in time.
    - `effective_to_ts` integer — A Unix timestamp that indicates the date/time until which the curation will be active. You can use this to create rules that stop applying after a period of time.
    - `stop_processing` boolean — When set to true, curation processing will stop at the first matching rule. When set to false curation processing will continue and multiple curation actions will be triggered in sequence. Curations are processed in the lexical sort order of their id field.
    - `id` string — ID of the curation item
  - `description` string — Optional description for the curation set
  - `name` string, required

## Changes

- **2025-10-28** `dbbf200ea213` — 1 info
  - endpoint added
- **2022-08-04** `6c2fe01b69bc` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/typesense/apis/typesense-api/changes/curation_sets/get.md)

---

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