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

  • page_type, division, story_duration_type, marketing_strategy and parent_curation_cgn are returned when requested in projection. Values are taken from curation_briefs.attributes for this company and CGN with scope "curation".
  • Table columns can be filtered with table_filters and sorted with sort_by.
get/api/v2/curations/

Request

  • Base URL
    https://api.curatedforyou.io (the document declares no server; this is the origin it was published from)
  • Auth
    none declared

Query parameters

company_idinteger required

Company ID that owns the curations. Required for filtering curations and permission checks.

curation_idsinteger[] nullable

Filter by curation IDs (including private pinned curations).

table_filtersstring nullable

JSON table filters keyed by column: {"division":{"values":["Womens"]},"workflow_status":{"values":["approved"]},"created_at":{"presets":["last_7_days"]}}. Text columns accept {"search":"text"}; date columns accept presets last_7_days, last_30_days, last_90_days, and never for nullable dates.

curation_group_numberinteger[] nullable

Filter by Curation Group Numbers (CGNs). Multiple CGNs can be provided to filter for multiple groups.

searchstring nullable

Search keyword to filter curations by display name. Uses case-insensitive partial matching.

sort_bystring 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 orderis_nulls_last values:
  • true: Null values appear last
  • false: Null values appear first
limitinteger

Maximum number of curations to return. Used for pagination.

offsetinteger

Number of curations to skip. Used for pagination.

projectionstring[] 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: page_type, division, story_duration_type, marketing_strategy, parent_curation_cgn — from the curation brief (scope=curation); null when missing or invalid. workflow_status, workflow_status_label, has_export_page_description.

Headers

authorizationstring nullable

Response

Successful Response

unknown required

Changes

    • info

      added the new optional query request parameter curation_ids

    • info

      added the new optional query request parameter table_filters

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status