---
title: "Fetch Curations"
method: GET
path: "/api/v2/curations/"
tags: ["Curations"]
---

# Fetch Curations

`GET /api/v2/curations/`

This endpoint returns filtered and sorted curations based on specified query parameters. The response includes
pagination information and supports projection to customize the fields returned.

### Terminology
- Curation Group Number: A permanent unique identifier assigned to each curation that remains constant even if the curation is renamed or modified

- Company Product ID: An external product identifier provided by the customer for integration purposes

### Brief fields (projection only)
- page_type and parent_curation_cgn are returned only when requested in projection.
  Values are taken from curation_briefs.attributes for this company and CGN with scope "curation".

## Query parameters

- `company_id` integer, required — Company ID that owns the curations. Required for filtering curations and permission checks.
- `curation_group_number` integer[], nullable — Filter by Curation Group Numbers (CGNs). Multiple CGNs can be provided to filter for multiple groups.
- `search` string, nullable — Search keyword to filter curations by display name. Uses case-insensitive partial matching.
- `sort_by` string, nullable — Sort parameter in format 'field:direction:is_nulls_last'. Defaults to 'curation_display_name:asc:true' if not specified. **Available sort fields:** - curation_display_name: Sort by display name - product_count: Sort by number of products - last_export_date: Sort by last export date - has_brief: Sort by whether curation brief exists - freeze_body.frozen_at: Sort by when the curation was frozen **Direction values:** - asc: Ascending order - desc: Descending order**is_nulls_last values:** - true: Null values appear last - false: Null values appear first
- `limit` integer — Maximum number of curations to return. Used for pagination.
- `offset` integer — Number of curations to skip. Used for pagination.
- `projection` string[], nullable — **Available Fields:** id, curation_display_name, curation_group_number, curation_description, export_page_url_handle, export_page_header, export_page_description, export_page_meta_title, export_page_meta_description, promoted_to_live_at, last_export_date, created_at, updated_at, geo, settings, product_count, company_product_ids **Additional optional fields (projection only):** page_type, parent_curation_cgn — from the curation brief (scope=curation) for this CGN; null when missing or invalid.

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `422` — Validation Error

---

[API](https://skmtc.net/curatedforyou/apis/curated-for-you-api.md) · [All operations](https://skmtc.net/curatedforyou/apis/curated-for-you-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/curatedforyou/curated-for-you-api/revisions/7cbc2a21dd49/schema)
