> ## Documentation Index
> Fetch the complete documentation index at: https://docs.depict.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Related Recommendations

<Warning>
  This page does not apply to installs made in 2025 or later of the Depict Shopify apps
</Warning>


## OpenAPI

````yaml post /v2/search/related
openapi: 3.1.0
info:
  title: Depict API
  version: '1.0'
servers: []
security: []
paths:
  /v2/search/related:
    post:
      tags:
        - Search (v2)
      summary: Get Related Recommendations
      description: >-
        Returns recommendations for products related to the search query. Note
        that this

        endpoint takes the same request body as the `/v2/search/results`
        endpoint, excluding

        the pagination parameters. It should be called once the user has
        exhausted the

        search results for their query and the recommended products are
        typically shown

        below the search results.
      operationId: Get_related_recommendations_v2_search_related_post
      parameters:
        - 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/BaseSearchRequestV2'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecommendResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - APIKeyQuery: []
        - APIKeyHeader: []
        - APIKeyCookie: []
components:
  schemas:
    BaseSearchRequestV2:
      properties:
        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.
        tenant:
          type: string
          title: Tenant
        locale:
          anyOf:
            - type: string
            - type: 'null'
          title: Locale
          description: >-
            The locale to use for the search. If not set, the default locale
            will be used.
        user_id:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
          title: User Id
          description: User identifier
        dsid:
          anyOf:
            - type: string
              minLength: 1
            - type: 'null'
          title: Dsid
          description: >-
            Populated for integrations performed by Depict.ai only. Depict.ai
            Session Id
        query:
          anyOf:
            - type: string
            - type: 'null'
          title: Query
          description: The search query.
      additionalProperties: false
      type: object
      required:
        - market
        - tenant
      title: BaseSearchRequestV2
    RecommendResponse:
      properties:
        displays:
          items:
            type: object
          type: array
          title: Displays
        error:
          anyOf:
            - type: string
            - type: 'null'
          title: Error
        variant:
          anyOf:
            - type: integer
            - type: 'null'
          title: Variant
        experiment_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Experiment Id
      additionalProperties: false
      type: object
      required:
        - displays
      title: RecommendResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    SearchFilter:
      properties:
        field:
          type: string
          title: Field
          description: The field to filter by.
        op:
          type: string
          enum:
            - eq
            - neq
            - in
            - nin
            - leq
            - geq
            - inrange
          title: Op
          description: >-
            The operation used for filtering. The filtering should be read as
            `field op data`, for example `brand in ["Nike", "Adidas"]`.
        data:
          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
            - 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
            - items:
                items:
                  type: string
                type: array
              type: array
            - type: 'null'
          title: Data
          description: Data for the filter.
        meta:
          anyOf:
            - oneOf:
                - $ref: '#/components/schemas/RangeFilterMeta'
                - $ref: '#/components/schemas/ValuesFilterMeta'
                - $ref: '#/components/schemas/HierarchicalValuesFilterMeta'
              discriminator:
                propertyName: type
                mapping:
                  checkbox:
                    $ref: '#/components/schemas/ValuesFilterMeta'
                  checkbox-color:
                    $ref: '#/components/schemas/ValuesFilterMeta'
                  checkbox-grid:
                    $ref: '#/components/schemas/ValuesFilterMeta'
                  checkbox-hierarchical:
                    $ref: '#/components/schemas/HierarchicalValuesFilterMeta'
                  radio:
                    $ref: '#/components/schemas/ValuesFilterMeta'
                  range:
                    $ref: '#/components/schemas/RangeFilterMeta'
            - type: 'null'
          title: Meta
          description: >-
            Metadata about the filter that can be used for rendering. For
            example, this could contain the possible values to filter by and
            their counts in the results.
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: >-
            ID of the filter. If multiple filters share the same ID, they should
            be grouped together in the UI.
      additionalProperties: false
      type: object
      required:
        - field
        - op
      title: SearchFilter
    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
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    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
    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
    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
    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
  securitySchemes:
    APIKeyQuery:
      type: apiKey
      in: query
      name: api_key
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-KEY
    APIKeyCookie:
      type: apiKey
      in: cookie
      name: X-API-KEY

````