openapi: 3.1.0 info: contact: email: support@constructor.io title: Searchandising version: '0.1' servers: - url: https://ac.cnstrc.com security: [] tags: - name: Catalog - name: Item groups - name: Items - name: Item statistics - name: Variations - name: Tasks - name: Facets - name: Facets v2 - name: Synonyms - name: Searchabilities - name: Searchabilities v2 - name: Sort options - name: Synonym groups - name: Quizzes - name: Collections - name: Redirect rules - name: Metadata overrides - name: Searchandising for Browse - name: Searchandising for Collections - name: Searchandising for Search - name: Searchandising by User Request Data - name: Searchandising campaigns - name: Facet campaigns paths: /v1/refined_filters: get: tags: - Searchandising for Browse operationId: v1-searchandising-retrieve-refined-filters summary: Retrieve refined filters 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.refined_filters(r)`, `searchandising.refined_filters(r)`. Retrieve all refined filters.' 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: filter_names_to_exclude in: query schema: title: Filter Names To Exclude description: A list of filter names to exclude from results. type: array items: 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id examples: - id - created_at enum: - id - created_at - updated_at - last_updated_internally - last_updated_externally type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending examples: - ascending - descending allOf: - $ref: '#/components/schemas/SortOrderType' 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: segments in: query schema: title: Segments description: Filtering conditions by segment type allOf: - $ref: '#/components/schemas/SegmentsFilter' required: false - name: filter in: query schema: title: Filter description: A list of filters to retrieve type: object additionalProperties: type: array items: type: string required: false style: deepObject explode: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedFilterListGetResponse' '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.refined_filters(r) - searchandising.refined_filters(r) /v1/refined_filters/{filter_name}/{filter_value}: get: tags: - Searchandising for Browse operationId: v1-searchandising-retrieve-refined-filter summary: Retrieve refined filter 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.refined_filters(r)`, `searchandising.refined_filters(r)`. Retrieve a refined filter.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: filter_names_to_exclude in: query schema: title: Filter Names To Exclude description: A list of filter names to exclude from results. type: array items: 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id examples: - id - created_at enum: - id - created_at - updated_at - last_updated_internally - last_updated_externally type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending examples: - ascending - descending allOf: - $ref: '#/components/schemas/SortOrderType' 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: segments in: query schema: title: Segments description: Filtering conditions by segment type allOf: - $ref: '#/components/schemas/SegmentsFilter' required: false - name: filter in: query schema: title: Filter description: A list of filters to retrieve type: object additionalProperties: type: array items: type: string required: false style: deepObject explode: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedFilterGetResponse' '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.refined_filters(r) - searchandising.refined_filters(r) put: tags: - Searchandising for Browse operationId: v1-searchandising-create-or-replace-refined-filter summary: Create or replace refined filter 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: `searchandising.refined_filters(w)`, `facets.refined_filters(w)`. Create or replace a refined filter. It will replace all existing rules associated with the specified `filter_name` and `filter_value` if there are any. It will also flip `allow_automatic_rules` to `true` (which is default) if attribute''s value isn''t submitted in the request.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedFilterPutBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedFilterPutResponse' '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: - searchandising.refined_filters(w) - facets.refined_filters(w) patch: tags: - Searchandising for Browse operationId: v1-searchandising-update-refined-filter summary: Update refined filter 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: `searchandising.refined_filters(w)`. Update a refined filter. It will update only the fields that are present in the request.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedFilterPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedFilterPatchResponse' '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: - searchandising.refined_filters(w) delete: tags: - Searchandising for Browse operationId: v1-searchandising-delete-refined-filter summary: Delete refined filter 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: `searchandising.refined_filters(w)`. Delete a refined filter.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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/RefinedFilterDeleteResponse' '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: - searchandising.refined_filters(w) /v1/refined_filters/{filter_name}/{filter_value}/rules: get: tags: - Searchandising for Browse operationId: v1-searchandising-retrieve-refined-filter-rules summary: Retrieve refined filter rules 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: `searchandising.refined_filters(r)`. Retrieve all refined filter rules.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: filters in: query schema: $ref: '#/components/schemas/RefinedFilterRuleFilters' required: false style: deepObject explode: true - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id enum: - id - created_at - updated_at type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending allOf: - $ref: '#/components/schemas/SortOrderType' 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/RefinedFilterRuleListGetResponse' '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: - searchandising.refined_filters(r) delete: tags: - Searchandising for Browse operationId: v1-searchandising-delete-refined-filter-rules summary: Delete refined filter rules 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.refined_filters(w)`, `searchandising.refined_filters(w)`. Delete all refined filter rules.' parameters: - name: filter_name in: path required: true schema: type: string examples: - Brand - Color - Price - name: filter_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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: '204': description: No Content '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.refined_filters(w) - searchandising.refined_filters(w) /v1/refined_collections: get: tags: - Searchandising for Collections operationId: v1-searchandising-retrieve-refined-collections summary: Retrieve refined collections 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: `searchandising.refined_collections(r)`. Retrieve all refined collections.' 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: filter_names_to_exclude in: query schema: title: Filter Names To Exclude description: A list of filter names to exclude from results. type: array items: 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id examples: - id - created_at enum: - id - created_at - updated_at - last_updated_internally - last_updated_externally type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending examples: - ascending - descending allOf: - $ref: '#/components/schemas/SortOrderType' 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: segments in: query schema: title: Segments description: Filtering conditions by segment type allOf: - $ref: '#/components/schemas/SegmentsFilter' required: false - name: filter in: query schema: title: Filter description: A list of filters to retrieve type: object additionalProperties: type: array items: type: string required: false style: deepObject explode: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedCollectionListGetResponse' '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: - searchandising.refined_collections(r) /v1/refined_collections/{collection_id}: get: tags: - Searchandising for Collections operationId: v1-searchandising-retrieve-refined-collection summary: Retrieve refined collection 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: `searchandising.refined_collections(r)`. Retrieve a refined collection.' parameters: - name: collection_id in: path required: true schema: type: string - 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: filter_names_to_exclude in: query schema: title: Filter Names To Exclude description: A list of filter names to exclude from results. type: array items: 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id examples: - id - created_at enum: - id - created_at - updated_at - last_updated_internally - last_updated_externally type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending examples: - ascending - descending allOf: - $ref: '#/components/schemas/SortOrderType' 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: segments in: query schema: title: Segments description: Filtering conditions by segment type allOf: - $ref: '#/components/schemas/SegmentsFilter' required: false - name: filter in: query schema: title: Filter description: A list of filters to retrieve type: object additionalProperties: type: array items: type: string required: false style: deepObject explode: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedCollectionGetResponse' '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: - searchandising.refined_collections(r) put: tags: - Searchandising for Collections operationId: v1-searchandising-create-or-replace-refined-collection summary: Create or replace refined collection 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: `searchandising.refined_collections(w)`. Create or replace a refined collection. It will replace all existing rules associated with the collection if there are any. It will also flip `allow_automatic_rules` to `true` (which is default) if attribute''s value isn''t submitted in the request.' parameters: - name: collection_id in: path required: true schema: type: string - 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedCollectionPutBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedCollectionPutResponse' '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: - searchandising.refined_collections(w) patch: tags: - Searchandising for Collections operationId: v1-searchandising-update-refined-collection summary: Update refined collection 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: `searchandising.refined_collections(w)`. Update a refined collection. It will update only the fields that are present in the request.' parameters: - name: collection_id in: path required: true schema: type: string - 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedCollectionPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedCollectionPatchResponse' '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: - searchandising.refined_collections(w) delete: tags: - Searchandising for Collections operationId: v1-searchandising-delete-refined-collection summary: Delete refined collection 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: `searchandising.refined_collections(w)`. Delete a refined collection.' parameters: - name: collection_id in: path required: true schema: type: string - 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/RefinedCollectionDeleteResponse' '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: - searchandising.refined_collections(w) /v1/refined_queries: get: tags: - Searchandising for Search operationId: v1-searchandising-retrieve-refined-queries summary: Retrieve refined queries 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.refined_queries(r)`, `searchandising.refined_queries(r)`. Retrieve all refined queries.' 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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: query in: query schema: title: Query description: A list of queries to filter by minItems: 1 maxItems: 100 type: array items: type: string minLength: 1 examples: - shoes - sneakers required: false - name: phrase in: query schema: title: Phrase examples: - shoes minLength: 1 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: sort_by in: query schema: title: Sort By description: The attribute to sort by. default: id examples: - id - created_at enum: - id - created_at - updated_at - last_updated_internally - last_updated_externally type: string required: false - name: sort_order in: query schema: description: The order by which results should be sorted. Only valid in conjunction with `sort_by`. default: ascending examples: - ascending - descending allOf: - $ref: '#/components/schemas/SortOrderType' 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/RefinedQueryListGetResponse' '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.refined_queries(r) - searchandising.refined_queries(r) post: tags: - Searchandising for Search operationId: v1-searchandising-create-refined-query summary: Create refined query 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: `searchandising.refined_queries(w)`, `facets.refined_queries(w)`. Create a new refined query.' 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedQueryListPostBody' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/RefinedQueryListPostResponse' '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. '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - searchandising.refined_queries(w) - facets.refined_queries(w) /v1/refined_queries/{refined_query_id}: get: tags: - Searchandising for Search operationId: v1-searchandising-retrieve-refined-query summary: Retrieve refined query 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.refined_queries(r)`, `searchandising.refined_queries(r)`. Retrieve a refined query.' parameters: - name: refined_query_id in: path required: true schema: type: integer format: int32 - 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedQueryGetResponse' '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.refined_queries(r) - searchandising.refined_queries(r) put: tags: - Searchandising for Search operationId: v1-searchandising-replace-refined-query summary: Replace refined query 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: `searchandising.refined_queries(w)`, `facets.refined_queries(w)`. Replace a refined query. It will replace all existing rules associated with the specified refined query if there are any. It will also flip `allow_automatic_rules` to `true` (which is default) if attribute''s value isn''t submitted in the request.' parameters: - name: refined_query_id in: path required: true schema: type: integer format: int32 - 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: response_section in: query schema: description: The section of the response to apply rules to, such as `results` or `facets`. default: results allOf: - $ref: '#/components/schemas/RefinedObjectRuleResponseSection' required: false - 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/RefinedQueryPutBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedQueryPutResponse' '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: - searchandising.refined_queries(w) - facets.refined_queries(w) patch: tags: - Searchandising for Search operationId: v1-searchandising-update-refined-query summary: Update refined query 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: `searchandising.refined_queries(w)`. Update a refined query. It will update only the fields that are present in the request.' parameters: - name: refined_query_id in: path required: true schema: type: integer format: int32 - 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/RefinedQueryPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedQueryPatchResponse' '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: - searchandising.refined_queries(w) delete: tags: - Searchandising for Search operationId: v1-searchandising-delete-refined-query summary: Delete refined query 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: `searchandising.refined_queries(w)`. Delete a refined query.' parameters: - name: refined_query_id in: path required: true schema: type: integer format: int32 - 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 - name: force_delete in: query schema: title: Force Delete type: boolean required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedQueryDeleteResponse' '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: - searchandising.refined_queries(w) /v1/refined_tags/{tag_name}/{tag_value}: get: tags: - Searchandising by User Request Data operationId: v1-searchandising-retrieve-refined-tag summary: Retrieve refined tag 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: `searchandising.refined_tags(r)`. Retrieve a refined tag.' parameters: - name: tag_name in: path required: true schema: type: string - name: tag_value in: path required: true schema: type: string - 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/RefinedTagGetResponse' '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: - searchandising.refined_tags(r) put: tags: - Searchandising by User Request Data operationId: v1-searchandising-create-or-replace-refined-tag summary: Create or replace refined tag 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: `searchandising.refined_tags(w)`. Create or replace a refined tag. It will replace all existing rules associated with the specified `tag_name` and `tag_value` if there are any. It will also flip `allow_automatic_rules` to `true` (which is default) if attribute''s value isn''t submitted in the request.' parameters: - name: tag_name in: path required: true schema: type: string - name: tag_value in: path required: true schema: type: string - 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/RefinedTagPutBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedTagPutResponse' '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: - searchandising.refined_tags(w) patch: tags: - Searchandising by User Request Data operationId: v1-searchandising-update-refined-tag summary: Update refined tag 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: `searchandising.refined_tags(w)`. Update a refined tag. It will update only the fields that are present in the request.' parameters: - name: tag_name in: path required: true schema: type: string - name: tag_value in: path required: true schema: type: string - 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/RefinedTagPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RefinedTagPatchResponse' '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: - searchandising.refined_tags(w) delete: tags: - Searchandising by User Request Data operationId: v1-searchandising-delete-refined-tag summary: Delete refined tag 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: `searchandising.refined_tags(w)`. Delete a refined tag.' parameters: - name: tag_name in: path required: true schema: type: string - name: tag_value in: path required: true schema: type: string - 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/RefinedTagDeleteResponse' '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: - searchandising.refined_tags(w) /v1/refined_tags: get: tags: - Searchandising by User Request Data operationId: v1-searchandising-retreive-refined-tags summary: Retrieve refined tags 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: `searchandising.refined_tags(r)`. Retrieve all refined tags' 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: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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/RefinedTagListGetResponse' '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: - searchandising.refined_tags(r) /v1/campaigns: get: tags: - Searchandising campaigns operationId: v1-searchandising-retrieve-campaigns summary: Retrieve campaigns 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: `searchandising.campaigns(r)`, `searchandising.recommendations(r)`. Retrieve campaigns.' 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: id in: query schema: title: Id description: The ID(s) of campaigns to filter by. examples: - 123 - 456 anyOf: - type: integer - type: array items: type: integer required: false - name: refined_filters in: query schema: title: Refined Filters description: A list of refined filters. type: object additionalProperties: anyOf: - type: string - type: array items: type: string minItems: 1 required: false style: deepObject explode: true - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: refined_recommendation_contexts in: query schema: title: Refined Recommendation Contexts description: A filter for refined recommendation contexts. allOf: - $ref: '#/components/schemas/RefinedRecommendationContext' required: false style: deepObject explode: true - name: refined_queries in: query schema: title: Refined Queries description: A list of refined queries. minItems: 1 type: array items: type: string minLength: 1 required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/CampaignListGetResponse' '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: - searchandising.campaigns(r) - searchandising.recommendations(r) post: tags: - Searchandising campaigns operationId: v1-searchandising-create-campaign summary: Create campaign 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: `searchandising.campaigns(w)`, `searchandising.recommendations(w)`. Create a campaign.' 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/CampaignListPostBody' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/CampaignListPostResponse' '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. '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - searchandising.campaigns(w) - searchandising.recommendations(w) /v1/campaigns/{campaign_id}: get: tags: - Searchandising campaigns operationId: v1-searchandising-retrieve-campaign summary: Retrieve campaign 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: `searchandising.campaigns(r)`, `searchandising.recommendations(r)`. Retrieve a campaign by id.' parameters: - name: campaign_id in: path required: true schema: type: integer format: int32 - 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/CampaignGetResponse' '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: - searchandising.campaigns(r) - searchandising.recommendations(r) patch: tags: - Searchandising campaigns operationId: v1-searchandising-update-campaign summary: Update campaign 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: `searchandising.campaigns(w)`, `searchandising.recommendations(w)`. Update a campaign. It will update only the fields that are present in the request.' parameters: - name: campaign_id in: path required: true schema: type: integer format: int32 - 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/CampaignPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/CampaignPatchResponse' '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: - searchandising.campaigns(w) - searchandising.recommendations(w) delete: tags: - Searchandising campaigns operationId: v1-searchandising-delete-campaign summary: Delete campaign 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: `searchandising.campaigns(w)`, `searchandising.recommendations(w)`. Delete a campaign by id.' parameters: - name: campaign_id in: path required: true schema: type: integer format: int32 - 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: '204': description: No Content '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: - searchandising.campaigns(w) - searchandising.recommendations(w) /v1/facet_rule_campaigns: get: tags: - Facet campaigns operationId: v1-searchandising-retrieve-facet-rule-campaigns summary: Retrieve facet campaigns 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.refined_filters(r)`, `facets.refined_queries(r)`. Retrieve facet campaigns.' 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: refined_filters in: query schema: title: Refined Filters description: A list of refined filters. type: object additionalProperties: anyOf: - type: string - type: array items: type: string minItems: 1 required: false style: deepObject explode: true - name: num_results_per_page in: query schema: title: Num Results Per Page description: The number of results per page to return. default: 20 minimum: 1 maximum: 100 examples: - 20 - 50 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: refined_queries in: query schema: title: Refined Queries description: A list of refined queries. minItems: 1 type: array items: type: string minLength: 1 required: false responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetRuleCampaignListGetResponse' '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.refined_filters(r) - facets.refined_queries(r) post: tags: - Facet campaigns operationId: v1-searchandising-create-facet-rule-campaign summary: Create facet campaign 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.refined_filters(w)`, `facets.refined_queries(w)`. Create a facet campaign' 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 requestBody: content: application/json: schema: $ref: '#/components/schemas/FacetRuleCampaignListPostBody' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/FacetRuleCampaignListPostResponse' '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. '409': description: Conflict '429': description: Rate limit breached security: - http_basic_auth: [] - http_bearer_auth: - facets.refined_filters(w) - facets.refined_queries(w) /v1/facet_rule_campaigns/{facet_rule_campaign_id}: get: tags: - Facet campaigns operationId: v1-searchandising-get-facet-rule-campaign summary: Retrieve facet campaign 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.refined_filters(r)`, `facets.refined_queries(r)`. Retrieve a facet campaign by id.' parameters: - name: facet_rule_campaign_id in: path required: true schema: type: integer format: int32 - 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/FacetRuleCampaignGetResponse' '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.refined_filters(r) - facets.refined_queries(r) patch: tags: - Facet campaigns operationId: v1-searchandising-update-facet-rule-campaign summary: Update facet campaign 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.refined_filters(w)`, `facets.refined_queries(w)`. Update a facet campaign. It will update only the fields that are present in the request.' parameters: - name: facet_rule_campaign_id in: path required: true schema: type: integer format: int32 - 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/FacetRuleCampaignPatchBody' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/FacetRuleCampaignPatchResponse' '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.refined_filters(w) - facets.refined_queries(w) delete: tags: - Facet campaigns operationId: v1-searchandising-delete-facet-rule-campaign summary: Delete facet campaign 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.refined_filters(w)`, `facets.refined_queries(w)`. Delete a facet campaign by id.' parameters: - name: facet_rule_campaign_id in: path required: true schema: type: integer format: int32 - 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: '204': description: No Content '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.refined_filters(w) - facets.refined_queries(w) components: schemas: RefinedObjectRuleResponseSection: title: RefinedObjectRuleResponseSection enum: - results - facets type: string SortOrderType: title: SortOrderType enum: - ascending - descending type: string SegmentsFilter: title: SegmentsFilter type: object properties: user_segment: title: User description: User segment values type: array items: type: string dynamic_segment: title: Dynamic description: Dynamic segment values type: array items: type: string autogenerated_user_segment: title: Autogenerated User Segment description: Autogenerated user segment values type: array items: type: string geo_country: title: Geo Country description: Geo country segment values type: array items: type: string geo_region: title: Geo Region description: Geo region segment values type: array items: type: string geo_city: title: Geo City description: Geo city segment values type: array items: type: string additionalProperties: false RefinementRuleType: title: RefinementRuleType enum: - whitelist - blacklist - boost - slot - filters_slot - content - variation_slicing - facet_bucketing - face_out_variation type: string Rules: title: Rules type: object properties: {} additionalProperties: false RefinedQueryListGetResponse: title: RefinedQueryListGetResponse type: object properties: refined_queries: title: Refined Queries type: array items: $ref: '#/components/schemas/RefinedQueryResponse' total_count: title: Total Count type: integer required: - refined_queries - total_count additionalProperties: false RequestTags: title: RequestTags enum: - client_ip - client_version - geo_city - geo_country - geo_country_iso_code - geo_region - dt_weekday - dt_timeofday - user_segment - autogenerated_user_segment - dynamic_segment type: string SlotRuleParameters: title: SlotRuleParameters type: object properties: item_id: title: Item Id description: The ID of an item to place in position. examples: - nike-shoes - product-123 type: string variation_slice: title: Variation Slice description: The variation slice ID of that item to use for slotting. examples: - color: - red type: object additionalProperties: type: array items: type: string position: title: Position description: The position of item to place in. minimum: 1 examples: - 1 - 5 type: integer fuzzy_match: title: Fuzzy Match description: 'The flag to determine if the rule should be applied only when there''s an exact query match. Warning: usage of this parameter has been deprecated - please contact Constructor support for assistance.' deprecated: true examples: - false - true type: boolean labels: title: Labels description: Can be used to add other miscellaneous properties for the item. examples: - promoted: true type: object required: - item_id - position additionalProperties: false SlotRuleResponse: title: SlotRuleResponse type: object properties: request_filters: title: Request Filters description: Facet conditions for the rule to be applied. type: object additionalProperties: type: array items: type: string minItems: 1 id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with `request_tag_name`. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the slot rule. allOf: - $ref: '#/components/schemas/SlotRuleParameters' rule_type: title: Rule Type enum: - slot type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type DictOrJsonStringWithDict: title: DictOrJsonStringWithDict anyOf: - type: object title: object - type: string format: json title: Encoded JSON string VariationSlicingRuleParameters: title: VariationSlicingRuleParameters type: object properties: facet_names: title: Facet Names description: The facet which we will slice based on. minItems: 1 maxItems: 1 type: array items: type: string examples: - color - brand filter_expression: title: Filter expression description: '[Filter expression](/reference/shared-filter-expressions) associated with this variation slicing rule.' allOf: - $ref: '#/components/schemas/DictOrJsonStringWithDict' required: - facet_names additionalProperties: false VariationSlicingRuleResponse: title: VariationSlicingRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleParameters' rule_type: title: Rule Type enum: - variation_slicing type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type FiltersDict: title: FiltersDict default: JSON contains filters based on items attributes. type: object additionalProperties: type: array items: type: string minLength: 1 WhitelistFiltersRuleParameters: title: WhitelistFiltersRuleParameters type: object properties: filters: title: Filters description: Any number of criteria by which you'd like to narrow the result set. This might be by color, size, or category (group) an item belongs to. allOf: - $ref: '#/components/schemas/FiltersDict' required: - filters additionalProperties: false WhitelistRuleResponse: title: WhitelistRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistFiltersRuleParameters' rule_type: title: Rule Type enum: - whitelist type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type ItemIdsOrFilters: title: ItemIdsOrFilters type: object properties: filters: title: Filters description: Any number of criteria by which you'd like to narrow the result set. This might be by color, size, or category (group) an item belongs to. examples: - brand: - Nike - Adidas allOf: - $ref: '#/components/schemas/FiltersDict' item_ids: title: Item Ids description: The IDs of the items to be recalled. minItems: 1 type: array items: type: string examples: - nike-shoes - product-123 additionalProperties: false BlacklistRuleResponse: title: BlacklistRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the blacklist rule. allOf: - $ref: '#/components/schemas/ItemIdsOrFilters' rule_type: title: Rule Type enum: - blacklist type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type BoostRuleDict: title: BoostRuleDict type: object properties: filters: title: Filters description: Any number of criteria by which you'd like to narrow the result set. This might be by color, size, or category (group) an item belongs to. examples: - brand: - Nike - Adidas allOf: - $ref: '#/components/schemas/FiltersDict' item_ids: title: Item Ids description: The IDs of the items to be recalled. minItems: 1 type: array items: type: string examples: - nike-shoes - product-123 boost: title: Boost description: Boost factor for this rule. minimum: -10 maximum: 10 examples: - -5 - 5 type: number required: - boost additionalProperties: false BoostRuleResponse: title: BoostRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the boost rule. allOf: - $ref: '#/components/schemas/BoostRuleDict' rule_type: title: Rule Type enum: - boost type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type ContentRuleParameters: title: ContentRuleParameters type: object properties: data: title: Data description: The data inside the content rule. examples: - banner_url: https://example.com/banner.jpg type: object required: - data additionalProperties: false ContentRuleResponse: title: ContentRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the content rule. allOf: - $ref: '#/components/schemas/ContentRuleParameters' rule_type: title: Rule Type enum: - content type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type PositionRange: title: PositionRange type: object properties: start: title: Start description: The start position of the slot. minimum: 1 examples: - 1 - 5 type: integer end: title: End description: The end position of the slot. minimum: 1 examples: - 3 - 10 type: integer required: - start - end additionalProperties: false FiltersSlotRuleParameters: title: FiltersSlotRuleParameters type: object properties: filters: title: Filters description: '**Deprecated**. Use `filter_expression` instead. Any number of criteria by which you''d like to narrow the result set. This might be by color, size, or category (group) an item belongs to.' deprecated: true allOf: - $ref: '#/components/schemas/FiltersDict' filter_expression: title: Filter expression description: '[Filter expression](/reference/shared-filter-expressions) associated with this filters slot rule.' allOf: - $ref: '#/components/schemas/DictOrJsonStringWithDict' position_ranges: title: Position Ranges description: A list of ranges of positions to place the items. minItems: 1 type: array items: $ref: '#/components/schemas/PositionRange' labels: title: Labels description: Can be used to add other miscellaneous properties for the item. type: object required: - position_ranges additionalProperties: false FiltersSlotRuleResponse: title: FiltersSlotRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the filters slot rule. allOf: - $ref: '#/components/schemas/FiltersSlotRuleParameters' rule_type: title: Rule Type enum: - filters_slot type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type FaceOutVariationRuleParameters: title: FaceOutVariationRuleParameters type: object properties: item_id: title: Item Id description: The ID of the item to face out. examples: - nike-shoes - product-123 minLength: 1 maxLength: 250 type: string variation_ids: title: Variation Ids description: The variation IDs to face out for this item. minItems: 1 maxItems: 50 type: array items: type: string minLength: 1 maxLength: 250 examples: - - nike-shoes-red - nike-shoes-blue required: - item_id - variation_ids additionalProperties: false FaceOutVariationRuleResponse: title: FaceOutVariationRuleResponse type: object properties: id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the face out variation rule. allOf: - $ref: '#/components/schemas/FaceOutVariationRuleParameters' rule_type: title: Rule Type enum: - face_out_variation type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - id - rule - rule_type RefinedQueryResultsResponse: title: RefinedQueryResultsResponse type: object properties: id: title: Id type: integer query: title: Query type: string created_at: title: Created At type: string format: date-time updated_at: title: Updated At type: string format: date-time last_updated_internally: title: Last Updated Internally type: string format: date-time last_updated_externally: title: Last Updated Externally type: string format: date-time last_reviewed_at: title: Last Reviewed At type: string format: date-time last_reviewed_by: title: Last Reviewed By type: string next_review_at: title: Next Review At type: string format: date-time allow_automatic_rules: title: Allow Automatic Rules type: boolean slot_rules: title: Slot Rules type: array items: $ref: '#/components/schemas/SlotRuleResponse' variation_slicing_rule: $ref: '#/components/schemas/VariationSlicingRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' content_rules: title: Content Rules type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' required: - id - query - created_at - updated_at - allow_automatic_rules - slot_rules - blacklist_rules - boost_rules - content_rules - filters_slot_rules FacetRuleTarget: title: FacetRuleTarget enum: - facet_group - facet_option type: string SlotFacetRuleParameters: title: SlotFacetRuleParameters type: object properties: name: title: Name description: The name of the facet to place in position. examples: - Brand - Color type: string position: title: Position description: The position of facet to place in. minimum: 1 examples: - 1 - 5 type: integer required: - name - position additionalProperties: false SlotFacetRuleResponse: title: SlotFacetRuleResponse type: object properties: target: $ref: '#/components/schemas/FacetRuleTarget' facet_group_name: title: Facet Group Name type: string id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: $ref: '#/components/schemas/SlotFacetRuleParameters' rule_type: title: Rule Type enum: - slot type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - target - id - rule - rule_type BlacklistFacetRuleParameters: title: BlacklistFacetRuleParameters type: object properties: name: title: Name description: The name of the facet to block. examples: - Brand - Size type: string required: - name additionalProperties: false BlacklistFacetRuleResponse: title: BlacklistFacetRuleResponse type: object properties: target: $ref: '#/components/schemas/FacetRuleTarget' facet_group_name: title: Facet Group Name type: string id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: $ref: '#/components/schemas/BlacklistFacetRuleParameters' rule_type: title: Rule Type enum: - blacklist type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - target - id - rule - rule_type FacetBucketingRuleParameters: title: FacetBucketingRuleParameters type: object properties: name: title: Name description: The name of the facet minLength: 1 maxLength: 100 type: string alias_mapping: title: Alias Mapping description: Defines alias mapping for a facet. Each key is an alias string, and its value is a list of facet_option(s) that the alias refers to. An aliased facet_option may belong to only one alias and cannot also be used as an alias key. The mapping supports up to 60 aliases in total, and each alias may reference up to 25 facet options. type: object additionalProperties: type: array items: type: string minLength: 1 maxLength: 100 minItems: 1 maxItems: 25 required: - name - alias_mapping additionalProperties: false FacetBucketingRuleResponse: title: FacetBucketingRuleResponse type: object properties: target: title: Target enum: - facet_group type: string facet_group_name: title: Facet Group Name type: string id: title: Id description: The ID of the rule, must be unique. type: integer request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: $ref: '#/components/schemas/FacetBucketingRuleParameters' rule_type: title: Rule Type enum: - facet_bucketing type: string created_at: title: Created At description: Date & time in ISO 8601 format for the creation of this rule. type: string format: date-time updated_at: title: Updated At description: Date & time in ISO 8601 format for last update for this rule. type: string format: date-time required: - target - id - rule - rule_type RefinedQueryFacetsResponse: title: RefinedQueryFacetsResponse type: object properties: id: title: Id type: integer query: title: Query type: string created_at: title: Created At type: string format: date-time updated_at: title: Updated At type: string format: date-time last_updated_internally: title: Last Updated Internally type: string format: date-time last_updated_externally: title: Last Updated Externally type: string format: date-time last_reviewed_at: title: Last Reviewed At type: string format: date-time last_reviewed_by: title: Last Reviewed By type: string next_review_at: title: Next Review At type: string format: date-time allow_automatic_rules: title: Allow Automatic Rules type: boolean slot_rules: title: Facet Slot Rules type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Facet Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' required: - id - query - created_at - updated_at - allow_automatic_rules - slot_rules - blacklist_rules RefinedQueryResponse: title: RefinedQueryResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' RefinedQueryListPostBody: title: RefinedQueryListPostBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined query maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined query oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined query. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined query oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined query maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined query. maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' query: title: Query examples: - shoes - running sneakers minLength: 1 maxLength: 100 type: string allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined query examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time required: - query additionalProperties: false SlotRuleBase: title: SlotRuleBase type: object properties: request_filters: title: Request Filters description: Facet conditions for the rule to be applied. type: object additionalProperties: type: array items: type: string minItems: 1 request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the slot rule. allOf: - $ref: '#/components/schemas/SlotRuleParameters' rule_type: title: Rule Type enum: - slot type: string required: - rule additionalProperties: false WhitelistRuleBase: title: WhitelistRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistFiltersRuleParameters' rule_type: title: Rule Type enum: - whitelist type: string required: - rule additionalProperties: false BlacklistRuleBase: title: BlacklistRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the blacklist rule. allOf: - $ref: '#/components/schemas/ItemIdsOrFilters' rule_type: title: Rule Type enum: - blacklist type: string required: - rule additionalProperties: false BoostRuleBase: title: BoostRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Rule definition of the boost rule. allOf: - $ref: '#/components/schemas/BoostRuleDict' rule_type: title: Rule Type enum: - boost type: string required: - rule additionalProperties: false ContentRuleBase: title: ContentRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the content rule. allOf: - $ref: '#/components/schemas/ContentRuleParameters' rule_type: title: Rule Type enum: - content type: string required: - rule additionalProperties: false VariationSlicingRuleBase: title: VariationSlicingRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleParameters' rule_type: title: Rule Type enum: - variation_slicing type: string required: - rule additionalProperties: false FiltersSlotRuleBase: title: FiltersSlotRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the filters slot rule. allOf: - $ref: '#/components/schemas/FiltersSlotRuleParameters' rule_type: title: Rule Type enum: - filters_slot type: string required: - rule additionalProperties: false FaceOutVariationRuleBase: title: FaceOutVariationRuleBase type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the face out variation rule. allOf: - $ref: '#/components/schemas/FaceOutVariationRuleParameters' rule_type: title: Rule Type enum: - face_out_variation type: string required: - rule additionalProperties: false RefinedQueryListPostResponse: title: RefinedQueryListPostResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' RefinedQueryGetResponse: title: RefinedQueryGetResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' RefinedQueryPutBody: title: RefinedQueryPutBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined query maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined query oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined query. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined query oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined query maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' query: title: Query examples: - shoes - running sneakers minLength: 1 maxLength: 100 type: string allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules default: true type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined query examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time required: - query additionalProperties: false RefinedQueryPutResponse: title: RefinedQueryPutResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' RefinedQueryPatchBody: title: RefinedQueryPatchBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined query maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined query oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined query. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined query oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined query maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined query maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' query: title: Query minLength: 1 type: string allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined query examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedQueryPatchResponse: title: RefinedQueryPatchResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' RefinedQueryDeleteResponse: title: RefinedQueryDeleteResponse anyOf: - $ref: '#/components/schemas/RefinedQueryResultsResponse' - $ref: '#/components/schemas/RefinedQueryFacetsResponse' CampaignPatchBody: title: CampaignPatchBody type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. examples: - Seasonal promotion campaign - Holiday sale event type: string refined_queries: title: Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Contexts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleBase' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' whitelist_rule: title: Whitelist Rule description: A whitelist rule. oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' additionalProperties: false RefinedQuery: title: RefinedQuery type: object properties: query: title: Query description: A refined query string examples: - shoes - running sneakers minLength: 1 maxLength: 100 type: string required: - query additionalProperties: false RefinedFilter: title: RefinedFilter type: object properties: filter_name: title: Filter Name description: The name of the refined filter. examples: - brand - category minLength: 1 maxLength: 250 type: string filter_value: title: Filter Value description: The value of the refined filter. examples: - Nike - Electronics minLength: 1 maxLength: 250 type: string required: - filter_name - filter_value additionalProperties: false RecommendationContextItemCondition: title: Item Condition type: object properties: type: title: Type enum: - item type: string item_id: title: Item Id description: The ID of the item. examples: - nike-shoes - product-123 type: string required: - type additionalProperties: false RecommendationContextAttributeCondition: title: Attribute Condition type: object properties: type: title: Type enum: - attribute type: string filter_name: title: Filter Name description: The name of the refined filter. examples: - brand - category type: string filter_value: title: Filter Value description: The value of the refined filter. examples: - Nike - Electronics type: string required: - type additionalProperties: false RecommendationContextExpressionCondition: title: Expression Condition type: object properties: type: title: Type enum: - expression type: string expression: title: Expression description: Object where keys are filter names, values are lists of filter values. examples: - brand: - Nike - Adidas color: - red - blue type: object additionalProperties: type: array items: type: string required: - type - expression additionalProperties: false RecommendationContext: title: RecommendationContext type: object properties: pod_id: title: Pod Id description: The ID of the pod. examples: - homepage-recs - pdp-similar type: string condition: title: Condition description: Condition of the context discriminator: propertyName: type mapping: item: '#/components/schemas/RecommendationContextItemCondition' attribute: '#/components/schemas/RecommendationContextAttributeCondition' expression: '#/components/schemas/RecommendationContextExpressionCondition' oneOf: - $ref: '#/components/schemas/RecommendationContextItemCondition' - $ref: '#/components/schemas/RecommendationContextAttributeCondition' - $ref: '#/components/schemas/RecommendationContextExpressionCondition' required: - pod_id - condition CampaignMetadata: title: CampaignMetadata type: object properties: goal: title: Goal description: The goal of the campaign. examples: - increase_conversions - boost_revenue maxLength: 255 type: string goal_description: title: Goal Description description: A description of the campaign goal. examples: - Boost spring sales - Increase average order value maxLength: 512 type: string additionalProperties: false CampaignPatchResponse: title: CampaignPatchResponse type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. examples: - Seasonal promotion campaign - Holiday sale event type: string refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Context Dicts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleResponse' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' whitelist_rule: title: Whitelist Rule description: A whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistRuleResponse' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleResponse' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' id: title: Id description: The ID of the campaign. type: integer created_at: title: Created At description: The creation time of the campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the campaign. type: string format: date-time required: - id - created_at - updated_at additionalProperties: false CampaignGetResponse: title: CampaignGetResponse type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. examples: - Seasonal promotion campaign - Holiday sale event type: string refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Context Dicts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleResponse' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' whitelist_rule: title: Whitelist Rule description: A whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistRuleResponse' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleResponse' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' id: title: Id description: The ID of the campaign. type: integer created_at: title: Created At description: The creation time of the campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the campaign. type: string format: date-time required: - id - created_at - updated_at additionalProperties: false RefinedStrategyType: title: RefinedStrategyType enum: - attribute - item - expression type: string RefinedRecommendationContext: title: RefinedRecommendationContext type: object properties: pod_id: title: Pod Id description: A list of pod IDs. type: array items: type: string minLength: 1 examples: - homepage-recs - pdp-similar condition_type: description: A list of condition types. Can be "item", "attribute", or "expression" type: array items: $ref: '#/components/schemas/RefinedStrategyType' examples: - item - attribute additionalProperties: false CampaignListGetResponse: title: CampaignListGetResponse type: object properties: campaigns: title: Campaigns description: A list of campaigns. type: array items: $ref: '#/components/schemas/Campaign' total_count: title: Total Count description: The total count of campaigns. type: integer required: - campaigns - total_count Campaign: title: Campaign type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. examples: - Seasonal promotion campaign - Holiday sale event type: string refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Context Dicts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleResponse' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' whitelist_rule: title: Whitelist Rule description: A whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistRuleResponse' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleResponse' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' id: title: Id description: The ID of the campaign. type: integer created_at: title: Created At description: The creation time of the campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the campaign. type: string format: date-time required: - id - created_at - updated_at additionalProperties: false CampaignListPostBody: title: CampaignListPostBody type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. default: '' type: string refined_queries: title: Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Contexts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleBase' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' whitelist_rule: title: Whitelist Rule description: A whitelist rule. oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' required: - name additionalProperties: false CampaignListPostResponse: title: CampaignListPostResponse type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string start_time: title: Start Time description: The start time of the campaign. examples: - '2024-03-01T00:00:00' - '2024-06-15T12:00:00' type: string format: date-time end_time: title: End Time description: The end time of the campaign. examples: - '2024-03-31T23:59:59' - '2024-07-15T12:00:00' type: string format: date-time name: title: Name description: The name of the campaign. examples: - Spring Sale - Black Friday type: string description: title: Description description: The description of the campaign. examples: - Seasonal promotion campaign - Holiday sale event type: string refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' refined_recommendation_contexts: title: Refined Recommendation Context Dicts description: A list of refined recommendation contexts. maxItems: 100 type: array items: $ref: '#/components/schemas/RecommendationContext' boost_rules: title: Boost Rules description: A list of boost rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' slot_rules: title: Slot Rules description: A list of slot rules. maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleResponse' content_rules: title: Content Rules description: A list of content rules. maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules description: A list of filters slot rules. maxItems: 5 type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules description: A list of face out variation rules. type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' whitelist_rule: title: Whitelist Rule description: A whitelist rule. allOf: - $ref: '#/components/schemas/WhitelistRuleResponse' variation_slicing_rule: title: Variation Slicing Rule description: A variation slicing rule. allOf: - $ref: '#/components/schemas/VariationSlicingRuleResponse' metadata_json: title: Metadata Json description: Metadata related to the campaign. allOf: - $ref: '#/components/schemas/CampaignMetadata' id: title: Id description: The ID of the campaign. type: integer created_at: title: Created At description: The creation time of the campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the campaign. type: string format: date-time required: - id - created_at - updated_at additionalProperties: false FacetRuleCampaignListPostBody: title: FacetRuleCampaignListPostBody type: object properties: slot_rules: title: Slot Rules type: array items: discriminator: propertyName: target mapping: facet_group: '#/components/schemas/SlotFacetRuleBase' facet_option: '#/components/schemas/SlotFacetOptionRuleBase' oneOf: - $ref: '#/components/schemas/SlotFacetRuleBase' - $ref: '#/components/schemas/SlotFacetOptionRuleBase' blacklist_rules: title: Blacklist Rules type: array items: discriminator: propertyName: target mapping: facet_group: '#/components/schemas/BlacklistFacetRuleBase' facet_option: '#/components/schemas/BlacklistFacetOptionRuleBase' oneOf: - $ref: '#/components/schemas/BlacklistFacetRuleBase' - $ref: '#/components/schemas/BlacklistFacetOptionRuleBase' name: title: Name type: string description: title: Description description: The description of the facet campaign. type: string refined_queries: title: Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' required: - name additionalProperties: false SlotFacetRuleBase: title: SlotFacetRuleBase type: object properties: target: title: Target enum: - facet_group type: string request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the slot facet rule. allOf: - $ref: '#/components/schemas/SlotFacetRuleParameters' rule_type: title: Rule Type description: Type of the rule. enum: - slot type: string required: - target - rule additionalProperties: false SlotFacetOptionRuleBase: title: SlotFacetOptionRuleBase type: object properties: target: title: Target enum: - facet_option type: string facet_group_name: title: Facet Group Name type: string request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the slot facet rule. allOf: - $ref: '#/components/schemas/SlotFacetRuleParameters' rule_type: title: Rule Type description: Type of the rule. enum: - slot type: string required: - target - facet_group_name - rule additionalProperties: false BlacklistFacetRuleBase: title: BlacklistFacetRuleBase type: object properties: target: title: Target enum: - facet_group type: string request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the blacklist rule. allOf: - $ref: '#/components/schemas/BlacklistFacetRuleParameters' rule_type: title: Rule Type description: Type of the rule. enum: - blacklist type: string required: - target - rule additionalProperties: false BlacklistFacetOptionRuleBase: title: BlacklistFacetOptionRuleBase type: object properties: target: title: Target enum: - facet_option type: string facet_group_name: title: Facet Group Name type: string request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the blacklist rule. allOf: - $ref: '#/components/schemas/BlacklistFacetRuleParameters' rule_type: title: Rule Type description: Type of the rule. enum: - blacklist type: string required: - target - facet_group_name - rule additionalProperties: false FacetBucketingRuleBase: title: FacetBucketingRuleBase type: object properties: target: title: Target enum: - facet_group type: string request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the facet bucketing rule. allOf: - $ref: '#/components/schemas/FacetBucketingRuleParameters' rule_type: title: Rule Type enum: - facet_bucketing type: string required: - target - rule additionalProperties: false FacetRuleCampaignListPostResponse: title: FacetRuleCampaignListPostResponse type: object properties: id: title: Id description: The ID of the facet rule campaign. type: integer name: title: Name description: The name of the facet rule campaign. type: string description: title: Description description: The description of the facet rule campaign. type: string created_at: title: Created At description: The creation time of the facet rule campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the facet rule campaign. type: string format: date-time slot_rules: title: Slot Rules description: A list of slot rules. type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Sorted Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' required: - id - name - created_at - updated_at - slot_rules - blacklist_rules additionalProperties: false FacetRuleCampaignListGetResponse: title: FacetRuleCampaignListGetResponse type: object properties: facet_rule_campaigns: title: Facet Rule Campaigns description: A list of facet rule campaigns. type: array items: $ref: '#/components/schemas/FacetRuleCampaignBaseResponse' total_count: title: Total Count description: The total count of facet rule campaigns. type: integer required: - facet_rule_campaigns - total_count FacetRuleCampaignBaseResponse: title: FacetRuleCampaignBaseResponse type: object properties: id: title: Id description: The ID of the facet rule campaign. type: integer name: title: Name description: The name of the facet rule campaign. type: string description: title: Description description: The description of the facet rule campaign. type: string created_at: title: Created At description: The creation time of the facet rule campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the facet rule campaign. type: string format: date-time slot_rules: title: Slot Rules description: A list of slot rules. type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Sorted Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' required: - id - name - created_at - updated_at - slot_rules - blacklist_rules additionalProperties: false FacetRuleCampaignGetResponse: title: FacetRuleCampaignGetResponse type: object properties: id: title: Id description: The ID of the facet rule campaign. type: integer name: title: Name description: The name of the facet rule campaign. type: string description: title: Description description: The description of the facet rule campaign. type: string created_at: title: Created At description: The creation time of the facet rule campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the facet rule campaign. type: string format: date-time slot_rules: title: Slot Rules description: A list of slot rules. type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Sorted Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' required: - id - name - created_at - updated_at - slot_rules - blacklist_rules additionalProperties: false FacetRuleCampaignPatchBody: title: FacetRuleCampaignPatchBody type: object properties: slot_rules: title: Slot Rules type: array items: discriminator: propertyName: target mapping: facet_group: '#/components/schemas/SlotFacetRuleBase' facet_option: '#/components/schemas/SlotFacetOptionRuleBase' oneOf: - $ref: '#/components/schemas/SlotFacetRuleBase' - $ref: '#/components/schemas/SlotFacetOptionRuleBase' blacklist_rules: title: Blacklist Rules type: array items: discriminator: propertyName: target mapping: facet_group: '#/components/schemas/BlacklistFacetRuleBase' facet_option: '#/components/schemas/BlacklistFacetOptionRuleBase' oneOf: - $ref: '#/components/schemas/BlacklistFacetRuleBase' - $ref: '#/components/schemas/BlacklistFacetOptionRuleBase' name: title: Name description: The name of the facet campaign. examples: - Holiday Promo - Summer Sale type: string description: title: Description description: The description of the facet campaign. examples: - Campaign for holiday season - Summer promotion campaign type: string refined_queries: title: Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' additionalProperties: false FacetRuleCampaignPatchResponse: title: FacetRuleCampaignPatchResponse type: object properties: id: title: Id description: The ID of the facet rule campaign. type: integer name: title: Name description: The name of the facet rule campaign. type: string description: title: Description description: The description of the facet rule campaign. type: string created_at: title: Created At description: The creation time of the facet rule campaign. type: string format: date-time updated_at: title: Updated At description: The last updated time of the facet rule campaign. type: string format: date-time slot_rules: title: Slot Rules description: A list of slot rules. type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Blacklist Rules description: A list of blacklist rules. type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' refined_queries: title: Sorted Refined Queries description: A list of refined queries. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedQuery' refined_filters: title: Sorted Refined Filters description: A list of refined filters. maxItems: 100 type: array items: $ref: '#/components/schemas/RefinedFilter' required: - id - name - created_at - updated_at - slot_rules - blacklist_rules additionalProperties: false RefinedFilterListGetResponse: title: RefinedFilterListGetResponse type: object properties: refined_filters: title: Refined Filters type: array items: $ref: '#/components/schemas/RefinedFilterResponse' total_count: title: Total Count type: integer required: - refined_filters - total_count additionalProperties: false RefinedFilterResultsResponse: title: RefinedFilterResultsResponse type: object properties: id: title: Id type: integer filter_name: title: Filter Name type: string filter_value: title: Filter Value type: string created_at: title: Created At type: string format: date-time updated_at: title: Updated At type: string format: date-time last_updated_internally: title: Last Updated Internally type: string format: date-time last_updated_externally: title: Last Updated Externally type: string format: date-time last_reviewed_at: title: Last Reviewed At type: string format: date-time last_reviewed_by: title: Last Reviewed By type: string next_review_at: title: Next Review At type: string format: date-time allow_automatic_rules: title: Allow Automatic Rules type: boolean slot_rules: title: Slot Rules type: array items: $ref: '#/components/schemas/SlotRuleResponse' variation_slicing_rule: $ref: '#/components/schemas/VariationSlicingRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' content_rules: title: Content Rules type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' face_out_variation_rules: title: Face Out Variation Rules type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' required: - id - filter_name - filter_value - created_at - updated_at - allow_automatic_rules - slot_rules - blacklist_rules - boost_rules - content_rules - filters_slot_rules additionalProperties: false RefinedFilterFacetsResponse: title: RefinedFilterFacetsResponse type: object properties: id: title: Id type: integer filter_name: title: Filter Name type: string filter_value: title: Filter Value type: string created_at: title: Created At type: string format: date-time updated_at: title: Updated At type: string format: date-time last_updated_internally: title: Last Updated Internally type: string format: date-time last_updated_externally: title: Last Updated Externally type: string format: date-time last_reviewed_at: title: Last Reviewed At type: string format: date-time last_reviewed_by: title: Last Reviewed By type: string next_review_at: title: Next Review At type: string format: date-time allow_automatic_rules: title: Allow Automatic Rules type: boolean slot_rules: title: Facet Slot Rules type: array items: $ref: '#/components/schemas/SlotFacetRuleResponse' blacklist_rules: title: Facet Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistFacetRuleResponse' required: - id - filter_name - filter_value - created_at - updated_at - allow_automatic_rules - slot_rules - blacklist_rules additionalProperties: false RefinedFilterResponse: title: RefinedFilterResponse anyOf: - $ref: '#/components/schemas/RefinedFilterResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedFilterGetResponse: title: RefinedFilterGetResponse type: object properties: refined_filters: title: Refined Filters type: array items: $ref: '#/components/schemas/RefinedFilterResponse' total_count: title: Total Count type: integer required: - refined_filters - total_count additionalProperties: false RefinedFilterPutBody: title: RefinedFilterPutBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined filter maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined filter oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined filter. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined filter oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules default: true type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined filter examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedFilterPutResponse: title: RefinedFilterPutResponse anyOf: - $ref: '#/components/schemas/RefinedFilterResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedFilterPatchBody: title: RefinedFilterPatchBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined filter maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined filter oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined filter. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined filter oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined filter examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedFilterPatchResponse: title: RefinedFilterPatchResponse anyOf: - $ref: '#/components/schemas/RefinedFilterResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedFilterDeleteResponse: title: RefinedFilterDeleteResponse anyOf: - $ref: '#/components/schemas/RefinedFilterResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedFilterRuleFilters: title: Filters type: object properties: facet_group_name: title: Facet Group Name description: The name of the facet group to filter by. examples: - Brand - Color type: string target: description: The target type of the facet rule. examples: - facet_group - facet_option allOf: - $ref: '#/components/schemas/FacetRuleTarget' additionalProperties: false RefinedFilterRuleListGetResponse: title: RefinedFilterRuleListGetResponse type: object properties: refined_filter_rules: title: Refined Filter Rules type: array items: anyOf: - $ref: '#/components/schemas/RefinedFilterRuleResponse' - $ref: '#/components/schemas/RefinedFilterFacetRuleResponse' total_count: title: Total Count type: integer required: - refined_filter_rules - total_count additionalProperties: false RefinedFilterRuleResponse: title: RefinedFilterRuleResponse discriminator: propertyName: rule_type mapping: slot: '#/components/schemas/SlotRuleResponse' whitelist: '#/components/schemas/WhitelistRuleResponse' blacklist: '#/components/schemas/BlacklistRuleResponse' boost: '#/components/schemas/BoostRuleResponse' content: '#/components/schemas/ContentRuleResponse' variation_slicing: '#/components/schemas/VariationSlicingRuleResponse' face_out_variation: '#/components/schemas/FaceOutVariationRuleResponse' oneOf: - $ref: '#/components/schemas/SlotRuleResponse' - $ref: '#/components/schemas/WhitelistRuleResponse' - $ref: '#/components/schemas/BlacklistRuleResponse' - $ref: '#/components/schemas/BoostRuleResponse' - $ref: '#/components/schemas/ContentRuleResponse' - $ref: '#/components/schemas/VariationSlicingRuleResponse' - $ref: '#/components/schemas/FaceOutVariationRuleResponse' RefinedFilterFacetRuleResponse: title: RefinedFilterFacetRuleResponse discriminator: propertyName: rule_type mapping: slot: '#/components/schemas/SlotFacetRuleResponse' blacklist: '#/components/schemas/BlacklistFacetRuleResponse' oneOf: - $ref: '#/components/schemas/SlotFacetRuleResponse' - $ref: '#/components/schemas/BlacklistFacetRuleResponse' RefinedTagGetResponse: title: RefinedTagGetResponse type: object properties: refined_tags: title: Refined Tags type: array items: $ref: '#/components/schemas/RefinedTag' total_count: title: Total Count examples: - 10 - 50 type: integer required: - refined_tags - total_count additionalProperties: false RefinedTag: title: RefinedTag type: object properties: allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time tag_name: title: Tag Name examples: - color - size type: string tag_value: title: Tag Value examples: - red - large type: string boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' required: - tag_name - tag_value - boost_rules - blacklist_rules additionalProperties: false RefinedTagPutBody: title: RefinedTagPutBody type: object properties: boost_rules: title: Boost Rules description: The boost rules attached to the refined tag. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined tag maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' slot_rules: title: Slot Rules description: The slotting rules attached to the refined tag maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBaseWithoutRequestFilters' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined tag allOf: - $ref: '#/components/schemas/WhitelistRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules default: true type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false SlotRuleBaseWithoutRequestFilters: title: SlotRuleBaseWithoutRequestFilters type: object properties: request_tag_name: description: Request tag name to be used to activate this entity for, used only with `request_tag_value`. examples: - user_segment - geo_country allOf: - $ref: '#/components/schemas/RequestTags' request_tag_value: title: Request Tag Value description: Request tag value to be used to activate this entity for, used only with request_tag_name. maxLength: 100 minLength: 1 examples: - premium - US type: string active: title: Active description: Indicates whether this rule is active or not. examples: - true - false type: boolean start_time: title: Start Time description: Date and time when the rule should be enabled. examples: - '2024-03-06T16:05:19' type: string format: date-time end_time: title: End Time description: Date and time when the rule should be disabled. examples: - '2024-03-06T17:05:19' type: string format: date-time campaign_id: title: Campaign Id examples: - 1 - 42 type: integer automatically_generated: title: Automatically Generated description: Boolean to indicate if this rule is automatically generated or not. examples: - false - true type: boolean rule: title: Rule description: Parameters of the slot rule. allOf: - $ref: '#/components/schemas/SlotRuleParameters' rule_type: title: Rule Type enum: - slot type: string required: - rule additionalProperties: false RefinedTagPutResponse: title: RefinedTagPutResponse type: object properties: allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time tag_name: title: Tag Name examples: - color - size type: string tag_value: title: Tag Value examples: - red - large type: string boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' required: - tag_name - tag_value - boost_rules - blacklist_rules additionalProperties: false RefinedTagPatchBody: title: RefinedTagPatchBody type: object properties: boost_rules: title: Boost Rules description: The boost rules attached to the refined tag. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined tag maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' slot_rules: title: Slot Rules description: The slotting rules attached to the refined tag maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBaseWithoutRequestFilters' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined tag allOf: - $ref: '#/components/schemas/WhitelistRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedTagPatchResponse: title: RefinedTagPatchResponse type: object properties: allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time tag_name: title: Tag Name examples: - color - size type: string tag_value: title: Tag Value examples: - red - large type: string boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' required: - tag_name - tag_value - boost_rules - blacklist_rules additionalProperties: false RefinedTagDeleteResponse: title: RefinedTagDeleteResponse type: object properties: allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined tag examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time tag_name: title: Tag Name examples: - color - size type: string tag_value: title: Tag Value examples: - red - large type: string boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' required: - tag_name - tag_value - boost_rules - blacklist_rules additionalProperties: false RefinedTagListGetResponse: title: RefinedTagListGetResponse type: object properties: refined_tags: title: Refined Tags type: array items: $ref: '#/components/schemas/RefinedTag' total_count: title: Total Count examples: - 10 - 50 type: integer required: - refined_tags - total_count additionalProperties: false RefinedCollectionListGetResponse: title: RefinedCollectionListGetResponse type: object properties: refined_collections: title: Refined Collections type: array items: $ref: '#/components/schemas/RefinedCollectionResponse' total_count: title: Total Count type: integer required: - refined_collections - total_count additionalProperties: false RefinedCollectionResultsResponse: title: RefinedCollectionResultsResponse type: object properties: collection_id: title: Filter Value type: string allow_automatic_rules: title: Allow Automatic Rules type: boolean slot_rules: title: Slot Rules type: array items: $ref: '#/components/schemas/SlotRuleResponse' whitelist_rule: $ref: '#/components/schemas/WhitelistRuleResponse' blacklist_rules: title: Blacklist Rules type: array items: $ref: '#/components/schemas/BlacklistRuleResponse' boost_rules: title: Boost Rules type: array items: $ref: '#/components/schemas/BoostRuleResponse' content_rules: title: Content Rules type: array items: $ref: '#/components/schemas/ContentRuleResponse' filters_slot_rules: title: Filters Slot Rules type: array items: $ref: '#/components/schemas/FiltersSlotRuleResponse' variation_slicing_rule: $ref: '#/components/schemas/VariationSlicingRuleResponse' face_out_variation_rules: title: Face Out Variation Rules type: array items: $ref: '#/components/schemas/FaceOutVariationRuleResponse' required: - collection_id - allow_automatic_rules - slot_rules - blacklist_rules - boost_rules - content_rules - filters_slot_rules additionalProperties: false RefinedCollectionResponse: title: RefinedCollectionResponse anyOf: - $ref: '#/components/schemas/RefinedCollectionResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedCollectionGetResponse: title: RefinedCollectionGetResponse type: object properties: refined_collections: title: Refined Collections type: array items: $ref: '#/components/schemas/RefinedCollectionResponse' total_count: title: Total Count type: integer required: - refined_collections - total_count additionalProperties: false RefinedCollectionPutBody: title: RefinedCollectionPutBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined filter maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined filter oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined filter. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined filter oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules default: true type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined filter examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedCollectionPutResponse: title: RefinedCollectionPutResponse anyOf: - $ref: '#/components/schemas/RefinedCollectionResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedCollectionPatchBody: title: RefinedCollectionPatchBody type: object properties: slot_rules: title: Slot Rules description: The slotting rules attached to the refined filter maxItems: 1000 type: array items: $ref: '#/components/schemas/SlotRuleBase' whitelist_rule: title: Whitelist Rule description: The whitelist rule attached to the refined filter oneOf: - $ref: '#/components/schemas/WhitelistRuleBase' - type: 'null' blacklist_rules: title: Blacklist Rules description: The blacklist rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/BlacklistRuleBase' boost_rules: title: Boost Rules description: The boost rules attached to the refined filter. It is allowed to create maximum 50 manual and 50 automatic rules. The number of rules for each of the types includes both active and inactive rules type: array items: $ref: '#/components/schemas/BoostRuleBase' content_rules: title: Content Rules description: The content rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/ContentRuleBase' variation_slicing_rule: title: Variation Slicing Rule description: The variation slicing rule attached to the refined filter oneOf: - $ref: '#/components/schemas/VariationSlicingRuleBase' - type: 'null' filters_slot_rules: title: Filters Slot Rules description: The filters slot rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FiltersSlotRuleBase' face_out_variation_rules: title: Face Out Variation Rules description: The face out variation rules attached to the refined filter maxItems: 50 type: array items: $ref: '#/components/schemas/FaceOutVariationRuleBase' allow_automatic_rules: title: Allow Automatic Rules description: Specifies whether to allow automatic creation of rules examples: - true - false type: boolean last_reviewed_at: title: Last Reviewed At description: The date of the last review examples: - '2024-03-06T16:05:19' type: string format: date-time last_reviewed_by: title: Last Reviewed By description: The user who last reviewed the refined filter examples: - user@example.com type: string next_review_at: title: Next Review At description: The date of the next review examples: - '2024-04-06T16:05:19' type: string format: date-time additionalProperties: false RefinedCollectionPatchResponse: title: RefinedCollectionPatchResponse anyOf: - $ref: '#/components/schemas/RefinedCollectionResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' RefinedCollectionDeleteResponse: title: RefinedCollectionDeleteResponse anyOf: - $ref: '#/components/schemas/RefinedFilterResultsResponse' - $ref: '#/components/schemas/RefinedFilterFacetsResponse' securitySchemes: http_basic_auth: type: http scheme: basic http_bearer_auth: type: http scheme: bearer x-readme: explorer-enabled: false