Depict.AI Listing (v3) API

The Listing (v3) API from Depict.AI — 5 operation(s) for listing (v3).

Operations 5

GET /v3/listings Get Listings #
GET /v3/listings/external_id/{external_id} Get Listing Via External Id #
GET /v3/listings/{listing_id} Get Listing #
POST /v3/listings/external_id/{external_id}/products Get Products In Listing, Via External Id #
POST /v3/listings/{listing_id}/products Get Products In Listing #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/depictai-listing-v3-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

depictai-listing-v3-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Depict Lite Ab Test Listing (v3) Listing (v3) API
  version: 1.0.0
  description: 'REST API behind Depict Lite, the native Shopify app: onboarding, collections, boost & bury, dashboards, A/B testing and multi-store management. Endpoints are served under the /api/lite prefix and require an Auth0-issued bearer token.'
servers:
- url: /api/lite
tags:
- name: Listing (v3)
paths:
  /v3/listings:
    get:
      tags:
      - Listing (v3)
      summary: Get Listings
      description: "Returns the full listing hierarchy. Useful for navigation menus, listing selection dialogs, etc.\nCan optionally be filtered to only show listings of certain types.\n\nExample response:\n<pre>\n[\n    {\n        \"listing_id\": \"f346c448-4cf1-4373-9156-49e222cd6db0\",\n        \"listing_type\": \"smart_pick\",\n        \"show_in_breadcrumbs\": false,\n        \"show_in_quicklinks\": false,\n        \"title\": \"Trending\",\n        \"children\": []\n    },\n    {\n        \"listing_id\": \"2efca23d-f077-4477-8830-cc7143c49173\",\n        \"external_id\": \"1001\",\n        \"listing_type\": \"category\",\n        \"show_in_breadcrumbs\": true,\n        \"show_in_quicklinks\": true,\n        \"title\": \"Clothes\",\n        \"slug\": \"mens-cloths\",\n        \"children\": [\n            {\n                \"listing_id\": \"06b234cf-ce21-4252-90e6-db47246b1d98\",\n                \"external_id\": \"1011\",\n                \"listing_type\": \"category\",\n                \"show_in_breadcrumbs\": true,\n                \"show_in_quicklinks\": true,\n                \"title\": \"Suits\",\n                \"slug\": \"mens-suits\",\n                \"children\": []\n            },\n            {\n                \"listing_id\": \"1e648857-4aad-4606-9e7a-5290cb3576e5\",\n                \"external_id\": \"1012\",\n                \"listing_type\": \"category\",\n                \"show_in_breadcrumbs\": true,\n                \"show_in_quicklinks\": true,\n                \"title\": \"Shirts\",\n                \"slug\": \"mens-shirts\",\n                \"children\": []\n            }\n        ]\n    }\n]\n</pre>"
      operationId: Get_Listings_v3_listings_get
      security:
      - APIKeyQuery: []
      - APIKeyHeader: []
      - APIKeyCookie: []
      parameters:
      - name: merchant
        in: query
        required: true
        schema:
          type: string
          title: Merchant
      - name: market
        in: query
        required: true
        schema:
          type: string
          title: Market
      - name: locale
        in: query
        required: true
        schema:
          type: string
          title: Locale
      - name: types
        in: query
        required: false
        schema:
          type: array
          items:
            $ref: '#/components/schemas/CollectionType'
          default: []
          title: Types
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ListListingsResponseItem'
                title: Response Get Listings V3 Listings Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v3/listings/external_id/{external_id}:
    get:
      tags:
      - Listing (v3)
      summary: Get Listing Via External Id
      description: "Returns a single listing, including its ancestors, siblings and children. Listings can be queried by either their Depict ID,\nor \"external\" ID, which is the ID used by the merchant's system (ie Shopify, Centra, WooCommerce, etc) to refer to the listing.\n\nUseful for showing breadcrumbs and other navigation elements while showing a product listing page.\n\nExample response:\n<pre>\n{\n    \"listing_id\": \"06b234cf-ce21-4252-90e6-db47246b1d98\",\n    \"external_id\": \"1011\",\n    \"listing_type\": \"category\",\n    \"show_in_breadcrumbs\": true,\n    \"show_in_quicklinks\": true,\n    \"title\": \"Suits\",\n    \"slug\": \"mens-suits\",\n    \"ancestors\": [\n        {\n            \"listing_id\": \"2efca23d-f077-4477-8830-cc7143c49173\",\n            \"external_id\": \"1001\",\n            \"listing_type\": \"category\",\n            \"show_in_breadcrumbs\": true,\n            \"show_in_quicklinks\": true,\n            \"title\": \"Clothes\",\n            \"slug\": \"mens-cloths\"\n        }\n    ],\n    \"siblings\": [\n        {\n            \"listing_id\": \"1e648857-4aad-4606-9e7a-5290cb3576e5\",\n            \"external_id\": \"1012\",\n            \"listing_type\": \"category\",\n            \"show_in_breadcrumbs\": true,\n            \"show_in_quicklinks\": true,\n            \"title\": \"Shirts\",\n            \"slug\": \"mens-shirts\"\n        }\n    ],\n    \"children\": []\n}\n</pre>"
      operationId: Get_Listing_via_External_ID_v3_listings_external_id__external_id__get
      security:
      - APIKeyQuery: []
      - APIKeyHeader: []
      - APIKeyCookie: []
      parameters:
      - name: external_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
      - name: merchant
        in: query
        required: true
        schema:
          type: string
          title: Merchant
      - name: market
        in: query
        required: true
        schema:
          type: string
          title: Market
      - name: locale
        in: query
        required: true
        schema:
          type: string
          title: Locale
      - name: listing_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Listing Id
      - name: session_id
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Session Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetListingResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v3/listings/{listing_id}:
    get:
      tags:
      - Listing (v3)
      summary: Get Listing
      description: "Returns a single listing, including its ancestors, siblings and children. Listings can be queried by either their Depict ID,\nor \"external\" ID, which is the ID used by the merchant's system (ie Shopify, Centra, WooCommerce, etc) to refer to the listing.\n\nUseful for showing breadcrumbs and other navigation elements while showing a product listing page.\n\nExample response:\n<pre>\n{\n    \"listing_id\": \"06b234cf-ce21-4252-90e6-db47246b1d98\",\n    \"external_id\": \"1011\",\n    \"listing_type\": \"category\",\n    \"show_in_breadcrumbs\": true,\n    \"show_in_quicklinks\": true,\n    \"title\": \"Suits\",\n    \"slug\": \"mens-suits\",\n    \"ancestors\": [\n        {\n            \"listing_id\": \"2efca23d-f077-4477-8830-cc7143c49173\",\n            \"external_id\": \"1001\",\n            \"listing_type\": \"category\",\n            \"show_in_breadcrumbs\": true,\n            \"show_in_quicklinks\": true,\n            \"title\": \"Clothes\",\n            \"slug\": \"mens-cloths\"\n        }\n    ],\n    \"siblings\": [\n        {\n            \"listing_id\": \"1e648857-4aad-4606-9e7a-5290cb3576e5\",\n            \"external_id\": \"1012\",\n            \"listing_type\": \"category\",\n            \"show_in_breadcrumbs\": true,\n            \"show_in_quicklinks\": true,\n            \"title\": \"Shirts\",\n            \"slug\": \"mens-shirts\"\n        }\n    ],\n    \"children\": []\n}\n</pre>"
      operationId: Get_Listing_v3_listings__listing_id__get
      security:
      - APIKeyQuery: []
      - APIKeyHeader: []
      - APIKeyCookie: []
      parameters:
      - name: listing_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Listing Id
      - name: merchant
        in: query
        required: true
        schema:
          type: string
          title: Merchant
      - name: market
        in: query
        required: true
        schema:
          type: string
          title: Market
      - name: locale
        in: query
        required: true
        schema:
          type: string
          title: Locale
      - name: external_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
      - name: session_id
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Session Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetListingResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v3/listings/external_id/{external_id}/products:
    post:
      tags:
      - Listing (v3)
      summary: Get Products In Listing, Via External Id
      description: "Returns products in a listing, optionally filtered. Used for product listing pages.\n\nExample response:\n<pre>\n{\n    \"displays\": [\n        {\n        \"variant_index\": 1,\n        \"variant_displays\": [\n            {\n            \"in_stock\": true,\n            \"original_price\": 1999,\n            \"sale_price\": 1999,\n            \"title\": \"Short Sleeve Polo Shirt\",\n            \"size\": \"210\",\n            \"product_id\": \"1500-10-210\",\n            \"image_urls\": [\n                \"https://example.cdn.com/1.jpg\",\n                \"https://example.cdn.com/2.jpg\",\n                ]\n            },\n            {\n            \"in_stock\": true,\n            \"original_price\": 1999,\n            \"sale_price\": 1999,\n            \"title\": \"Short Sleeve Polo Shirt\",\n            \"size\": \"200\",\n            \"product_id\": \"1500-10-200\",\n            \"image_urls\": [\n                \"https://example.cdn.com/1.jpg\",\n                \"https://example.cdn.com/2.jpg\",\n                ]\n            },\n        ],\n        \"product_listing_result_id\": \"50877e3b-26a4-4ea7-a6e1-1a7696f76f66\"\n        },\n        {\n        \"variant_index\": 0,\n        \"variant_displays\": [\n            {\n            \"in_stock\": false,\n            \"original_price\": 1400,\n            \"sale_price\": 1200,\n            \"title\": \"Collar Polo Shirt\",\n            \"size\": \"210\",\n            \"product_id\": \"1600-10-210\",\n            \"image_urls\": [\n                \"https://example.cdn.com/10.jpg\",\n                \"https://example.cdn.com/11.jpg\",\n                ]\n            }\n        ],\n        \"product_listing_result_id\": \"671740b5-6828-41fc-8a3f-2869993d000c\"\n        }\n    ],\n    \"n_hits\": 2,\n    \"sorts\": [\n        {\n        \"field\": \"_relevance\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Recommended\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Recommended\"\n            ]\n        }\n        },\n        {\n        \"field\": \"title\",\n        \"order\": \"asc\",\n        \"meta\": {\n            \"title\": \"Alphabetical, A-Z\",\n            \"values\": [\n            \"asc\"\n            ],\n            \"names\": [\n            \"Alphabetical, A-Z\"\n            ]\n        }\n        },\n        {\n        \"field\": \"title\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Alphabetical, Z-A\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Alphabetical, Z-A\"\n            ]\n        }\n        },\n        {\n        \"field\": \"sale_price\",\n        \"order\": \"asc\",\n        \"meta\": {\n            \"title\": \"Price, low to high\",\n            \"values\": [\n            \"asc\"\n            ],\n            \"names\": [\n            \"Price, low to high\"\n            ]\n        }\n        },\n        {\n        \"field\": \"sale_price\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Price, high to low\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Price, high to low\"\n            ]\n        }\n        }\n    ],\n    \"filters\": [\n        {\n        \"field\": \"sale_price\",\n        \"op\": \"inrange\",\n        \"data\": [\n            1200,\n            1999\n        ],\n        \"meta\": {\n            \"group_title\": \"Price\",\n            \"type\": \"range\",\n            \"min\": 1200,\n            \"max\": 1999,\n            \"currency\": \"SEK\"\n        },\n        \"id\": \"price0\"\n        },\n        {\n        \"field\": \"size_name\",\n        \"op\": \"in\",\n        \"meta\": {\n            \"group_title\": \"Size\",\n            \"type\": \"checkbox-grid\",\n            \"values\": [\n            \"200\",\n            \"210\",\n            ],\n            \"counts\": [\n            1,\n            2\n            ]\n        },\n        \"id\": \"size1\"\n        }\n    ],\n    \"product_listing_request_id\": \"4bf1eeb0-0b0a-4b0e-9b0a-0a0b0a0b0a0b\",\n    \"cursor\": \"eyJjIjogMjAsICJyIjogMjB9\"\n    }\n</pre>"
      operationId: Get_Products_in_Listing__via_external_ID_v3_listings_external_id__external_id__products_post
      security:
      - APIKeyQuery: []
      - APIKeyHeader: []
      - APIKeyCookie: []
      parameters:
      - name: external_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
      - name: listing_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Listing Id
      - name: x-use-db-display-store
        in: header
        required: false
        schema:
          type: boolean
          default: false
          title: X-Use-Db-Display-Store
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductListingRequestV3'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductListingResponseV3'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v3/listings/{listing_id}/products:
    post:
      tags:
      - Listing (v3)
      summary: Get Products In Listing
      description: "Returns products in a listing, optionally filtered. Used for product listing pages.\n\nExample response:\n<pre>\n{\n    \"displays\": [\n        {\n        \"variant_index\": 1,\n        \"variant_displays\": [\n            {\n            \"in_stock\": true,\n            \"original_price\": 1999,\n            \"sale_price\": 1999,\n            \"title\": \"Short Sleeve Polo Shirt\",\n            \"size\": \"210\",\n            \"product_id\": \"1500-10-210\",\n            \"image_urls\": [\n                \"https://example.cdn.com/1.jpg\",\n                \"https://example.cdn.com/2.jpg\",\n                ]\n            },\n            {\n            \"in_stock\": true,\n            \"original_price\": 1999,\n            \"sale_price\": 1999,\n            \"title\": \"Short Sleeve Polo Shirt\",\n            \"size\": \"200\",\n            \"product_id\": \"1500-10-200\",\n            \"image_urls\": [\n                \"https://example.cdn.com/1.jpg\",\n                \"https://example.cdn.com/2.jpg\",\n                ]\n            },\n        ],\n        \"product_listing_result_id\": \"50877e3b-26a4-4ea7-a6e1-1a7696f76f66\"\n        },\n        {\n        \"variant_index\": 0,\n        \"variant_displays\": [\n            {\n            \"in_stock\": false,\n            \"original_price\": 1400,\n            \"sale_price\": 1200,\n            \"title\": \"Collar Polo Shirt\",\n            \"size\": \"210\",\n            \"product_id\": \"1600-10-210\",\n            \"image_urls\": [\n                \"https://example.cdn.com/10.jpg\",\n                \"https://example.cdn.com/11.jpg\",\n                ]\n            }\n        ],\n        \"product_listing_result_id\": \"671740b5-6828-41fc-8a3f-2869993d000c\"\n        }\n    ],\n    \"n_hits\": 2,\n    \"sorts\": [\n        {\n        \"field\": \"_relevance\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Recommended\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Recommended\"\n            ]\n        }\n        },\n        {\n        \"field\": \"title\",\n        \"order\": \"asc\",\n        \"meta\": {\n            \"title\": \"Alphabetical, A-Z\",\n            \"values\": [\n            \"asc\"\n            ],\n            \"names\": [\n            \"Alphabetical, A-Z\"\n            ]\n        }\n        },\n        {\n        \"field\": \"title\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Alphabetical, Z-A\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Alphabetical, Z-A\"\n            ]\n        }\n        },\n        {\n        \"field\": \"sale_price\",\n        \"order\": \"asc\",\n        \"meta\": {\n            \"title\": \"Price, low to high\",\n            \"values\": [\n            \"asc\"\n            ],\n            \"names\": [\n            \"Price, low to high\"\n            ]\n        }\n        },\n        {\n        \"field\": \"sale_price\",\n        \"order\": \"desc\",\n        \"meta\": {\n            \"title\": \"Price, high to low\",\n            \"values\": [\n            \"desc\"\n            ],\n            \"names\": [\n            \"Price, high to low\"\n            ]\n        }\n        }\n    ],\n    \"filters\": [\n        {\n        \"field\": \"sale_price\",\n        \"op\": \"inrange\",\n        \"data\": [\n            1200,\n            1999\n        ],\n        \"meta\": {\n            \"group_title\": \"Price\",\n            \"type\": \"range\",\n            \"min\": 1200,\n            \"max\": 1999,\n            \"currency\": \"SEK\"\n        },\n        \"id\": \"price0\"\n        },\n        {\n        \"field\": \"size_name\",\n        \"op\": \"in\",\n        \"meta\": {\n            \"group_title\": \"Size\",\n            \"type\": \"checkbox-grid\",\n            \"values\": [\n            \"200\",\n            \"210\",\n            ],\n            \"counts\": [\n            1,\n            2\n            ]\n        },\n        \"id\": \"size1\"\n        }\n    ],\n    \"product_listing_request_id\": \"4bf1eeb0-0b0a-4b0e-9b0a-0a0b0a0b0a0b\",\n    \"cursor\": \"eyJjIjogMjAsICJyIjogMjB9\"\n    }\n</pre>"
      operationId: Get_Products_in_Listing_v3_listings__listing_id__products_post
      security:
      - APIKeyQuery: []
      - APIKeyHeader: []
      - APIKeyCookie: []
      parameters:
      - name: listing_id
        in: path
        required: true
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Listing Id
      - name: external_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
      - name: x-use-db-display-store
        in: header
        required: false
        schema:
          type: boolean
          default: false
          title: X-Use-Db-Display-Store
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductListingRequestV3'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductListingResponseV3'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    ListListingsResponseItem:
      properties:
        listing_id:
          type: string
          format: uuid
          title: Listing Id
          description: Depict ID of the listing.
        external_id:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
          description: ID of the listing in the merchant PIM, CMS or similar.
        listing_type:
          $ref: '#/components/schemas/CollectionType'
        show_in_breadcrumbs:
          type: boolean
          title: Show In Breadcrumbs
          description: Show or hide this listing in navigation breadcrumbs.
        show_in_quicklinks:
          type: boolean
          title: Show In Quicklinks
          description: Show or hide this listing in quicklinks.
        image_urls:
          items:
            type: string
          type: array
          title: Image Urls
          description: List of image URLs for the listing.
        title:
          type: string
          title: Title
        slug:
          anyOf:
          - type: string
          - type: 'null'
          title: Slug
        children:
          items:
            $ref: '#/components/schemas/ListListingsResponseItem'
          type: array
          title: Children
      additionalProperties: false
      type: object
      required:
      - listing_id
      - listing_type
      - show_in_breadcrumbs
      - show_in_quicklinks
      - image_urls
      - title
      - children
      title: ListListingsResponseItem
    SortingOrder:
      type: string
      enum:
      - asc
      - desc
      title: SortingOrder
    SortMeta:
      properties:
        title:
          type: string
          title: Title
        values:
          items:
            $ref: '#/components/schemas/SortingOrder'
          type: array
          title: Values
          description: Selectable values
        names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Names
          description: Names for orders (this is what you should display in the UI, not values)
      additionalProperties: false
      type: object
      required:
      - title
      title: SortMeta
    SortModel-Input:
      properties:
        field:
          type: string
          title: Field
          description: The field to sort by.
        order:
          allOf:
          - $ref: '#/components/schemas/SortingOrder'
          description: The order to sort by.
        meta:
          anyOf:
          - $ref: '#/components/schemas/SortMeta'
          - type: 'null'
          description: 'Metadata about the sort that can be used for rendering. '
      additionalProperties: false
      type: object
      required:
      - field
      - order
      title: SortModel
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    RangeFilterMeta:
      properties:
        group_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Group Title
          description: Title of the group, where a group consists of all the filters that share an ID.
        group_expanded:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Group Expanded
          description: Whether the filter group should be expanded by default or not.
        type:
          const: range
          title: Type
        min:
          type: number
          title: Min
          description: The minimum value that can be selected in the range.
        max:
          type: number
          title: Max
          description: The maximum value that can be selected in the range.
        unit:
          anyOf:
          - type: string
          - type: 'null'
          title: Unit
          description: The unit of the range values.
        currency:
          anyOf:
          - type: string
          - type: 'null'
          title: Currency
          description: The currency of the range values.
      additionalProperties: false
      type: object
      required:
      - type
      - min
      - max
      title: RangeFilterMeta
    HierarchicalValuesFilterMeta:
      properties:
        group_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Group Title
          description: Title of the group, where a group consists of all the filters that share an ID.
        group_expanded:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Group Expanded
          description: Whether the filter group should be expanded by default or not.
        type:
          const: checkbox-hierarchical
          title: Type
        values:
          items:
            items:
              type: string
            type: array
          type: array
          title: Values
          description: Selectable hierarchical values
        counts:
          anyOf:
          - items:
              type: integer
            type: array
          - type: 'null'
          title: Counts
          description: Counts for values
        names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Names
          description: Names for hierarchical values, this is what you should display in the UI (not values)
      additionalProperties: false
      type: object
      required:
      - type
      - values
      title: HierarchicalValuesFilterMeta
    SortModel-Output:
      properties:
        field:
          type: string
          title: Field
          description: The field to sort by.
        order:
          allOf:
          - $ref: '#/components/schemas/SortingOrder'
          description: The order to sort by.
        meta:
          anyOf:
          - $ref: '#/components/schemas/SortMeta'
          - type: 'null'
          description: 'Metadata about the sort that can be used for rendering. '
      additionalProperties: false
      type: object
      required:
      - field
      - order
      title: SortModel
    ProductListingRequestV3:
      properties:
        cursor:
          anyOf:
          - type: string
            maxLength: 500
          - type: 'null'
          title: Cursor
          description: Used for cursor-based pagination. Set it to the cursor from the last response. If not set, will return the first results.
        limit:
          anyOf:
          - type: integer
            maximum: 250
            minimum: 1
          - type: 'null'
          title: Limit
          description: Maximum number of results per response.
        market:
          type: string
          title: Market
        filters:
          anyOf:
          - items:
              $ref: '#/components/schemas/SearchFilter'
            type: array
          - type: 'null'
          title: Filters
          description: List of filters to apply to the results.
        sort:
          anyOf:
          - $ref: '#/components/schemas/SortModel-Input'
          - type: 'null'
          description: Specifies the sorting method. By default, the results are ordered by relevance. To find the possible values for this field, query the endpoint and look at the `sorts` field.
        session_id:
          anyOf:
          - type: string
            minLength: 1
          - type: 'null'
          title: Session Id
          description: Session identifier
        metadata:
          anyOf:
          - additionalProperties:
              type: string
            type: object
          - type: 'null'
          title: Metadata
          description: Metadata that can be used to modify the behaviour of the search.
        merchant:
          type: string
          title: Merchant
        locale:
          type: string
          title: Locale
        listing_id:
          type: string
          format: uuid
          title: Listing Id
      additionalProperties: false
      type: object
      required:
      - market
      - merchant
      - locale
      title: ProductListingRequestV3
    ValuesFilterMeta:
      properties:
        group_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Group Title
          description: Title of the group, where a group consists of all the filters that share an ID.
        group_expanded:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Group Expanded
          description: Whether the filter group should be expanded by default or not.
        type:
          type: string
          enum:
          - radio
          - checkbox
          - checkbox-grid
          - checkbox-color
          title: Type
          description: Type of filter.
        values:
          items:
            anyOf:
            - type: string
              enum:
              - 'true'
              - 'false'
            - type: number
            - type: integer
            - type: string
            - prefixItems:
              - type: number
              - type: number
              type: array
              maxItems: 2
              minItems: 2
            - prefixItems:
              - type: integer
              - type: integer
              type: array
              maxItems: 2
              minItems: 2
            - prefixItems:
              - type: integer
              - type: number
              type: array
              maxItems: 2
              minItems: 2
            - prefixItems:
              - type: number
              - type: integer
              type: array
              maxItems: 2
              minItems: 2
          type: array
          title: Values
          description: Selectable values
        counts:
          anyOf:
          - items:
              type: integer
            type: array
          - type: 'null'
          title: Counts
          description: Counts for values
        names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Names
          description: Names for values. This is what should be displayed along with the UI item for the value.
      additionalProperties: false
      type: object
      required:
      - type
      - values
      title: ValuesFilterMeta
    GetListingResponse:
      properties:
        listing_id:
          type: string
          format: uuid
          title: Listing Id
          description: Depict ID of the listing.
        external_id:
          anyOf:
          - type: string
          - type: 'null'
          title: External Id
          description: ID of the listing in the merchant PIM, CMS or similar.
        listing_type:
          $ref: '#/components/schemas/CollectionType'
        show_in_breadcrumbs:
          type: boolean
          title: Show In Breadcrumbs
          description: Show or hide this listing in navigation breadcrumbs.
        show_in_quicklinks:
          type: boolean
          title: Show In Quicklinks
          description: Show or hide this listing in quicklinks.
        image_urls:
          items:
            type: string
          type: array
          title: Image Urls
          description: List of image URLs for the listing.
        title:
          type: string
          title: Title
        slug:
          anyOf:
          - type: string
          - type: 'null'
          title: Slug
        ancestors:
          items:
            $ref: '#/components/schemas/ProductL

# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/depictai/refs/heads/main/openapi/depictai-listing-v3-api-openapi.yml