openapi: 3.2.0 info: contact: email: support@constructor.io title: Configuration Facets API version: '0.1' servers: - url: https://ac.cnstrc.com security: [] tags: - name: Facets paths: /v1/facets: get: deprecated: true tags: - Facets operationId: v1-facets-retrieve-facets summary: Retrieve facet configurations (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve all facet configurations.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 100 minimum: 1 maximum: 1000 examples: - 100 - 500 type: integer required: false - name: page in: query schema: title: Page description: The page of results to return. minimum: 1 examples: - 1 - 2 type: integer required: false - name: offset in: query schema: title: Offset description: The number of results to skip from the beginning. Cannot be used together with `page`. minimum: 0 examples: - 0 - 100 type: integer required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListGetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) post: deprecated: true tags: - Facets operationId: v1-facets-create-facet summary: Create facet configuration (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Create facet configuration with specified `facet_name`.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListPostRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListPostResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) put: deprecated: true tags: - Facets operationId: v1-facets-create-or-replace-facets summary: Create or replace facet configurations with options (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Create or replace facet configurations with their options. Replacing will delete the existing facet and recreate it with the provided data.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListPutRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListPutResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: deprecated: true tags: - Facets operationId: v1-facets-update-facets summary: Update facet configurations (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Update facet configurations with specified `facet_name`.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListPatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListPatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) /v1/facets/{facet_name}: get: deprecated: true tags: - Facets operationId: v1-facets-retrieve-facet summary: Retrieve facet configuration (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve facet configuration with specified `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetGetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) put: deprecated: true tags: - Facets operationId: v1-facets-replace-facet summary: Replace facet configuration (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Replace facet configuration with specified `facet_name`. This will overwrite all other configurations you may have defined for the facet group, resetting them to their defaults. This includes all facet option configurations you may have defined.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetPutRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetPutResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: deprecated: true tags: - Facets operationId: v1-facets-update-facet summary: Update facet configuration (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Partially update facet configuration with specified `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetPatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetPatchResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/FacetPatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) delete: deprecated: true tags: - Facets operationId: v1-facets-delete-facet summary: Delete facet configuration (Deprecated) description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Delete facet configuration with specified `facet_name`. This does not delete the facet from items in your index you may have uploaded previously. Once a facet group''s configuration is deleted, all configurations will return to their default values. This includes all facet option configurations (display name, position, etc) you may have defined for the facet group.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetDeleteResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) /v2/facets: get: tags: - Facets operationId: v2-facets-retrieve-facets summary: Retrieve facet configurations description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve all facet configurations.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 100 minimum: 1 maximum: 1000 examples: - 100 - 500 type: integer required: false - name: page in: query schema: title: Page description: The page of results to return. minimum: 1 examples: - 1 - 2 type: integer required: false - name: offset in: query schema: title: Offset description: The number of results to skip from the beginning. Cannot be used together with `page`. minimum: 0 examples: - 0 - 100 type: integer required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListV2GetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) post: tags: - Facets operationId: v2-facets-create-facet summary: Create facet configuration description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Create facet configuration with specified `facet_name`.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListV2PostRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListV2PostResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) put: tags: - Facets operationId: v2-facets-create-or-replace-facets summary: Create or replace facet configurations description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Create or replace facet configurations. Replacing will overwrite all other configurations you may have defined for the facet group, resetting them to their defaults, except facet options - they will not be affected.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListV2PutRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListV2PutResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: tags: - Facets operationId: v2-facets-update-facets summary: Update facet configurations description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Update facet configurations.' parameters: - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetListV2PatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetListV2PatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) /v2/facets/{facet_name}: get: tags: - Facets operationId: v2-facets-retrieve-facet summary: Retrieve facet configuration description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve facet configuration with specified `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetV2GetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) put: tags: - Facets operationId: v2-facets-replace-facet summary: Replace facet configuration description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Replace facet configuration with specified `facet_name`. This will overwrite all other configurations you may have defined for the facet group, resetting them to their defaults, except facet options - they will not be affected.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetV2PutRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetV2PutResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: tags: - Facets operationId: v2-facets-update-facet summary: Update facet configuration description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Partially update facet configuration with specified `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetV2PatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetV2PatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) delete: tags: - Facets operationId: v2-facets-delete-facet summary: Delete facet configuration description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Delete facet configuration with specified `facet_name`. This does not delete the facet from items in your index you may have uploaded previously. Once a facet group''s configuration is deleted, all configurations will return to their default values. This includes all facet option configurations (display name, position, etc) you may have defined for the facet group.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetV2DeleteResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) /v1/facets/{facet_name}/options: get: tags: - Facets operationId: v1-facet-options-retrieve-facet-options summary: Retrieve facet options description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve facet options for the given `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 100 minimum: 1 maximum: 1000 examples: - 100 - 500 type: integer required: false - name: page in: query schema: title: Page description: The page of results to return. minimum: 1 examples: - 1 - 2 type: integer required: false - name: offset in: query schema: title: Offset description: The number of results to skip from the beginning. Cannot be used together with `page`. minimum: 0 examples: - 0 - 100 type: integer required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false - name: filter in: query schema: title: Filter description: Criteria to narrow the result set by. Different filters are `ANDed` together. examples: - value_alias: blue allOf: - $ref: '#/components/schemas/FacetOptionListFilters' required: false style: deepObject explode: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionListGetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) post: tags: - Facets operationId: v1-facet-options-create-facet-option summary: Create facet option description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Create facet option for the given `facet_name`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetOptionListPostRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionListPostResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: tags: - Facets operationId: v1-facet-options-create-or-update-facet-options summary: Create or update facet options description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Update a list of facet options with specified `value` for the given `facet_name`. If a facet option config with provided value already exists it is updated partially, otherwise it is created.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetOptionListPatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionListPatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) /v1/facets/{facet_name}/options/{facet_option_value}: get: tags: - Facets operationId: v1-facet-options-retrieve-facet-option summary: Retrieve facet option description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(r)`. Retrieve facet option with specified `facet_name` and `facet_option_value`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: facet_option_value in: path required: true schema: type: string examples: - Nike - Red - 10-20 - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionGetResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(r) put: tags: - Facets operationId: v1-facet-options-replace-facet-option summary: Replace facet option description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Replace facet option with specified `facet_name` and `facet_option_value`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: facet_option_value in: path required: true schema: type: string examples: - Nike - Red - 10-20 - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetOptionPutRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionPutResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) patch: tags: - Facets operationId: v1-facet-options-update-facet-option summary: Update facet option description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Partially update facet option with specified `facet_name` and `facet_option_value`.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: facet_option_value in: path required: true schema: type: string examples: - Nike - Red - 10-20 - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetOptionPatchRequestBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionPatchResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) delete: tags: - Facets operationId: v1-facet-options-delete-facet-option summary: Delete facet option description: '**🔐 This endpoint requires [HTTP authentication](https://docs.constructor.com/reference/main-authentication) (either [Basic](https://docs.constructor.com/reference/main-authentication#basic-authentication) or [Bearer](https://docs.constructor.com/reference/main-authentication#bearer-authentication)).** For authenticating with Bearer token, required scopes are: `facets(w)`. Delete facet option with specified `facet_name` and `facet_option_value`. Only do this if you want all configuration options for the facet option to go back to their default values.' parameters: - name: facet_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: facet_option_value in: path required: true schema: type: string examples: - Nike - Red - 10-20 - name: key in: query schema: title: Key description: The key of the index to use. maxLength: 100 minLength: 1 examples: - key_K2pX7vBnU0bgA5xp type: string required: true - name: section in: query schema: title: Section description: The section of the index to use. Defaults to `Products`. maxLength: 100 minLength: 1 examples: - Products - Search Suggestions type: string required: false - name: c in: query schema: title: C description: The ID of the client and version that the request is coming from, such as `cio-js-2.90`. maxLength: 100 minLength: 1 examples: - cio-js-2.90 - cio-ios-1.0 type: string required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetOptionDeleteResponse' '400': description: Validation Error '401': description: Credentials are not passed or action is forbidden. '403': description: The supplied token does not have the required permissions. '404': description: Not Found '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets(w) components: schemas: FacetPutResponse: title: FacetPutResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false RangeFacet: title: Range facet discriminator: propertyName: range_format mapping: boundaries: '#/components/schemas/BoundariesRangeFacet' options: '#/components/schemas/OptionsRangeFacet' oneOf: - $ref: '#/components/schemas/BoundariesRangeFacet' - $ref: '#/components/schemas/OptionsRangeFacet' FacetOptionListPostResponse: title: FacetOptionListPostResponse type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetListPatchRequestBody: title: FacetListPatchRequestBody description: A list of facets with fields that should be updated. maxItems: 1000 type: array items: $ref: '#/components/schemas/BatchFacetPartial' additionalProperties: false FacetListV2PatchResponse: title: FacetListV2PatchResponse type: object properties: facets: title: Facets description: A list of facets. type: array items: $ref: '#/components/schemas/FacetResponseV2' required: - facets additionalProperties: false FacetV2PatchResponse: title: FacetV2PatchResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetDeleteResponse: title: FacetDeleteResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false BatchFacetPartial: title: BatchFacetPartial type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name additionalProperties: false FacetOptionDeleteResponse: title: FacetOptionDeleteResponse type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetListV2PutResponse: title: FacetListV2PutResponse type: object properties: facets: title: Facets description: A list of facets. type: array items: $ref: '#/components/schemas/FacetResponseV2' required: - facets additionalProperties: false FacetListPutResponse: title: FacetListPutResponse type: object properties: facets: title: Facets description: A list of facets. type: array items: $ref: '#/components/schemas/FacetResponse' required: - facets additionalProperties: false FacetListGetResponse: title: FacetListGetResponse type: object properties: facets: title: Facets description: A list of facets. type: array items: $ref: '#/components/schemas/FacetResponse' total_count: title: Total Count description: Total count of facets. type: integer required: - facets - total_count additionalProperties: false FacetV2DeleteResponse: title: FacetV2DeleteResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetV2GetResponse: title: FacetV2GetResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false BoundariesRangeFacet: title: Boundaries range facet type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: title: Type enum: - range type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. default: static examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: title: Range Format enum: - boundaries type: string range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - type - range_format additionalProperties: false FacetOptionPutRequestBody: title: FacetOptionPutRequestBody type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false HierarchicalFacet: title: Hierarchical facet type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: title: Type enum: - hierarchical type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - type additionalProperties: false BoundariesRangeFacetV2: title: Boundaries range facet type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: title: Type enum: - range type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. default: static examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: title: Range Format enum: - boundaries type: string range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - path_in_metadata - type - range_format additionalProperties: false FacetRangeFormat: title: FacetRangeFormat enum: - boundaries - options type: string FilterMatchType: title: FilterMatchType enum: - any - all - none type: string FacetType: title: FacetType enum: - multiple - range - hierarchical type: string FacetOptionPatchResponse: title: FacetOptionPatchResponse type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetResponse: title: FacetResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false BatchFacetPartialV2: title: BatchFacetPartialV2 type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. minimum: 1 examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name additionalProperties: false FacetRangeInclusionType: title: FacetRangeInclusionType enum: - above - below type: string FacetListPatchResponse: title: FacetListPatchResponse description: A list of facets type: array items: $ref: '#/components/schemas/FacetWithOptionsResponse' additionalProperties: false FacetV2PutRequestBody: title: FacetV2PutRequestBody discriminator: propertyName: type mapping: multiple: '#/components/schemas/MultipleFacetV2' hierarchical: '#/components/schemas/HierarchicalFacetV2' range: '#/components/schemas/RangeFacetV2' oneOf: - $ref: '#/components/schemas/MultipleFacetV2' - $ref: '#/components/schemas/HierarchicalFacetV2' - $ref: '#/components/schemas/RangeFacetV2' OptionsRangeFacet: title: Options range facet type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: title: Type enum: - range type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. default: static examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: title: Range Format enum: - options type: string range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - type - range_format - range_limits additionalProperties: false FacetGetResponse: title: FacetGetResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetListV2PutRequestBody: title: FacetListV2PutRequestBody type: object properties: facets: title: Facets description: A list of facets with fields that should be created or replaced. maxItems: 25 type: array items: $ref: '#/components/schemas/FacetV2' examples: - - name: Brand type: multiple path_in_metadata: data.brand display_name: Brand Name - name: Price type: range path_in_metadata: data.price range_format: boundaries required: - facets additionalProperties: false FacetOption: title: FacetOption type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetOptionListPatchRequestBody: title: FacetOptionListPatchRequestBody description: A list of facet options that should be updated. maxItems: 1000 type: array items: $ref: '#/components/schemas/FacetOption' additionalProperties: false FacetResponseV2: title: FacetResponseV2 type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false OptionsRangeFacetV2: title: Options range facet type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: title: Type enum: - range type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. default: static examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: title: Range Format enum: - options type: string range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - path_in_metadata - type - range_format - range_limits additionalProperties: false FacetListV2GetResponse: title: FacetListV2GetResponse type: object properties: facets: title: Facets description: A list of facets. type: array items: $ref: '#/components/schemas/FacetResponseV2' total_count: title: Total Count description: Total count of facets. examples: - 10 - 100 type: integer required: - facets - total_count additionalProperties: false FacetV2: title: FacetV2 type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - path_in_metadata - type additionalProperties: false FacetListPostResponse: title: FacetListPostResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetPutRequestBody: title: FacetPutRequestBody discriminator: propertyName: type mapping: multiple: '#/components/schemas/MultipleFacet' hierarchical: '#/components/schemas/HierarchicalFacet' range: '#/components/schemas/RangeFacet' oneOf: - $ref: '#/components/schemas/MultipleFacet' - $ref: '#/components/schemas/HierarchicalFacet' - $ref: '#/components/schemas/RangeFacet' HierarchicalFacetV2: title: Hierarchical facet type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: title: Type enum: - hierarchical type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - path_in_metadata - type additionalProperties: false RangeFacetV2: title: Range facet discriminator: propertyName: range_format mapping: boundaries: '#/components/schemas/BoundariesRangeFacetV2' options: '#/components/schemas/OptionsRangeFacetV2' oneOf: - $ref: '#/components/schemas/BoundariesRangeFacetV2' - $ref: '#/components/schemas/OptionsRangeFacetV2' FacetOptionListPatchResponse: title: FacetOptionListPatchResponse description: A list of facet options type: array items: $ref: '#/components/schemas/FacetOption' additionalProperties: false FacetOptionListGetResponse: title: FacetOptionListGetResponse type: object properties: facet_options: title: Facet Options description: A list of facet options. type: array items: $ref: '#/components/schemas/FacetOption' total_count: title: Total Count description: Total count of facet options. type: integer required: - facet_options - total_count additionalProperties: false FacetListPutRequestBody: title: FacetListPutRequestBody type: object properties: facets: title: Facets description: A list of facets with fields that should be created or replaced. maxItems: 25 type: array items: $ref: '#/components/schemas/FacetWithOptions' examples: - - name: Brand type: multiple display_name: Brand Name - name: Price type: range range_format: boundaries required: - facets additionalProperties: false FacetV2PutResponse: title: FacetV2PutResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetV2PatchRequestBody: title: FacetV2PatchRequestBody type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. minimum: 1 examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object additionalProperties: false FacetWithOptionsResponse: title: FacetWithOptionsResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetRangeType: title: FacetRangeType enum: - static type: string FacetListV2PostRequestBody: title: FacetListV2PostRequestBody discriminator: propertyName: type mapping: multiple: '#/components/schemas/MultipleFacetV2' hierarchical: '#/components/schemas/HierarchicalFacetV2' range: '#/components/schemas/RangeFacetV2' oneOf: - $ref: '#/components/schemas/MultipleFacetV2' - $ref: '#/components/schemas/HierarchicalFacetV2' - $ref: '#/components/schemas/RangeFacetV2' FacetListV2PostResponse: title: FacetListV2PostResponse type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetWithOptions: title: FacetWithOptions type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] maxItems: 2000 type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - type additionalProperties: false FacetListV2PatchRequestBody: title: FacetListV2PatchRequestBody type: object properties: facets: title: Facets description: A list of facets with fields that should be created or replaced. maxItems: 1000 type: array items: $ref: '#/components/schemas/BatchFacetPartialV2' required: - facets additionalProperties: false FacetPatchRequestBody: title: FacetPatchRequestBody type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object additionalProperties: false MultipleFacetV2: title: Multiple facet type: object properties: name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string path_in_metadata: title: Path In Metadata description: The path in metadata of each item where this facet is present. Must be unique inside the section and key. maxLength: 300 minLength: 1 examples: - data.brand - data.attributes.color type: string type: title: Type enum: - multiple type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Must be >= 1. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - true - false type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 2000 examples: - 300 - 500 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - path_in_metadata - type additionalProperties: false FacetOptionListPostRequestBody: title: FacetOptionListPostRequestBody type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetOptionPutResponse: title: FacetOptionPutResponse type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false FacetOptionPatchRequestBody: title: FacetOptionPatchRequestBody type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean additionalProperties: false FacetPatchResponse: title: FacetPatchResponse type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: description: Type of facet. Use `multiple` to display the facet as categorical values (for example, a Brand facet with values of Under Armour, Adidas and Puma) and `range` to display as a numeric range. You must use `range` when you want to display a slider, as well as when you want to display a list of range buckets. examples: - multiple - range allOf: - $ref: '#/components/schemas/FacetType' display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. minimum: 0 maximum: 4000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object created_at: title: Created At description: Facet creation date and time in ISO 8601 format type: string format: date-time updated_at: title: Updated At description: Last facet update date and time in ISO 8601 format. type: string format: date-time required: - created_at additionalProperties: false FacetListPostRequestBody: title: FacetListPostRequestBody discriminator: propertyName: type mapping: multiple: '#/components/schemas/MultipleFacet' hierarchical: '#/components/schemas/HierarchicalFacet' range: '#/components/schemas/RangeFacet' oneOf: - $ref: '#/components/schemas/MultipleFacet' - $ref: '#/components/schemas/HierarchicalFacet' - $ref: '#/components/schemas/RangeFacet' FacetOptionListFilters: title: FacetOptionListFilters type: object properties: value_alias: title: Value Alias description: Value alias to filter by. examples: - blue - red minLength: 1 maxLength: 200 type: string additionalProperties: false FacetOptionSortOrder: title: FacetOptionSortOrder enum: - relevance - value - num_matches type: string MultipleFacet: title: Multiple facet type: object properties: options: title: Options description: A list of facet option configurations to create and associate with this facet configuration. Default value is `[]` (empty list). default: [] type: array items: $ref: '#/components/schemas/FacetOption' name: title: Name description: The facet name used to refer to the facet in your catalog. Must be unique inside the section and key. maxLength: 100 minLength: 1 examples: - Brand - Color type: string type: title: Type enum: - multiple type: string display_name: title: Display Name description: The name of the facet to present to end users. Default value is `null`, in which case the `name` will be presented. maxLength: 200 examples: - Brand Name - Size type: string sort_order: description: Determines the default criterion by which options of this facet group are sorted. Must be one of `relevance`, `value` (to sort facet options alphanumerically), `num_matches` (to sort facet options by number of matching results). Default value is `relevance`. Sort can be overridden by setting the `position` attribute on facet options. default: relevance examples: - relevance - value - num_matches allOf: - $ref: '#/components/schemas/FacetOptionSortOrder' sort_descending: title: Sort Descending description: '`true` if this facet group''s options should be sorted in descending order, `false` to sort ascending. Default value is `true` if `sort_order` is `relevance` or `num_matches` and `false` for `value`. Setting `sort_order: relevance` will set `sort_descending: true` for `POST`, `PUT`, `PATCH` endpoints if `sort_descending` is not explicitly set in the request.' default: false examples: - true - false type: boolean range_type: description: Should be `static` if a facet is configured as `range`. If the facet is not configured as a range, value will be `null`. Default value is null. examples: - static allOf: - $ref: '#/components/schemas/FacetRangeType' range_format: description: Format of `range` facets. Determines whether the facet is configured to display as a slider (in which case the search endpoint will return only min & max values) or as a list of buckets. `boundaries` for sliders, `options` for buckets. Default value is `null`. examples: - boundaries - options allOf: - $ref: '#/components/schemas/FacetRangeFormat' range_inclusive: description: Used to create inclusive buckets. For example, for a `rating` facet, you might want to display options like `1 and above`, `2 and above`, `3 and above`, etc. Values can be either `above` (options have no upper bound), `below` (options have no lower bound), or `null` if range options should not be inclusive. Default value is `null` examples: - above - below allOf: - $ref: '#/components/schemas/FacetRangeInclusionType' range_limits: title: Range Limits description: Defines the cut-off points for generating static range buckets. Expects list of sorted numbers (like `[10, 25, 40]`). Default value is `null` minItems: 1 maxItems: 24 type: array items: anyOf: - type: integer - type: number examples: - 10 - 25 - 40 match_type: description: 'Match types specify the behavior of filters when multiple options of the same facet (e.g: color: yellow & blue) are selected. Specifies whether the results must match all options, any of them or none.' default: any examples: - any - all - none allOf: - $ref: '#/components/schemas/FilterMatchType' position: title: Position description: Used to slot facet groups to fixed positions. Default value is `null`. examples: - 1 - 5 type: integer hidden: title: Hidden description: Specifies whether the facet is hidden from users. Use this for facet data that you don't want shown to end users, but that isn't sensitive. default: false examples: - false - true type: boolean protected: title: Protected description: Specifies whether the facet is protected from users. Setting this to `true` will require authentication to view the facet. default: false examples: - false - true type: boolean countable: title: Countable description: Specifies whether counts for each facet option should be calculated and shown in the response. Setting this to `false` will skip counting these options, improving performance for facets with high cardinality. default: true examples: - false - true type: boolean options_limit: title: Options Limit description: Maximum number of options of facet type `multiple` to return in search responses. If absent, the default limit is applied. examples: - 300 - 500 minimum: 0 maximum: 2000 type: integer default: 500 data: title: Data description: Dictionary with any extra facet data. Default value is `{}` (empty dictionary). examples: - key: value - config_key: config_value type: object required: - name - type additionalProperties: false FacetOptionGetResponse: title: FacetOptionGetResponse type: object properties: value: title: Value description: A value for this facet option. Must be unique for particular facet. maxLength: 200 examples: - Red - Blue type: string value_alias: title: Value Alias description: A value alias. It is used to merge several different but semantically similar facet options into one. For example, 'dark blue' and 'light blue' can be aliased to 'blue'. maxLength: 200 examples: - blue - red type: string replace_value_alias: title: Replace Value Alias description: Determines the handling of a value alias when present. If set to `true`, exclusively considers the aliased value. If `false`, both the original and the aliased values are used. default: true examples: - true - false type: boolean display_name: title: Display Name description: A display name for this facet option. maxLength: 200 examples: - Bright Red - Navy Blue type: string position: title: Position description: Used to order facet options. examples: - 1 - 5 type: integer data: title: Data description: Dictionary with any extra facet option data. Default value is `null`. examples: - hex: '#FF0000' - swatch_url: http://example.com/swatch.png type: object hidden: title: Hidden description: Specifies whether the facet option is hidden from users. default: false examples: - false - true type: boolean required: - value additionalProperties: false securitySchemes: http_basic_auth: type: http scheme: basic http_bearer_auth: type: http scheme: bearer x-readme: explorer-enabled: false