diff --git a/spectaql/config-admin.yml b/spectaql/config-admin.yml index 8487ddfa..9ea73603 100644 --- a/spectaql/config-admin.yml +++ b/spectaql/config-admin.yml @@ -201,7 +201,7 @@ introspection: # # File that contains your metadata data in JS module export, or JSON format - # metadataFile: path/to/metadata.js[on] + metadataFile: spectaql/metadata-admin.json # The path to a key from which to read the documentation-related metadata at each level of your metadata file. # Defaults to 'documentation', but in case you use a different name, or have a complex/nested metadata structure, you can diff --git a/spectaql/metadata-admin.json b/spectaql/metadata-admin.json new file mode 100644 index 00000000..ec81fcad --- /dev/null +++ b/spectaql/metadata-admin.json @@ -0,0 +1,433 @@ +{ + "OBJECT": { + "MyType": { + "fields": { + "ActionType": { + "documentation": { "undocumented": true } + }, + "AnalyticsInput": { + "documentation": { "undocumented": true } + }, + "AnalyticsTypes": { + "documentation": { "undocumented": true } + }, + "BatchUnitResponse": { + "documentation": { "undocumented": true } + }, + "CategoriesResponse": { + "documentation": { "undocumented": true } + }, + "Category": { + "documentation": { "undocumented": true } + }, + "CategoryRule": { + "documentation": { "undocumented": true } + }, + "CategoryRuleDetail": { + "documentation": { "undocumented": true } + }, + "CategoryRuleInput": { + "documentation": { "undocumented": true } + }, + "CategoryRulesDeleteCount": { + "documentation": { "undocumented": true } + }, + "CategoryRulesMutationResponse": { + "documentation": { "undocumented": true } + }, + "CategoryRulesQueryResponse": { + "documentation": { "undocumented": true } + }, + "ConditionRequest": { + "documentation": { "undocumented": true } + }, + "ConditionResponse": { + "documentation": { "undocumented": true } + }, + "CountFromTo": { + "documentation": { "undocumented": true } + }, + "CreateUnitRequest": { + "documentation": { "undocumented": true } + }, + "CustomOperatorRequest": { + "documentation": { "undocumented": true } + }, + "CustomOperatorResponse": { + "documentation": { "undocumented": true } + }, + "CustomOperatorType": { + "documentation": { "undocumented": true } + }, + "DefaultQueryRule": { + "documentation": { "undocumented": true } + }, + "defaultQueryRuleQueryResponse": { + "documentation": { "undocumented": true } + }, + "Event": { + "documentation": { "undocumented": true } + }, + "EventAction": { + "documentation": { "undocumented": true } + }, + "EventActionInput": { + "documentation": { "undocumented": true } + }, + "EventCounts": { + "documentation": { "undocumented": true } + }, + "EventInput": { + "documentation": { "undocumented": true } + }, + "EventTargetType": { + "documentation": { "undocumented": true } + }, + "Eventing": { + "documentation": { "undocumented": true } + }, + "FacetAggregationRange": { + "documentation": { "undocumented": true } + }, + "FacetAggregationRangeInput": { + "documentation": { "undocumented": true } + }, + "FacetConfigAggregationType": { + "documentation": { "undocumented": true } + }, + "FacetConfigDisplayType": { + "documentation": { "undocumented": true } + }, + "FacetConfigurationInput": { + "documentation": { "undocumented": true } + }, + "FacetConfigurationResponse": { + "documentation": { "undocumented": true } + }, + "FacetValuesSortType": { + "documentation": { "undocumented": true } + }, + "FacetsConfigurationMutationResponse": { + "documentation": { "undocumented": true } + }, + "FacetsConfigurationQueryResponse": { + "documentation": { "undocumented": true } + }, + "FilterRuleRequest": { + "documentation": { "undocumented": true } + }, + "FilterRuleResponse": { + "documentation": { "undocumented": true } + }, + "FilterRuleType": { + "documentation": { "undocumented": true } + }, + "IndexLanguageConfiguration": { + "documentation": { "undocumented": true } + }, + "IndexLanguageConfigurationInput": { + "documentation": { "undocumented": true } + }, + "IsOperatorRequest": { + "documentation": { "undocumented": true } + }, + "IsOperatorResponse": { + "documentation": { "undocumented": true } + }, + "IsOperatorType": { + "documentation": { "undocumented": true } + }, + "JoinOperatorType": { + "documentation": { "undocumented": true } + }, + "Language": { + "documentation": { "undocumented": true } + }, + "LanguageAnalyzer": { + "documentation": { "undocumented": true } + }, + "LanguageAnalyzerInput": { + "documentation": { "undocumented": true } + }, + "LiveSearch": { + "documentation": { "undocumented": true } + }, + "ManualPriceBucketConfiguration": { + "documentation": { "undocumented": true } + }, + "ManualPriceBucketConfigurationInput": { + "documentation": { "undocumented": true } + }, + "MetadataBooleanCondition": { + "documentation": { "undocumented": true } + }, + "MetadataBooleanFieldFilterEnum": { + "documentation": { "undocumented": true } + }, + "MetadataBooleanFilter": { + "documentation": { "undocumented": true } + }, + "MetadataFilterOperatorEnum": { + "documentation": { "undocumented": true } + }, + "Metrics": { + "documentation": { "undocumented": true } + }, + "MultiSelectOperator": { + "documentation": { "undocumented": true } + }, + "NumericOperatorRequest": { + "documentation": { "undocumented": true } + }, + "NumericOperatorResponse": { + "documentation": { "undocumented": true } + }, + "NumericOperatorType": { + "documentation": { "undocumented": true } + }, + "OperatorRequest": { + "documentation": { "undocumented": true } + }, + "OperatorResponse": { + "documentation": { "undocumented": true } + }, + "PopularSkuResponse": { + "documentation": { "undocumented": true } + }, + "Price": { + "documentation": { "undocumented": true } + }, + "PriceBucketConfiguration": { + "documentation": { "undocumented": true } + }, + "PriceBucketConfigurationInput": { + "documentation": { "undocumented": true } + }, + "PriceBucketType": { + "documentation": { "undocumented": true } + }, + "PriceWrapper": { + "documentation": { "undocumented": true } + }, + "ProductAttributeMetadataQueryResponse": { + "documentation": { "undocumented": true } + }, + "ProductAttributeMetadataResponse": { + "documentation": { "undocumented": true } + }, + "QueryCondition": { + "documentation": { "undocumented": true } + }, + "QueryConditionGroup": { + "documentation": { "undocumented": true } + }, + "QueryConditionGroupInput": { + "documentation": { "undocumented": true } + }, + "QueryConditionInput": { + "documentation": { "undocumented": true } + }, + "QueryConditionType": { + "documentation": { "undocumented": true } + }, + "QueryRule": { + "documentation": { "undocumented": true } + }, + "QueryRuleInput": { + "documentation": { "undocumented": true } + }, + "QueryRulesMutationResponse": { + "documentation": { "undocumented": true } + }, + "QueryRulesQueryResponse": { + "documentation": { "undocumented": true } + }, + "RankingType": { + "documentation": { "undocumented": true } + }, + "Recommendations": { + "documentation": { "undocumented": true } + }, + "RuleStatusType": { + "documentation": { "undocumented": true } + }, + "RuleType": { + "documentation": { "undocumented": true } + }, + "SearchAnalyticsQueryResponse": { + "documentation": { "undocumented": true } + }, + "SearchMerchandisingRule": { + "documentation": { "undocumented": true } + }, + "SearchMerchandisingRuleInput": { + "documentation": { "undocumented": true } + }, + "StoreConfiguration": { + "documentation": { "undocumented": true } + }, + "StoreConfigurationInput": { + "documentation": { "undocumented": true } + }, + "StoreConfigurationMutationResponse": { + "documentation": { "undocumented": true } + }, + "StoreConfigurationQueryResponse": { + "documentation": { "undocumented": true } + }, + "SubcategoryOverridesQueryResponse": { + "documentation": { "undocumented": true } + }, + "SummaryResponse": { + "documentation": { "undocumented": true } + }, + "SynonymsGroup": { + "documentation": { "undocumented": true } + }, + "SynonymsInput": { + "documentation": { "undocumented": true } + }, + "SynonymsMutationResponse": { + "documentation": { "undocumented": true } + }, + "SynonymsQueryResponse": { + "documentation": { "undocumented": true } + }, + "SynonymsType": { + "documentation": { "undocumented": true } + }, + "Timeframe": { + "documentation": { "undocumented": true } + }, + "TimeframeInput": { + "documentation": { "undocumented": true } + }, + "TrendingWindow": { + "documentation": { "undocumented": true } + }, + "UniqueSearchesResponse": { + "documentation": { "undocumented": true } + }, + "UnitPageType": { + "documentation": { "undocumented": true } + }, + "UnitResponse": { + "documentation": { "undocumented": true } + }, + "UnitStatus": { + "documentation": { "undocumented": true } + }, + "UnitType": { + "documentation": { "undocumented": true } + }, + "UpdateUnitRequest": { + "documentation": { "undocumented": true } + }, + "ZeroResultsResponse": { + "documentation": { "undocumented": true } + } + } + }, + "Query": { + "fields": { + "analytics": { + "documentation": { "undocumented": true } + }, + "catalogStorefront": { + "documentation": { "undocumented": true } + }, + "categories": { + "documentation": { "undocumented": true } + }, + "categoriesByName": { + "documentation": { "undocumented": true } + }, + "categoryRuleDetail": { + "documentation": { "undocumented": true } + }, + "categoryRules": { + "documentation": { "undocumented": true } + }, + "categoryRulesDeleteCount": { + "documentation": { "undocumented": true } + }, + "categoryTreeByPath": { + "documentation": { "undocumented": true } + }, + "defaultQueryRule": { + "documentation": { "undocumented": true } + }, + "eventing": { + "documentation": { "undocumented": true } + }, + "facetsConfiguration": { + "documentation": { "undocumented": true } + }, + "liveSearch": { + "documentation": { "undocumented": true } + }, + "pageUnits": { + "documentation": { "undocumented": true } + }, + "productAttributeMetadata": { + "documentation": { "undocumented": true } + }, + "queryRules": { + "documentation": { "undocumented": true } + }, + "recommendations": { + "documentation": { "undocumented": true } + }, + "storeConfiguration": { + "documentation": { "undocumented": true } + }, + "subcategoryOverrides": { + "documentation": { "undocumented": true } + }, + "synonyms": { + "documentation": { "undocumented": true } + }, + "unit": { + "documentation": { "undocumented": true } + }, + "units": { + "documentation": { "undocumented": true } + } + } + }, + "Mutation": { + "fields": { + "batchUnits": { + "documentation": { "undocumented": true } + }, + "categoryRule": { + "documentation": { "undocumented": true } + }, + "createUnit": { + "documentation": { "undocumented": true } + }, + "deleteCategoryRule": { + "documentation": { "undocumented": true } + }, + "deleteUnit": { + "documentation": { "undocumented": true } + }, + "facetsConfiguration": { + "documentation": { "undocumented": true } + }, + "queryRules": { + "documentation": { "undocumented": true } + }, + "storeConfiguration": { + "documentation": { "undocumented": true } + }, + "synonyms": { + "documentation": { "undocumented": true } + }, + "updateUnit": { + "documentation": { "undocumented": true } + } + } + } + } +} \ No newline at end of file diff --git a/static/graphql-api/admin-api/index.html b/static/graphql-api/admin-api/index.html index 300244f3..5f8af4f0 100644 --- a/static/graphql-api/admin-api/index.html +++ b/static/graphql-api/admin-api/index.html @@ -26,32 +26,11 @@
  • @@ -91,149 +60,22 @@
  • ActionFilterValueSource
  • ActionRequest
  • ActionResponse
  • -
  • ActionType
  • -
  • AnalyticsInput
  • -
  • AnalyticsTypes
  • BatchChannelResponse
  • BatchPolicyResponse
  • -
  • BatchUnitResponse
  • -
  • BigDecimal
  • Boolean
  • -
  • CatalogStorefront
  • -
  • CategoriesResponse
  • -
  • Category
  • -
  • CategoryRule
  • -
  • CategoryRuleDetail
  • -
  • CategoryRuleInput
  • -
  • CategoryRulesDeleteCount
  • -
  • CategoryRulesMutationResponse
  • -
  • CategoryRulesQueryResponse
  • ChannelResponse
  • ChannelScopeRequest
  • ChannelScopeResponse
  • -
  • ConditionRequest
  • -
  • ConditionResponse
  • -
  • CountFromTo
  • CreateChannelRequest
  • CreatePolicyRequest
  • -
  • CreateUnitRequest
  • -
  • CustomOperatorRequest
  • -
  • CustomOperatorResponse
  • -
  • CustomOperatorType
  • -
  • DefaultQueryRule
  • -
  • DefaultQueryRuleQueryResponse
  • -
  • Event
  • -
  • EventAction
  • -
  • EventActionInput
  • -
  • EventCounts
  • -
  • EventInput
  • -
  • EventTargetType
  • -
  • Eventing
  • -
  • FacetAggregationRange
  • -
  • FacetAggregationRangeInput
  • -
  • FacetConfigAggregationType
  • -
  • FacetConfigDisplayType
  • -
  • FacetConfigurationInput
  • -
  • FacetConfigurationResponse
  • -
  • FacetValuesSortType
  • -
  • FacetsConfigurationMutationResponse
  • -
  • FacetsConfigurationQueryResponse
  • -
  • FilterRuleRequest
  • -
  • FilterRuleResponse
  • -
  • FilterRuleType
  • -
  • Float
  • -
  • ID
  • -
  • Image
  • -
  • IndexLanguageConfiguration
  • -
  • IndexLanguageConfigurationInput
  • -
  • Int
  • -
  • IsOperatorRequest
  • -
  • IsOperatorResponse
  • -
  • IsOperatorType
  • -
  • JoinOperatorType
  • -
  • Language
  • -
  • LanguageAnalyzer
  • -
  • LanguageAnalyzerInput
  • -
  • LiveSearch
  • -
  • ManualPriceBucketConfiguration
  • -
  • ManualPriceBucketConfigurationInput
  • -
  • MetadataBooleanCondition
  • -
  • MetadataBooleanFieldFilterEnum
  • -
  • MetadataBooleanFilter
  • -
  • MetadataFilterOperatorEnum
  • -
  • Metrics
  • -
  • MultiSelectOperator
  • -
  • NumericOperatorRequest
  • -
  • NumericOperatorResponse
  • -
  • NumericOperatorType
  • -
  • OperatorRequest
  • -
  • OperatorResponse
  • PolicyResponse
  • -
  • PopularSkuResponse
  • -
  • Price
  • -
  • PriceBucketConfiguration
  • -
  • PriceBucketConfigurationInput
  • -
  • PriceBucketType
  • -
  • PriceWrapper
  • -
  • ProductAttributeMetadataQueryResponse
  • -
  • ProductAttributeMetadataResponse
  • -
  • ProductDetail
  • -
  • ProductList
  • -
  • ProductOverride
  • -
  • ProductRow
  • -
  • QueryCondition
  • -
  • QueryConditionGroup
  • -
  • QueryConditionGroupInput
  • -
  • QueryConditionInput
  • -
  • QueryConditionType
  • -
  • QueryRule
  • -
  • QueryRuleInput
  • -
  • QueryRulesMutationResponse
  • -
  • QueryRulesQueryResponse
  • -
  • RangeInput
  • -
  • RangeOperatorRequest
  • -
  • RangeOperatorResponse
  • -
  • RangeType
  • -
  • RangeValue
  • -
  • RangeValueRequest
  • -
  • RankingType
  • -
  • Recommendations
  • -
  • RuleStatusType
  • -
  • RuleType
  • Scope
  • -
  • SearchAnalyticsQueryResponse
  • -
  • SearchMerchandisingRule
  • -
  • Since
  • -
  • StoreConfiguration
  • -
  • StoreConfigurationInput
  • -
  • StoreConfigurationMutationResponse
  • -
  • StoreConfigurationQueryResponse
  • String
  • -
  • StringOperatorRequest
  • -
  • StringOperatorResponse
  • -
  • StringOperatorType
  • -
  • SubcategoryOverridesQueryResponse
  • -
  • SummaryResponse
  • -
  • SynonymsGroup
  • -
  • SynonymsInput
  • -
  • SynonymsMutationResponse
  • -
  • SynonymsQueryResponse
  • -
  • SynonymsType
  • -
  • Timeframe
  • -
  • TimeframeInput
  • TransportType
  • -
  • TrendingWindow
  • TriggerRequest
  • TriggerResponse
  • -
  • UniqueSearchesResponse
  • -
  • UnitPageType
  • -
  • UnitResponse
  • -
  • UnitStatus
  • -
  • UnitType
  • UpdateChannelRequest
  • UpdatePolicyRequest
  • -
  • UpdateUnitRequest
  • -
  • ZeroResultsResponse
  • @@ -270,15 +112,154 @@
    Version

    Queries

    -
    +

    - analytics + channel

    Description
    -

    Retrieve Live Search analytics.

    +

    Fetches a single channel by its identifier.

    +

    Parameters:

    +
      +
    • channelId: Channel identifier to filter by.
    • +
    +

    Available Channel fields to include in the query:

    +
      +
    • channelId: Channel identifier.
    • +
    • name: Channel name.
    • +
    • scopes: List of locale scopes identifiers.
    • +
    • policyIds: List of policy identifiers.
    • +
    • createdAt: Timestamp when the channel was created.
    • +
    • updatedAt: Timestamp when the channel data was last updated.
    • +
    • policies: List of Policy objects associated with the current channel.
    • +
    +

    Available Policy fields to query for:

    +
      +
    • policyId: Policy identifier.
    • +
    • name: Policy Name.
    • +
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • +
    • createdAt: Timestamp when the policy was created.
    • +
    • updatedAt: Timestamp when the policy data was last updated.
    • +
    • actions: List of actions for the policies, comprised by triggers and filters.
    • +
    +

    Available Action fields to query for:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Available Trigger fields to query for:

    +
      +
    • name: Name of the trigger.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Available Action Filters fields to query for:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Query Examples

    +
      +
    1. Using an invalid / non-existent channel identifier parameter:
    2. +
    +
    query {
    +    channel(channelId: "NON_EXISTENT_ID") {
    +        channelId
    +        name
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "errors": [
    +        {
    +            "message": "Channel [NON_EXISTENT_ID] not found for Environment [ENV_ID]",
    +            "locations": [
    +                {
    +                    "line": 2,
    +                    "column": 9
    +                }
    +            ],
    +            "path": ["channel"],
    +            "extensions": {
    +                "classification": "ValidationError"
    +            }
    +        }
    +    ],
    +    "extensions": {
    +        "request-id": "b17b7816ec286028"
    +    }
    +}
    +
    +
      +
    1. Querying only channel information:
    2. +
    +
    query {
    +    channel(channelId: "3945d84e-93d7-4dc0-b304-b6f48d91226d") {
    +        channelId
    +        name
    +        scopes {
    +          locale
    +        }
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "channel": {
    +            "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    +            "name": "Brand A",
    +            "scopes": [
    +                { "locale": "locale1" },
    +                { "locale": "locale2" }
    +            ]
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "c7b4488e0d2ba5ca"
    +    }
    +}
    +
    +
      +
    1. Querying channel with policies information:
    2. +
    +
    query {
    +    channel(channelId: "3945d84e-93d7-4dc0-b304-b6f48d91226d") {
    +        channelId
    +        name
    +        policies {
    +            policyId
    +            name
    +            mandatory
    +        }
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "channel": {
    +            "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    +            "name": "Brand A",
    +            "policies": [
    +                {
    +                    "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    +                    "name": "Policy-1",
    +                    "mandatory": false,
    +                }, ...
    +            ]
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "cdf07806c25b92aa"
    +    }
    +}
    +
    @@ -286,7 +267,7 @@
    Description
    Response
    -

    Returns a SearchAnalyticsQueryResponse +

    Returns a ChannelResponse!

    @@ -301,9 +282,10 @@
    Arguments
    - input - AnalyticsInput! + channelId - String! + + - Filter for analyics types to retrieve. @@ -315,20 +297,19 @@

    Example

    Query
    -
    query analytics($input: AnalyticsInput!) {
    -  analytics(input: $input) {
    -    popularResults {
    -      ...PopularSkuResponseFragment
    -    }
    -    summary {
    -      ...SummaryResponseFragment
    -    }
    -    uniqueSearchResults {
    -      ...UniqueSearchesResponseFragment
    +                  
    query channel($channelId: String!) {
    +  channel(channelId: $channelId) {
    +    channelId
    +    createdAt
    +    name
    +    policies {
    +      ...PolicyResponseFragment
         }
    -    zeroResults {
    -      ...ZeroResultsResponseFragment
    +    policyIds
    +    scopes {
    +      ...ChannelScopeResponseFragment
         }
    +    updatedAt
       }
     }
     
    @@ -339,7 +320,7 @@
    Query
    Variables
    -
    {"input": AnalyticsInput}
    +                  
    {"channelId": "abc123"}
     
    @@ -350,11 +331,14 @@
    Response
    {
       "data": {
    -    "analytics": {
    -      "popularResults": [PopularSkuResponse],
    -      "summary": SummaryResponse,
    -      "uniqueSearchResults": [UniqueSearchesResponse],
    -      "zeroResults": [ZeroResultsResponse]
    +    "channel": {
    +      "channelId": "abc123",
    +      "createdAt": "xyz789",
    +      "name": "abc123",
    +      "policies": [PolicyResponse],
    +      "policyIds": ["xyz789"],
    +      "scopes": [ChannelScopeResponse],
    +      "updatedAt": "abc123"
         }
       }
     }
    @@ -366,87 +350,158 @@ 
    Response
    back to top
    -
    +

    - catalogStorefront + channels

    Description
    -

    Provides data sync information for products indexed for Catalog Storefront Service

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a CatalogStorefront! -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query catalogStorefront {
    -  catalogStorefront {
    -    count
    -    countFromTo {
    -      ...CountFromToFragment
    -    }
    -    productDetail {
    -      ...ProductDetailFragment
    -    }
    -    productList {
    -      ...ProductListFragment
    +                

    Fetches an array of all channels.

    +

    Available Channel fields to include in query:

    +
      +
    • channelId: Channel identifier.
    • +
    • name: Channel name.
    • +
    • scopes: List of locale scopes identifiers.
    • +
    • policyIds: List of policy identifiers.
    • +
    • createdAt: Timestamp when the channel was created.
    • +
    • updatedAt: Timestamp when the channel data was last updated.
    • +
    • policies: List of Policy objects associated with the current channel.
    • +
    +

    Available Policy fields to query for:

    +
      +
    • policyId: Policy identifier.
    • +
    • name: Policy Name.
    • +
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • +
    • createdAt: Timestamp when the policy was created.
    • +
    • updatedAt: Timestamp when the policy data was last updated.
    • +
    • actions: List of actions for the policies, comprised by triggers and filters.
    • +
    +

    Available Action fields to query for:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Available Trigger fields to query for:

    +
      +
    • name: Name of the trigger.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Available Action Filters fields to query for:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Query Examples

    +
      +
    1. List Channels only:
    2. +
    +
    query {
    +    channels {
    +        channelId
    +        name
    +        scopes {
    +          locale
    +        }
         }
    -  }
     }
     
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "catalogStorefront": {
    -      "count": 123,
    -      "countFromTo": CountFromTo,
    -      "productDetail": ProductDetail,
    -      "productList": ProductList
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - categories -

    -
    -
    -
    -
    Description
    -

    Retrieve the Live Search categories configuration.

    +

    Response

    +
    {
    +    "data": {
    +        "channels": [
    +            {
    +                "channelId": "b3361730-03d5-4cff-a09d-a05c5f930fa7",
    +                "name": "Brand B",
    +                "scopes": [
    +                    { "locale": "locale3" },
    +                    { "locale": "locale4" }
    +                ]
    +            },
    +            {
    +                "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    +                "name": "Brand A",
    +                "scopes": [
    +                    { "locale": "locale1" },
    +                    { "locale": "locale2" }
    +                ]
    +            }, ...
    +        ]
    +    },
    +    "extensions": {
    +        "request-id": "85399873f950a5d7"
    +    }
    +}
    +
    +
      +
    1. List Channels with Policies:
    2. +
    +
    query {
    +    channels {
    +        channelId
    +        name
    +        policies {
    +            policyId
    +            name
    +            mandatory
    +            actions {
    +                filters {
    +                    attribute
    +                    value
    +                    enabled
    +                    valueSource
    +                }
    +            }
    +        }
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "channels": [
    +            {
    +                "channelId": "b3361730-03d5-4cff-a09d-a05c5f930fa7",
    +                "name": "Brand B",
    +                "policies": [
    +                    {
    +                        "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    +                        "name": "Static Value Policy",
    +                        "mandatory": false,
    +                        "actions": [
    +                            {
    +                                "filters": [
    +                                    {
    +                                        "attribute": "my_attribute",
    +                                        "value": "2",
    +                                        "enabled": true,
    +                                        "valueSource": "STATIC"
    +                                    }
    +                                ]
    +                            }
    +                        ]
    +                    }, ...
    +                ]
    +            },
    +            {
    +                "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    +                "name": "Brand A",
    +                "policies": []
    +            }
    +        ]
    +    },
    +    "extensions": {
    +        "request-id": "80efd740df9e55eb"
    +    }
    +}
    +
    @@ -454,34 +509,9 @@
    Description
    Response
    -

    Returns a CategoriesResponse +

    Returns [ChannelResponse!]

    -
    -
    Arguments
    - - - - - - - - - - - - - - - - - -
    NameDescription
    - level - RangeInput - Filter by category level.
    - parentPath - String - Filter by parent category id path.
    -

    Example

    @@ -489,31 +519,21 @@

    Example

    Query
    -
    query categories(
    -  $level: RangeInput,
    -  $parentPath: String
    -) {
    -  categories(
    -    level: $level,
    -    parentPath: $parentPath
    -  ) {
    -    categories {
    -      ...CategoryFragment
    +                  
    query channels {
    +  channels {
    +    channelId
    +    createdAt
    +    name
    +    policies {
    +      ...PolicyResponseFragment
         }
    +    policyIds
    +    scopes {
    +      ...ChannelScopeResponseFragment
    +    }
    +    updatedAt
       }
     }
    -
    - - -
    -
    -
    Variables
    - - -
    {
    -  "level": RangeInput,
    -  "parentPath": "xyz789"
    -}
     
    @@ -522,7 +542,21 @@
    Variables
    Response
    -
    {"data": {"categories": {"categories": [Category]}}}
    +                  
    {
    +  "data": {
    +    "channels": [
    +      {
    +        "channelId": "abc123",
    +        "createdAt": "abc123",
    +        "name": "xyz789",
    +        "policies": [PolicyResponse],
    +        "policyIds": ["xyz789"],
    +        "scopes": [ChannelScopeResponse],
    +        "updatedAt": "abc123"
    +      }
    +    ]
    +  }
    +}
     
    @@ -531,18 +565,94 @@
    Response
    back to top
    -
    +

    - categoriesByName + policies

    Description
    -

    Search for the Live Search categories configuration by name.

    +

    Fetches a list of policies.

    +

    Available Policy fields to query for:

    +
      +
    • policyId: Policy identifier.
    • +
    • name: Policy Name.
    • +
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • +
    • createdAt: Timestamp when the policy was created.
    • +
    • updatedAt: Timestamp when the policy data was last updated.
    • +
    • actions: List of actions for the policies, comprised by triggers and filters.
    • +
    +

    Available Action fields to query for:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Available Trigger fields to query for:

    +
      +
    • name: Name of the trigger.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Available Action Filters fields to query for:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Query Examples

    +
      +
    1. List Policies
    2. +
    +
    query {
    +    policies {
    +        policyId
    +        name
    +        mandatory
    +        actions {
    +            filters {
    +                attribute
    +                value
    +                enabled
    +                valueSource
    +            }
    +        }
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "policies": [
    +            {
    +                "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    +                "name": "Static Value Policy",
    +                "mandatory": false,
    +                "actions": [
    +                    {
    +                        "filters": [
    +                            {
    +                                "attribute": "my_attribute",
    +                                "value": "2",
    +                                "enabled": true,
    +                                "valueSource": "STATIC"
    +                            }
    +                        ]
    +                    }
    +                ]
    +            },
    +            ...
    +        ]
    +    },
    +    "extensions": {
    +        "request-id": "b9cb7fb1852ca4f0"
    +    }
    +}
    +
    @@ -550,28 +660,9 @@
    Description
    Response
    -

    Returns a CategoriesResponse +

    Returns [PolicyResponse!]

    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - name - String - The category name to search by.
    -

    Example

    @@ -579,22 +670,18 @@

    Example

    Query
    -
    query categoriesByName($name: String) {
    -  categoriesByName(name: $name) {
    -    categories {
    -      ...CategoryFragment
    -    }
    +                  
    query policies {
    +  policies {
    +    actions {
    +      ...ActionResponseFragment
    +    }
    +    createdAt
    +    mandatory
    +    name
    +    policyId
    +    updatedAt
       }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"name": "xyz789"}
    +}
     
    @@ -603,7 +690,20 @@
    Variables
    Response
    -
    {"data": {"categoriesByName": {"categories": [Category]}}}
    +                  
    {
    +  "data": {
    +    "policies": [
    +      {
    +        "actions": [ActionResponse],
    +        "createdAt": "abc123",
    +        "mandatory": false,
    +        "name": "abc123",
    +        "policyId": "xyz789",
    +        "updatedAt": "xyz789"
    +      }
    +    ]
    +  }
    +}
     
    @@ -612,18 +712,126 @@
    Response
    back to top
    -
    +

    - categoryRuleDetail + policy

    Description
    -

    Retrieve Live Search category rule details.

    +

    Fetches a single policy by its identifier.

    +

    Parameters:

    +
      +
    • policyId: Policy identifier.
    • +
    +

    Available Policy fields to query for:

    +
      +
    • policyId: Policy identifier.
    • +
    • name: Policy Name.
    • +
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • +
    • createdAt: Timestamp when the policy was created.
    • +
    • updatedAt: Timestamp when the policy data was last updated.
    • +
    • actions: List of actions for the policies, comprised by triggers and filters.
    • +
    +

    Available Action fields to query for:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Available Trigger fields to query for:

    +
      +
    • name: Name of the trigger.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Available Action Filters fields to query for:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Query Examples:

    +
      +
    1. Querying for a non-existent policy:
    2. +
    +
    query {
    +    policy(policyId: "NON_EXISTENT_ID") {
    +        policyId
    +        name
    +        mandatory
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "errors": [
    +        {
    +            "message": "Policy [NON_EXISTENT_ID] not found",
    +            "locations": [
    +                {
    +                    "line": 2,
    +                    "column": 5
    +                }
    +            ],
    +            "path": ["policy"],
    +            "extensions": {
    +                "classification": "ValidationError"
    +            }
    +        }
    +    ],
    +    "extensions": {
    +        "request-id": "d505090e43511f18"
    +    }
    +}
    +
    +
      +
    1. Querying for an existent policy:
    2. +
    +
    query {
    +    policy(policyId: "6f8b5a55-b97c-481a-94f3-5a813821c787") {
    +        policyId
    +        name
    +        mandatory
    +        actions {
    +            triggers {
    +                name
    +                transportType
    +            }
    +        }
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "policy": {
    +            "policyId": "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +            "name": "Policy-1",
    +            "mandatory": false,
    +            "actions": [
    +                {
    +                    "triggers": [
    +                        {
    +                            "name": "AC-Policy-POL1",
    +                            "transportType": "HTTP_HEADER"
    +                        },
    +                        ...
    +                    ]
    +                },
    +                ...
    +            ]
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "a2f4514b3b106663"
    +    }
    +}
    +
    @@ -631,7 +839,7 @@
    Description
    Response
    -

    Returns a CategoryRuleDetail +

    Returns a PolicyResponse!

    @@ -646,9 +854,10 @@
    Arguments
    - path - String + policyId - String! + + - Filter category rule details for a specific category ID path. @@ -660,26 +869,18 @@

    Example

    Query
    -
    query categoryRuleDetail($path: String) {
    -  categoryRuleDetail(path: $path) {
    -    applyToSubcategories
    -    categoryId
    -    categoryName
    -    children
    -    events {
    -      ...EventFragment
    +                  
    query policy($policyId: String!) {
    +  policy(policyId: $policyId) {
    +    actions {
    +      ...ActionResponseFragment
         }
    -    level
    -    parentId
    -    parentRuleId
    -    path
    -    rankingType
    -    ruleId
    -    ruleUpdated
    -    trendingWindow
    -    urlPath
    +    createdAt
    +    mandatory
    +    name
    +    policyId
    +    updatedAt
       }
    -}
    +}
     
    @@ -688,7 +889,7 @@
    Query
    Variables
    -
    {"path": "xyz789"}
    +                  
    {"policyId": "xyz789"}
     
    @@ -699,21 +900,13 @@
    Response
    {
       "data": {
    -    "categoryRuleDetail": {
    -      "applyToSubcategories": false,
    -      "categoryId": "abc123",
    -      "categoryName": "xyz789",
    -      "children": ["xyz789"],
    -      "events": [Event],
    -      "level": 123,
    -      "parentId": 987,
    -      "parentRuleId": "xyz789",
    -      "path": "abc123",
    -      "rankingType": "MOST_ADDED_TO_CART",
    -      "ruleId": "xyz789",
    -      "ruleUpdated": "abc123",
    -      "trendingWindow": "FOURTEEN",
    -      "urlPath": "xyz789"
    +    "policy": {
    +      "actions": [ActionResponse],
    +      "createdAt": "xyz789",
    +      "mandatory": true,
    +      "name": "xyz789",
    +      "policyId": "xyz789",
    +      "updatedAt": "xyz789"
         }
       }
     }
    @@ -725,20 +918,18 @@ 
    Response
    back to top
    -
    +

    - categoryRules + scopes

    Description
    -

    Retrieve Live Search category rules.

    -

    Category Merchandising allows store owners to apply Live Search Intelligent ranking rules to product categories and subcategories.

    -

    See the Live Search documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/live-search/live-search-admin/category-merch

    +

    Retrieves composable catalog scope information such as locales

    @@ -746,34 +937,9 @@
    Description
    Response
    -

    Returns a CategoryRulesQueryResponse! +

    Returns [Scope]!

    -
    -
    Arguments
    - - - - - - - - - - - - - - - - - -
    NameDescription
    - level - RangeInput - Filter category rules for the specified level or level range
    - parentPath - String - Filter category rules for the specified parent category ID path.
    -

    Example

    @@ -781,31 +947,11 @@

    Example

    Query
    -
    query categoryRules(
    -  $level: RangeInput,
    -  $parentPath: String
    -) {
    -  categoryRules(
    -    level: $level,
    -    parentPath: $parentPath
    -  ) {
    -    categoryRules {
    -      ...CategoryRuleFragment
    -    }
    +                  
    query scopes {
    +  scopes {
    +    locale
       }
     }
    -
    - - -
    -
    -
    Variables
    - - -
    {
    -  "level": RangeInput,
    -  "parentPath": "abc123"
    -}
     
    @@ -814,11 +960,7 @@
    Variables
    Response
    -
    {
    -  "data": {
    -    "categoryRules": {"categoryRules": [CategoryRule]}
    -  }
    -}
    +                  
    {"data": {"scopes": [{"locale": "abc123"}]}}
     
    @@ -827,98 +969,108 @@
    Response
    back to top
    -
    -
    - Queries -
    +

    Mutations

    +

    - categoryRulesDeleteCount + batchChannel

    Description
    -

    Retrieve count of Live Search category rules deleted.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a CategoryRulesDeleteCount -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - categoryRuleId - String - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query categoryRulesDeleteCount($categoryRuleId: String) {
    -  categoryRulesDeleteCount(categoryRuleId: $categoryRuleId) {
    -    categoryRulesDeleteCount
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"categoryRuleId": "abc123"}
    +                

    Inserts or Updates channels in a single batch operation.

    +

    Input:

    +
      +
    • channels (UpdateChannelRequest): a list of items to insert or update. If any item in the batch does not have a channelId field, a new channel will be created for that record; otherwise, it will be updated.
        +
      • channelId: Channel identifier. Optional.
      • +
      • name: Name of the channel. Optional
      • +
      • scopes: List of locale scopes identifiers. If provided, it cannot be empty.
      • +
      • policyIds: List of policy identifiers. If provided, it cannot be empty.
      • +
      +
    • +
    +

    Example

    +
    mutation {
    +    batchChannel(channels: [
    +        {
    +            channelId: "844ed921",
    +            name: "Channel Web/Online & Offline",
    +            scopes: [
    +                { locale : "en_US" },
    +                { locale : "en_UK" },
    +                { locale : "es_ES" }
    +            ]
    +        },
    +        {
    +            name: "Offline Channel",
    +            scopes: [
    +                { locale : "en_UK" },
    +                { locale : "fr_FR" }
    +            ],
    +            "policyIds": [
    +                "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    +                "a3f4e403-a720-4b27-a266-d69099ae2421"
    +            ]
    +        }
    +    ]) {
    +        channels {
    +            channelId
    +            name
    +            scopes {
    +              locale
    +            }
    +            policyIds
    +            createdAt
    +            updatedAt
    +        }
    +        errors
    +    }
    +}
     
    - - -
    -
    -
    Response
    - - -
    {"data": {"categoryRulesDeleteCount": {"categoryRulesDeleteCount": 123}}}
    +                

    Response

    +
    {
    +    "data": {
    +        "batchChannel": {
    +        "channels": [
    +            {
    +                "channelId": "e3cbe432-71a2-47cb-938f-29af8be940ab",
    +                "name": "Channel Web/Online & Offline",
    +                "scopes": [
    +                    { "locale": "en_US" },
    +                    { "locale": "en_UK" },
    +                    { "locale": "es_ES" }
    +                ],
    +                "policyIds": [
    +                    "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    +                    "a3f4e403-a720-4b27-a266-d69099ae2421"
    +                ],
    +                "createdAt": "2024-11-08T14:55:37.938",
    +                "updatedAt": "2024-11-12T11:13:22.554967"
    +            },
    +            {
    +                "channelId": "f485f368-3a5a-497b-a13e-4fff8c66df09",
    +                "name": "Offline Channel",
    +                "scopes": [
    +                    { "locale": "en_UK" },
    +                    { "locale": "fr_FR" }
    +                ],
    +                "policyIds": [
    +                    "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    +                    "a3f4e403-a720-4b27-a266-d69099ae2421"
    +                ],
    +                "createdAt": "2024-11-12T11:13:22.562566",
    +                "updatedAt": "2024-11-12T11:13:22.562566"
    +            }
    +        ],
    +        "errors": []
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "d5863f2f668d897a"
    +    }
    +}
     
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - categoryTreeByPath -

    -
    -
    -
    -
    Description
    -

    Retrieve Live Search category rules tree by path.

    +

    In the provided example, the first item, with channel identifier of '844ed921' will update the provided attributes, while the second item in the list will be created, as reflected by the 'createdAt' and 'updatedAt' attributes for the response. Please note that the response returns also an errors list, where any transaction failure will be appended to.

    @@ -926,7 +1078,7 @@
    Description
    Response
    -

    Returns a CategoryRulesQueryResponse +

    Returns a BatchChannelResponse!

    @@ -941,9 +1093,10 @@
    Arguments
    - path - String + channels - [UpdateChannelRequest!]! + + - Filter category rules for a specific category ID path to return ancestors and descendants for the specified path. @@ -955,13 +1108,14 @@

    Example

    Query
    -
    query categoryTreeByPath($path: String) {
    -  categoryTreeByPath(path: $path) {
    -    categoryRules {
    -      ...CategoryRuleFragment
    +                  
    mutation batchChannel($channels: [UpdateChannelRequest!]!) {
    +  batchChannel(channels: $channels) {
    +    channels {
    +      ...ChannelResponseFragment
         }
    +    errors
       }
    -}
    +}
     
    @@ -970,7 +1124,7 @@
    Query
    Variables
    -
    {"path": "abc123"}
    +                  
    {"channels": [UpdateChannelRequest]}
     
    @@ -981,8 +1135,9 @@
    Response
    {
       "data": {
    -    "categoryTreeByPath": {
    -      "categoryRules": [CategoryRule]
    +    "batchChannel": {
    +      "channels": [ChannelResponse],
    +      "errors": ["xyz789"]
         }
       }
     }
    @@ -994,52 +1149,39 @@ 
    Response
    back to top
    -
    +

    - channel + batchPolicy

    Description
    -

    Fetches a single channel by its identifier.

    -

    Parameters:

    -
      -
    • channelId: Channel identifier to filter by.
    • -
    -

    Available Channel fields to include in the query:

    -
      -
    • channelId: Channel identifier.
    • -
    • name: Channel name.
    • -
    • scopes: List of locale scopes identifiers.
    • -
    • policyIds: List of policy identifiers.
    • -
    • createdAt: Timestamp when the channel was created.
    • -
    • updatedAt: Timestamp when the channel data was last updated.
    • -
    • policies: List of Policy objects associated with the current channel.
    • -
    -

    Available Policy fields to query for:

    +

    Updates a batch of policies.

    +

    Input

      -
    • policyId: Policy identifier.
    • -
    • name: Policy Name.
    • -
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • -
    • createdAt: Timestamp when the policy was created.
    • -
    • updatedAt: Timestamp when the policy data was last updated.
    • -
    • actions: List of actions for the policies, comprised by triggers and filters.
    • +
    • policies (UpdatePolicyRequest). List of items to insert or update. If any item in the batch does not have a policyId field, a new policy will be created for that record; otherwise, it will be updated.
        +
      • policyId: Policy identifier. Optional.
      • +
      • name: Name of the policy. Optional.
      • +
      • mandatory: Indicates if the policy is compulsory or not (true | false). Optional.
      • +
      • actions: List of actions to update. Optional. If passed, it cannot be empty.
      • +
      +
    -

    Available Action fields to query for:

    +

    Action fields:

    • triggers: List of triggers where the policy is activated.
    • filters: List of action filters.
    -

    Available Trigger fields to query for:

    +

    Trigger fields:

      -
    • name: Name of the trigger.
    • +
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    -

    Available Action Filters fields to query for:

    +

    Action Filters fields:

    • attribute: Name of the attribute to filter by.
    • value: Value to query for.
    • @@ -1047,101 +1189,74 @@
      Description
    • valueSource: Any of "TRIGGER" , "STATIC".
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    -

    Query Examples

    +

    Caveat:

    +

    Currently, appending or removing items to the list of actions, triggers, or filters, is an all-or-nothing operation, meaning that, if the fields are included, then, whatever it is provided, will replace the current values.

    +

    Example

      -
    1. Using an invalid / non-existent channel identifier parameter:
    2. +
    3. Creates a new policy "POL18:1" and updates policy with id "39c8106d":
    -
    query {
    -    channel(channelId: "NON_EXISTENT_ID") {
    -        channelId
    -        name
    -    }
    -}
    +                
    mutation {
    +    batchPolicy(
    +        policies: [
    +            {
    +                name: "Policy-18122024"
    +                mandatory: false
    +            },
    +            {
    +                name: "Policy-1""
    +                mandatory: false
    +                actions: [{
    +                    filters: [{
    +                        attribute: "my_attribute"
    +                        value: "AC-Policy-POL1"
    +                        enabled: false
    +                        actionFilterOperator: EQUALS
    +                        valueSource: TRIGGER
    +                    }]
    +                    triggers: [{
    +                        transportType: HTTP_HEADER
    +                        name: "AC-Policy-POL1"
    +                    }]
    +                }]
    +            }
    +        ]
    +    ) {
    +        policies {
    +            policyId
    +            name
    +            mandatory
    +            createdAt
    +            updatedAt
    +        }
    +        errors
    +    }
    +}
     

    Response

    {
    -    "errors": [
    -        {
    -            "message": "Channel [NON_EXISTENT_ID] not found for Environment [ENV_ID]",
    -            "locations": [
    +    "data": {
    +        "batchPolicy": {
    +            "policies": [
                     {
    -                    "line": 2,
    -                    "column": 9
    +                    "policyId": "d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    +                    "name": "Policy-1",
    +                    "mandatory": false,
    +                    "createdAt": "2024-11-12T12:00:16.146",
    +                    "updatedAt": "2024-11-12T18:15:50.847842"
    +                },
    +                {
    +                    "policyId": "887962f7-0b0c-4836-8cd3-2087d908cd91",
    +                    "name": "Policy-2",
    +                    "mandatory": false,
    +                    "createdAt": "2024-11-12T18:15:50.855190",
    +                    "updatedAt": "2024-11-12T18:15:50.855190"
                     }
                 ],
    -            "path": ["channel"],
    -            "extensions": {
    -                "classification": "ValidationError"
    -            }
    +            "errors": []
             }
    -    ],
    +    },
         "extensions": {
    -        "request-id": "b17b7816ec286028"
    -    }
    -}
    -
    -
      -
    1. Querying only channel information:
    2. -
    -
    query {
    -    channel(channelId: "3945d84e-93d7-4dc0-b304-b6f48d91226d") {
    -        channelId
    -        name
    -        scopes {
    -          locale
    -        }
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "channel": {
    -            "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    -            "name": "Brand A",
    -            "scopes": [
    -                { "locale": "locale1" },
    -                { "locale": "locale2" }
    -            ]
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "c7b4488e0d2ba5ca"
    -    }
    -}
    -
    -
      -
    1. Querying channel with policies information:
    2. -
    -
    query {
    -    channel(channelId: "3945d84e-93d7-4dc0-b304-b6f48d91226d") {
    -        channelId
    -        name
    -        policies {
    -            policyId
    -            name
    -            mandatory
    -        }
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "channel": {
    -            "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    -            "name": "Brand A",
    -            "policies": [
    -                {
    -                    "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    -                    "name": "Policy-1",
    -                    "mandatory": false,
    -                }, ...
    -            ]
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "cdf07806c25b92aa"
    +        "request-id": "e22f7db098c31607"
         }
     }
     
    @@ -1152,7 +1267,7 @@
    Description
    Response
    -

    Returns a ChannelResponse! +

    Returns a BatchPolicyResponse!

    @@ -1167,7 +1282,7 @@
    Arguments
    - channelId - String! + policies - [UpdatePolicyRequest!]! @@ -1182,19 +1297,12 @@

    Example

    Query
    -
    query channel($channelId: String!) {
    -  channel(channelId: $channelId) {
    -    channelId
    -    createdAt
    -    name
    +                  
    mutation batchPolicy($policies: [UpdatePolicyRequest!]!) {
    +  batchPolicy(policies: $policies) {
    +    errors
         policies {
           ...PolicyResponseFragment
         }
    -    policyIds
    -    scopes {
    -      ...ChannelScopeResponseFragment
    -    }
    -    updatedAt
       }
     }
     
    @@ -1205,7 +1313,7 @@
    Query
    Variables
    -
    {"channelId": "xyz789"}
    +                  
    {"policies": [UpdatePolicyRequest]}
     
    @@ -1216,14 +1324,9 @@
    Response
    {
       "data": {
    -    "channel": {
    -      "channelId": "xyz789",
    -      "createdAt": "xyz789",
    -      "name": "xyz789",
    -      "policies": [PolicyResponse],
    -      "policyIds": ["abc123"],
    -      "scopes": [ChannelScopeResponse],
    -      "updatedAt": "xyz789"
    +    "batchPolicy": {
    +      "errors": ["abc123"],
    +      "policies": [PolicyResponse]
         }
       }
     }
    @@ -1235,155 +1338,203 @@ 
    Response
    back to top
    -
    +

    - channels + createChannel

    Description
    -

    Fetches an array of all channels.

    -

    Available Channel fields to include in query:

    -
      -
    • channelId: Channel identifier.
    • -
    • name: Channel name.
    • -
    • scopes: List of locale scopes identifiers.
    • -
    • policyIds: List of policy identifiers.
    • -
    • createdAt: Timestamp when the channel was created.
    • -
    • updatedAt: Timestamp when the channel data was last updated.
    • -
    • policies: List of Policy objects associated with the current channel.
    • -
    -

    Available Policy fields to query for:

    -
      -
    • policyId: Policy identifier.
    • -
    • name: Policy Name.
    • -
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • -
    • createdAt: Timestamp when the policy was created.
    • -
    • updatedAt: Timestamp when the policy data was last updated.
    • -
    • actions: List of actions for the policies, comprised by triggers and filters.
    • -
    -

    Available Action fields to query for:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Available Trigger fields to query for:

    -
      -
    • name: Name of the trigger.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Available Action Filters fields to query for:

    +

    Creates a new channel.

    +

    Input

      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    • +

      channelRequest (CreateChannelRequest): Channel creation information map.

      +
        +
      • name: Name of the channel. Mandatory. Needs to be unique.
      • +
      • scopes: List of locale scopes identifiers. At least one locale object should be provided.
      • +
      • policyIds: List of policy identifiers. These should be already created and available. At least one policy identifier should be provided.
      • +
      +
    -

    Query Examples

    +

    Example

      -
    1. List Channels only:
    2. +
    3. Create a new channel:
    -
    query {
    -    channels {
    +                
    mutation {
    +    createChannel(
    +        channelRequest: {
    +            name: "Channel Web/Online",
    +            scopes: [
    +                { locale: "en_US" },
    +                { locale: "en_UK" }
    +            ]
    +            policyIds : [
    +                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +                "63992079-52b5-49b2-a739-312a079c19b7",
    +            ]
    +        }
    +    ) {
             channelId
             name
             scopes {
               locale
             }
    +        policyIds
    +        createdAt
    +        updatedAt
         }
     }
     

    Response

    {
         "data": {
    -        "channels": [
    -            {
    -                "channelId": "b3361730-03d5-4cff-a09d-a05c5f930fa7",
    -                "name": "Brand B",
    -                "scopes": [
    -                    { "locale": "locale3" },
    -                    { "locale": "locale4" }
    -                ]
    -            },
    -            {
    -                "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    -                "name": "Brand A",
    -                "scopes": [
    -                    { "locale": "locale1" },
    -                    { "locale": "locale2" }
    -                ]
    -            }, ...
    -        ]
    +        "createChannel": {
    +            "channelId": "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    +            "name": "Channel Web/Online",
    +            "scopes": [
    +                { "locale" : "en_US" },
    +                { "locale" : "en_UK" }
    +            ],
    +            policyIds : [
    +                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +                "63992079-52b5-49b2-a739-312a079c19b7",
    +            ],
    +            "createdAt": "2024-11-08T14:57:24.541128",
    +            "updatedAt": "2024-11-08T14:57:24.541128"
    +        }
         },
         "extensions": {
    -        "request-id": "85399873f950a5d7"
    +        "request-id": "ea46a3e19c219068"
         }
     }
     
      -
    1. List Channels with Policies:
    2. +
    3. Create a new channel and requesting its associated policies:
    -
    query {
    -    channels {
    +                
    mutation {
    +    createChannel(
    +        channelRequest: {
    +            name: "Brand A"
    +            scopes: [
    +                { locale : "en_US"}
    +                { locale : "en_UK"}
    +            ]
    +            policyIds : [
    +                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +                "63992079-52b5-49b2-a739-312a079c19b7",
    +            ]
    +        }
    +    ) {
             channelId
             name
    +        scopes {
    +            locale
    +        }
    +        policyIds
    +        createdAt
    +        updatedAt
             policies {
                 policyId
                 name
    -            mandatory
                 actions {
    +                triggers {
    +                    transportType
    +                    name
    +                }
                     filters {
                         attribute
    +                    actionFilterOperator
                         value
                         enabled
                         valueSource
                     }
                 }
    +            mandatory
    +            createdAt
    +            updatedAt
             }
         }
     }
     
    -

    Response

    +

    Response

    {
         "data": {
    -        "channels": [
    -            {
    -                "channelId": "b3361730-03d5-4cff-a09d-a05c5f930fa7",
    -                "name": "Brand B",
    -                "policies": [
    -                    {
    -                        "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    -                        "name": "Static Value Policy",
    -                        "mandatory": false,
    -                        "actions": [
    -                            {
    -                                "filters": [
    -                                    {
    -                                        "attribute": "my_attribute",
    -                                        "value": "2",
    -                                        "enabled": true,
    -                                        "valueSource": "STATIC"
    -                                    }
    -                                ]
    -                            }
    -                        ]
    -                    }, ...
    -                ]
    -            },
    -            {
    -                "channelId": "3945d84e-93d7-4dc0-b304-b6f48d91226d",
    -                "name": "Brand A",
    -                "policies": []
    -            }
    -        ]
    +        "createChannel": {
    +            "channelId": "b4ab7a72-1556-49b4-b1ac-125902f37a0b",
    +            "name": "Brand A",
    +            "scopes": [
    +                { "locale": "en_US" },
    +                { "locale": "en_UK" }
    +            ],
    +            "policyIds": [
    +                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +                "63992079-52b5-49b2-a739-312a079c19b7"
    +            ],
    +            "createdAt": "2024-11-20T17:53:53.613",
    +            "updatedAt": "2024-11-20T17:53:53.613",
    +            "policies": [
    +                {
    +                    "policyId": "6f8b5a55-b97c-481a-94f3-5a813821c787",
    +                    "name": "Policy-1",
    +                    "actions": [
    +                        {
    +                            "triggers": [
    +                                {
    +                                    "transportType": "HTTP_HEADER",
    +                                    "name": "AC-Policy-POL1"
    +                                }
    +                            ],
    +                            "filters": [
    +                                {
    +                                    "attribute": "my_attribute",
    +                                    "actionFilterOperator": "EQUALS",
    +                                    "value": "AC-Policy-POL1",
    +                                    "enabled": true,
    +                                    "valueSource": "TRIGGER"
    +                                }
    +                            ]
    +                        }
    +                    ],
    +                    "mandatory": false,
    +                    "createdAt": "2024-11-20T14:09:57",
    +                    "updatedAt": "2024-11-20T14:09:57"
    +                },
    +                {
    +                    "policyId": "63992079-52b5-49b2-a739-312a079c19b7",
    +                    "name": "Policy-1",
    +                    "actions": [
    +                        {
    +                            "triggers": [
    +                                {
    +                                    "transportType": "HTTP_HEADER",
    +                                    "name": "AC-Policy-POL1"
    +                                }
    +                            ],
    +                            "filters": [
    +                                {
    +                                    "attribute": "my_attribute",
    +                                    "actionFilterOperator": "EQUALS",
    +                                    "value": "AC-Policy-POL1",
    +                                    "enabled": false,
    +                                    "valueSource": "STATIC"
    +                                }
    +                            ]
    +                        }
    +                    ],
    +                    "mandatory": false,
    +                    "createdAt": "2024-11-20T14:09:57",
    +                    "updatedAt": "2024-11-20T14:09:57"
    +                }
    +            ]
    +        }
         },
         "extensions": {
    -        "request-id": "80efd740df9e55eb"
    +        "request-id": "caefdeb372058548"
         }
     }
     
    @@ -1394,9 +1545,29 @@
    Description
    Response
    -

    Returns [ChannelResponse!] +

    Returns a ChannelResponse!

    +
    +
    Arguments
    + + + + + + + + + + + + + +
    NameDescription
    + channelRequest - CreateChannelRequest! + +
    +

    Example

    @@ -1404,8 +1575,8 @@

    Example

    Query
    -
    query channels {
    -  channels {
    +                  
    mutation createChannel($channelRequest: CreateChannelRequest!) {
    +  createChannel(channelRequest: $channelRequest) {
         channelId
         createdAt
         name
    @@ -1419,6 +1590,15 @@ 
    Query
    updatedAt }
    }
    +
    + + +
    +
    +
    Variables
    + + +
    {"channelRequest": CreateChannelRequest}
     
    @@ -1429,17 +1609,15 @@
    Response
    {
       "data": {
    -    "channels": [
    -      {
    -        "channelId": "abc123",
    -        "createdAt": "abc123",
    -        "name": "xyz789",
    -        "policies": [PolicyResponse],
    -        "policyIds": ["abc123"],
    -        "scopes": [ChannelScopeResponse],
    -        "updatedAt": "abc123"
    -      }
    -    ]
    +    "createChannel": {
    +      "channelId": "xyz789",
    +      "createdAt": "abc123",
    +      "name": "abc123",
    +      "policies": [PolicyResponse],
    +      "policyIds": ["xyz789"],
    +      "scopes": [ChannelScopeResponse],
    +      "updatedAt": "xyz789"
    +    }
       }
     }
     
    @@ -1450,18 +1628,129 @@
    Response
    back to top
    -
    +

    - defaultQueryRule + createPolicy

    Description
    -

    Retrieve Live Search default query rule.

    +

    Creates a new policy.

    +

    Input

    +
      +
    • +

      policyRequest (CreatePolicyRequest):

      +
        +
      • name: Name of the policy. Mandatory
      • +
      • mandatory: Indicates if the policy is compulsory or not (true | false).
      • +
      • actions: List of actions. Mandatory.
      • +
      +
    • +
    +

    Action fields:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Trigger fields:

    +
      +
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Action Filters fields:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Example

    +
    mutation {
    +    createPolicy(
    +        policyRequest: {
    +            name: "Policy-200212000",
    +            actions: [
    +                {
    +                    triggers: [
    +                        {
    +                            transportType: HTTP_HEADER,
    +                            name: "AC-Policy-POL1"
    +                        }
    +                    ],
    +                    filters: [
    +                        {
    +                            attribute: "my_attribute",
    +                            actionFilterOperator: EQUALS,
    +                            value: "AC-Policy-POL01",
    +                            enabled: true,
    +                            valueSource: TRIGGER
    +                        }
    +                    ]
    +                }
    +            ],
    +            mandatory: true
    +        }) {
    +            policyId
    +            name
    +            mandatory
    +            actions {
    +                triggers {
    +                    transportType
    +                    name
    +                }
    +                filters {
    +                    attribute
    +                    actionFilterOperator
    +                    value
    +                    enabled
    +                    valueSource
    +                }
    +            }
    +            createdAt
    +            updatedAt
    +        }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "createPolicy": {
    +            "policyId": "39c8106d-aab2-49b2-aac3-177608d4d058",
    +            "name": "Policy-1",
    +            "mandatory": true,
    +            "actions": [
    +                {
    +                    "triggers": [
    +                        {
    +                            "transportType": "HTTP_HEADER",
    +                            "name": "AC-Policy-POL01"
    +                        }
    +                    ],
    +                    "filters": [
    +                        {
    +                            "attribute": "my_attribute",
    +                            "actionFilterOperator": "EQUALS",
    +                            "value": "AC-Policy-POL01",
    +                            "enabled": true,
    +                            "valueSource": "TRIGGER"
    +                        }
    +                    ]
    +                }
    +            ],
    +            "createdAt": "2024-11-12T12:00:16.146157",
    +            "updatedAt": "2024-11-12T12:00:16.146157"
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "bbcdcbc79b5d873b"
    +    }
    +}
    +
    @@ -1469,67 +1758,28 @@
    Description
    Response
    -

    Returns a DefaultQueryRuleQueryResponse +

    Returns a PolicyResponse!

    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query defaultQueryRule {
    -  defaultQueryRule {
    -    defaultQueryRule {
    -      ...DefaultQueryRuleFragment
    -    }
    -  }
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "defaultQueryRule": {
    -      "defaultQueryRule": DefaultQueryRule
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top - -
    -
    -
    - Queries -
    -

    - eventing -

    -
    -
    -
    -
    Description
    -

    Provides storefront eventing aggregation data flow information

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns an Eventing! -

    +
    +
    Arguments
    + + + + + + + + + + + + + +
    NameDescription
    + policyRequest - CreatePolicyRequest! + +
    @@ -1538,77 +1788,27 @@

    Example

    Query
    -
    query eventing {
    -  eventing {
    -    countsByDay {
    -      ...EventCountsFragment
    -    }
    -    countsByHour {
    -      ...EventCountsFragment
    +                  
    mutation createPolicy($policyRequest: CreatePolicyRequest!) {
    +  createPolicy(policyRequest: $policyRequest) {
    +    actions {
    +      ...ActionResponseFragment
         }
    +    createdAt
    +    mandatory
    +    name
    +    policyId
    +    updatedAt
       }
     }
     
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "eventing": {
    -      "countsByDay": [EventCounts],
    -      "countsByHour": [EventCounts]
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - facetsConfiguration -

    -
    -
    -
    -
    Description
    -

    Retrieve the currently configured Live Search facets.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a FacetsConfigurationQueryResponse -

    -
    -
    -
    -

    Example

    -
    -
    Query
    +
    +
    Variables
    -
    query facetsConfiguration {
    -  facetsConfiguration {
    -    facetsConfig {
    -      ...FacetConfigurationResponseFragment
    -    }
    -  }
    -}
    +                  
    {"policyRequest": CreatePolicyRequest}
     
    @@ -1619,8 +1819,13 @@
    Response
    {
       "data": {
    -    "facetsConfiguration": {
    -      "facetsConfig": [FacetConfigurationResponse]
    +    "createPolicy": {
    +      "actions": [ActionResponse],
    +      "createdAt": "abc123",
    +      "mandatory": false,
    +      "name": "abc123",
    +      "policyId": "xyz789",
    +      "updatedAt": "xyz789"
         }
       }
     }
    @@ -1632,87 +1837,69 @@ 
    Response
    back to top
    -
    +

    - liveSearch + deleteChannel

    Description
    -

    Provides data sync information for products indexed for Live Search

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a LiveSearch! -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query liveSearch {
    -  liveSearch {
    -    count
    -    productDetail {
    -      ...ProductDetailFragment
    -    }
    -    productList {
    -      ...ProductListFragment
    -    }
    -    since {
    -      ...SinceFragment
    -    }
    -  }
    +                

    Deletes a channel by its identifier.

    +

    Input

    +
      +
    • channelId: Channel identifier. If not provided, it will return an error.
    • +
    +

    Example

    +
      +
    1. Delete an existing channel:
    2. +
    +
    mutation {
    +    deleteChannel(channelId: "11730ac6-9f52-4490-a366-0c8237239a3f")
     }
     
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "liveSearch": {
    -      "count": 123,
    -      "productDetail": ProductDetail,
    -      "productList": ProductList,
    -      "since": Since
    +                

    Response

    +
    {
    +    "data": {
    +        "deleteChannel": "11730ac6-9f52-4490-a366-0c8237239a3f"
    +    },
    +    "extensions": {
    +        "request-id": "819e07d8b8b80af9"
    +    }
    +}
    +
    +
      +
    1. Trying to delete a non-existent channel:
    2. +
    +
    mutation {
    +    deleteChannel(channelId: "11730ac6-9f52-4490-a366-0c8237239a3f")
    +}
    +
    +

    Response

    +
    {
    +    "errors": [
    +        {
    +            "message": "Channel 11730ac6-9f52-4490-a366-0c8237239a3f not found",
    +            "locations": [
    +                {
    +                "line": 2,
    +                "column": 3
    +                }
    +            ],
    +            "path": ["deleteChannel"],
    +            "extensions": {
    +                "classification": "ValidationError"
    +            }
    +        }
    +    ],
    +    "extensions": {
    +        "request-id": "98e60e98e0c8a0ff"
         }
    -  }
     }
     
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - pageUnits -

    -
    -
    -
    -
    Description
    -

    Retrieve all recommendation units for a given page type.

    @@ -1720,7 +1907,7 @@
    Description
    Response
    -

    Returns [UnitResponse!] +

    Returns a String!

    @@ -1735,7 +1922,7 @@
    Arguments
    - pageType - UnitPageType! + channelId - String! @@ -1750,26 +1937,8 @@

    Example

    Query
    -
    query pageUnits($pageType: UnitPageType!) {
    -  pageUnits(pageType: $pageType) {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    +                  
    mutation deleteChannel($channelId: String!) {
    +  deleteChannel(channelId: $channelId)
     }
     
    @@ -1779,7 +1948,7 @@
    Query
    Variables
    -
    {"pageType": "CART"}
    +                  
    {"channelId": "xyz789"}
     
    @@ -1788,27 +1957,7 @@
    Variables
    Response
    -
    {
    -  "data": {
    -    "pageUnits": [
    -      {
    -        "createdAt": "abc123",
    -        "displayNumber": 987,
    -        "displayOrder": 123,
    -        "filterRules": [FilterRuleResponse],
    -        "id": "abc123",
    -        "metrics": [Metrics],
    -        "pagePlacement": "xyz789",
    -        "pageType": "CART",
    -        "storefrontLabel": "xyz789",
    -        "unitName": "abc123",
    -        "unitStatus": "ACTIVE",
    -        "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -        "updatedAt": "abc123"
    -      }
    -    ]
    -  }
    -}
    +                  
    {"data": {"deleteChannel": "abc123"}}
     
    @@ -1817,270 +1966,64 @@
    Response
    back to top
    -
    +

    - policies + deletePolicy

    Description
    -

    Fetches a list of policies.

    -

    Available Policy fields to query for:

    +

    Deletes a given policy by its identifier.

    +

    Input

      -
    • policyId: Policy identifier.
    • -
    • name: Policy Name.
    • -
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • -
    • createdAt: Timestamp when the policy was created.
    • -
    • updatedAt: Timestamp when the policy data was last updated.
    • -
    • actions: List of actions for the policies, comprised by triggers and filters.
    • -
    -

    Available Action fields to query for:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Available Trigger fields to query for:

    -
      -
    • name: Name of the trigger.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Available Action Filters fields to query for:

    -
      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    • policyId: Policy identifier. Mandatory. If not found, an error is returned.
    -

    Query Examples

    +

    Examples

      -
    1. List Policies
    2. +
    3. Deleting an existing policy:
    -
    query {
    -    policies {
    -        policyId
    -        name
    -        mandatory
    -        actions {
    -            filters {
    -                attribute
    -                value
    -                enabled
    -                valueSource
    -            }
    -        }
    -    }
    +                
    mutation {
    +    deletePolicy(policyId: "8ac25122")
     }
     

    Response

    {
         "data": {
    -        "policies": [
    -            {
    -                "policyId": "105de4d4-8f95-4382-bf09-bac063af068d",
    -                "name": "Static Value Policy",
    -                "mandatory": false,
    -                "actions": [
    -                    {
    -                        "filters": [
    -                            {
    -                                "attribute": "my_attribute",
    -                                "value": "2",
    -                                "enabled": true,
    -                                "valueSource": "STATIC"
    -                            }
    -                        ]
    -                    }
    -                ]
    -            },
    -            ...
    -        ]
    +        "deletePolicy": "8ac25122"
         },
         "extensions": {
    -        "request-id": "b9cb7fb1852ca4f0"
    +        "request-id": "9b88d28bb67856bd"
         }
     }
     
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns [PolicyResponse!] -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query policies {
    -  policies {
    -    actions {
    -      ...ActionResponseFragment
    -    }
    -    createdAt
    -    mandatory
    -    name
    -    policyId
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "policies": [
    -      {
    -        "actions": [ActionResponse],
    -        "createdAt": "xyz789",
    -        "mandatory": true,
    -        "name": "abc123",
    -        "policyId": "xyz789",
    -        "updatedAt": "xyz789"
    -      }
    -    ]
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - policy -

    -
    -
    -
    -
    Description
    -

    Fetches a single policy by its identifier.

    -

    Parameters:

    -
      -
    • policyId: Policy identifier.
    • -
    -

    Available Policy fields to query for:

    -
      -
    • policyId: Policy identifier.
    • -
    • name: Policy Name.
    • -
    • mandatory: Indicates if the policy is compulsory or not (true | false).
    • -
    • createdAt: Timestamp when the policy was created.
    • -
    • updatedAt: Timestamp when the policy data was last updated.
    • -
    • actions: List of actions for the policies, comprised by triggers and filters.
    • -
    -

    Available Action fields to query for:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Available Trigger fields to query for:

    -
      -
    • name: Name of the trigger.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Available Action Filters fields to query for:

    -
      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • -
    -

    Query Examples:

    -
      -
    1. Querying for a non-existent policy:
    2. +
        +
      1. Deleting a missing policy. An error is returned:
      -
      query {
      -    policy(policyId: "NON_EXISTENT_ID") {
      -        policyId
      -        name
      -        mandatory
      -    }
      +                
      mutation {
      +    deletePolicy(policyId: "NON_EXISTENT_POLICY_ID")
       }
       

      Response

      {
           "errors": [
               {
      -            "message": "Policy [NON_EXISTENT_ID] not found",
      -            "locations": [
      -                {
      -                    "line": 2,
      -                    "column": 5
      -                }
      -            ],
      -            "path": ["policy"],
      +            "message": "Policy NON_EXISTENT_POLICY_ID not found",
      +            "locations": [{
      +                "line": 2,
      +                "column": 7
      +            }],
      +            "path": ["deletePolicy"],
                   "extensions": {
                       "classification": "ValidationError"
                   }
               }
           ],
           "extensions": {
      -        "request-id": "d505090e43511f18"
      -    }
      -}
      -
      -
        -
      1. Querying for an existent policy:
      2. -
      -
      query {
      -    policy(policyId: "6f8b5a55-b97c-481a-94f3-5a813821c787") {
      -        policyId
      -        name
      -        mandatory
      -        actions {
      -            triggers {
      -                name
      -                transportType
      -            }
      -        }
      -    }
      -}
      -
      -

      Response

      -
      {
      -    "data": {
      -        "policy": {
      -            "policyId": "6f8b5a55-b97c-481a-94f3-5a813821c787",
      -            "name": "Policy-1",
      -            "mandatory": false,
      -            "actions": [
      -                {
      -                    "triggers": [
      -                        {
      -                            "name": "AC-Policy-POL1",
      -                            "transportType": "HTTP_HEADER"
      -                        },
      -                        ...
      -                    ]
      -                },
      -                ...
      -            ]
      -        }
      -    },
      -    "extensions": {
      -        "request-id": "a2f4514b3b106663"
      +        "request-id": "87962a2e351180d7"
           }
       }
       
      @@ -2091,7 +2034,7 @@
      Description
      Response
      -

      Returns a PolicyResponse! +

      Returns a String!

      @@ -2121,17 +2064,8 @@

      Example

      Query
      -
      query policy($policyId: String!) {
      -  policy(policyId: $policyId) {
      -    actions {
      -      ...ActionResponseFragment
      -    }
      -    createdAt
      -    mandatory
      -    name
      -    policyId
      -    updatedAt
      -  }
      +                  
      mutation deletePolicy($policyId: String!) {
      +  deletePolicy(policyId: $policyId)
       }
       
      @@ -2141,7 +2075,7 @@
      Query
      Variables
      -
      {"policyId": "xyz789"}
      +                  
      {"policyId": "abc123"}
       
      @@ -2150,18 +2084,7 @@
      Variables
      Response
      -
      {
      -  "data": {
      -    "policy": {
      -      "actions": [ActionResponse],
      -      "createdAt": "xyz789",
      -      "mandatory": false,
      -      "name": "abc123",
      -      "policyId": "xyz789",
      -      "updatedAt": "abc123"
      -    }
      -  }
      -}
      +                  
      {"data": {"deletePolicy": "xyz789"}}
       
      @@ -2170,31 +2093,67 @@
      Response
      back to top
    -
    +

    - productAttributeMetadata + updateChannel

    Description
    -

    Retrieve the Live Search product attribute metadata configuration.

    -

    Product attribute properties (metadata) determine:

    +

    Updates data in an existing channel by its identifier.

    +

    Input:

    • -

      How an attribute can be used in the catalog.

      -
    • -
    • -

      Its appearance and behavior in the store.

      -
    • -
    • -

      The data that is included in data transfer operation.

      +

      channelRequest (UpdateChannelRequest). Channel information to update.

      +
        +
      • channelId: Channel identifier. Mandatory.
      • +
      • name: Name of the channel. Optional.
      • +
      • scopes: List of locale scopes identifiers. Optional.
      • +
      • policyIds: List of policy identifiers. Optional
      • +
    -

    For more information, see the Live Search documentation.

    +

    Caveat:

    +
    Currently, appending or removing to the list of locales or policies
    +is an all-or-nothing operation, meaning that, if the fields are included,
    +then, whatever it is provided, will replace the current values.
    +
    +

    Example

    +
      +
    1. Updating the name of a given channel:
    2. +
    +
    mutation {
    +    updateChannel(
    +        channelRequest: {
    +            channelId: "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    +            name: "Channel Web/Online/Mortar&Bricks"
    +        }) {
    +        channelId
    +        name
    +        createdAt
    +        updatedAt
    +    }
    +}
    +
    +

    Response

    +
    {
    +    "data": {
    +        "updateChannel": {
    +            "channelId": "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    +            "name": "Channel Web/Online/Mortar&Bricks",
    +            "createdAt": "2024-11-08T14:57:24.541",
    +            "updatedAt": "2024-11-08T15:22:34.168738"
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "d1d390da0b92d91a"
    +    }
    +}
    +
    @@ -2202,7 +2161,7 @@
    Description
    Response
    -

    Returns a ProductAttributeMetadataQueryResponse +

    Returns a ChannelResponse!

    @@ -2217,9 +2176,10 @@
    Arguments
    - booleanFilter - MetadataBooleanFilter + channelRequest - UpdateChannelRequest! + + - Filter by product metadata boolean configurations. @@ -2231,13 +2191,21 @@

    Example

    Query
    -
    query productAttributeMetadata($booleanFilter: MetadataBooleanFilter) {
    -  productAttributeMetadata(booleanFilter: $booleanFilter) {
    -    attributes {
    -      ...ProductAttributeMetadataResponseFragment
    +                  
    mutation updateChannel($channelRequest: UpdateChannelRequest!) {
    +  updateChannel(channelRequest: $channelRequest) {
    +    channelId
    +    createdAt
    +    name
    +    policies {
    +      ...PolicyResponseFragment
    +    }
    +    policyIds
    +    scopes {
    +      ...ChannelScopeResponseFragment
         }
    +    updatedAt
       }
    -}
    +}
     
    @@ -2246,7 +2214,7 @@
    Query
    Variables
    -
    {"booleanFilter": MetadataBooleanFilter}
    +                  
    {"channelRequest": UpdateChannelRequest}
     
    @@ -2257,8 +2225,14 @@
    Response
    {
       "data": {
    -    "productAttributeMetadata": {
    -      "attributes": [ProductAttributeMetadataResponse]
    +    "updateChannel": {
    +      "channelId": "xyz789",
    +      "createdAt": "xyz789",
    +      "name": "xyz789",
    +      "policies": [PolicyResponse],
    +      "policyIds": ["xyz789"],
    +      "scopes": [ChannelScopeResponse],
    +      "updatedAt": "abc123"
         }
       }
     }
    @@ -2270,11289 +2244,258 @@ 
    Response
    back to top
    -
    +

    - queryRules + updatePolicy

    Description
    -

    Retrieve Live Search query rules.

    -

    Search Merchandising refers to a set of rules that combine logic with actions to shape a shopper’s search experience in your store. You can use merchandising rules to boost, bury, pin, or hide products to calibrate search results in real time to support your business goals.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a QueryRulesQueryResponse -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query queryRules {
    -  queryRules {
    -    queryRules {
    -      ...QueryRuleFragment
    +                

    Updates an existent policy.

    +

    Input

    +
      +
    • policyRequest (UpdatePolicyRequest). Policy information to update.
        +
      • policyId: Policy identifier. Mandatory. If it doesn't exist, it fails with error.
      • +
      • name: Name of the policy. Optional.
      • +
      • mandatory: Indicates if the policy is compulsory or not (true | false). Optional.
      • +
      • actions: List of actions to update. Optional.
      • +
      +
    • +
    +

    Action fields:

    +
      +
    • triggers: List of triggers where the policy is activated.
    • +
    • filters: List of action filters.
    • +
    +

    Trigger fields:

    +
      +
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • +
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • +
    +

    Action Filters fields:

    +
      +
    • attribute: Name of the attribute to filter by.
    • +
    • value: Value to query for.
    • +
    • enabled: Indicates if the filter is enabled or not (true | false).
    • +
    • valueSource: Any of "TRIGGER" , "STATIC".
    • +
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • +
    +

    Caveat:

    +

    Currently, appending or removing items to the list of actions, triggers, or filters, is an all-or-nothing operation, meaning that, if the fields are included, then, whatever it is provided, will replace the current values.

    +

    Examples:

    +
      +
    1. Updating the name of a policy:
    2. +
    +
    mutation {
    +    updatePolicy( policyRequest: {
    +        policyId:"39c8106d",
    +        name: "Offline Channel (Disabled)",
    +    }) {
    +        policyId
    +        name
         }
    -  }
     }
     
    - - -
    -
    -
    Response
    - - -
    {"data": {"queryRules": {"queryRules": [QueryRule]}}}
    +                

    Response

    +
    {
    +    "data": {
    +        "updatePolicy": {
    +            "policyId": "39c8106d",
    +            "name": "Offline Channel (Disabled)"
    +        }
    +    },
    +    "extensions": {
    +        "request-id": "a0347b3b579e1acb"
    +    }
    +}
     
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - recommendations -

    -
    -
    -
    -
    Description
    -

    Provides data sync information for products indexed for Product Recommendations

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a Recommendations! -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query recommendations {
    -  recommendations {
    -    count
    -    productDetail {
    -      ...ProductDetailFragment
    -    }
    -    productList {
    -      ...ProductListFragment
    -    }
    -    since {
    -      ...SinceFragment
    +                
      +
    1. Attempting to update a missing policy. An error is returned:
    2. +
    +
    mutation {
    +    updatePolicy( policyRequest: {
    +        policyId:"NON_EXISTENT_POLICY_ID",
    +        name: "Offline Channel (Disabled)",
    +    }) {
    +        policyId
    +        name
         }
    -  }
     }
     
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "recommendations": {
    -      "count": 987,
    -      "productDetail": ProductDetail,
    -      "productList": ProductList,
    -      "since": Since
    +                

    Response

    +
    {
    +    "errors": [
    +        {
    +            "message": "Policy NON_EXISTENT_POLICY_ID not found",
    +            "locations": [
    +                {
    +                "line": 2,
    +                "column": 5
    +                }
    +            ],
    +            "path": [
    +                "updatePolicy"
    +            ],
    +            "extensions": {
    +                "classification": "ValidationError"
    +            }
    +        }
    +    ],
    +    "extensions": {
    +        "request-id": "82c39ad9e91b4620"
         }
    -  }
     }
     
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - scopes -

    -
    -
    -
    -
    Description
    -

    Retrieves composable catalog scope information such as locales

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns [Scope]! -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query scopes {
    -  scopes {
    -    locale
    -  }
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {"data": {"scopes": [{"locale": "xyz789"}]}}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - storeConfiguration -

    -
    -
    -
    -
    Description
    -

    Retrieve Live Search store configuration.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a StoreConfigurationQueryResponse -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query storeConfiguration {
    -  storeConfiguration {
    -    storeConfig {
    -      ...StoreConfigurationFragment
    -    }
    -  }
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "storeConfiguration": {
    -      "storeConfig": StoreConfiguration
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - subcategoryOverrides -

    -
    -
    -
    -
    Description
    -

    Retrieve Live Search sub-category rule overrides.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a SubcategoryOverridesQueryResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - - - - - - - - - -
    NameDescription
    - pageNumber - Int - Pagination parameter: page number. Default value is 1.
    - pageSize - Int - Pagination parameter: number of rules to return per page.
    - path - String - Filter sub-category overrides for a specific category ID path.
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query subcategoryOverrides(
    -  $pageNumber: Int,
    -  $pageSize: Int,
    -  $path: String
    -) {
    -  subcategoryOverrides(
    -    pageNumber: $pageNumber,
    -    pageSize: $pageSize,
    -    path: $path
    -  ) {
    -    categoryRules {
    -      ...CategoryRuleFragment
    -    }
    -    totalCount
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {
    -  "pageNumber": 987,
    -  "pageSize": 123,
    -  "path": "xyz789"
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "subcategoryOverrides": {
    -      "categoryRules": [CategoryRule],
    -      "totalCount": 987
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - synonyms -

    -
    -
    -
    -
    Description
    -

    Retrieve Live Search synonyms configuration.

    -

    Synonyms expand the search query to include words that shoppers might use that differ from those in your catalog.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a SynonymsQueryResponse -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query synonyms {
    -  synonyms {
    -    synonymsGroups {
    -      ...SynonymsGroupFragment
    +                
      +
    1. Updating a policy's actions list:
    2. +
    +
    mutation {
    +    updatePolicy(policyRequest: {
    +        policyId:"d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    +            actions: [{
    +                triggers: [{
    +                    transportType: HTTP_HEADER,
    +                    name: "AC-Policy-POL1"
    +                }],
    +                filters: [{
    +                    attribute: "my_attribute",
    +                    actionFilterOperator: EQUALS,
    +                    value: "AC-Policy-POL1",
    +                    enabled: true,
    +                    valueSource: TRIGGER
    +                }]
    +            }]
    +    }) {
    +        policyId
    +        name
    +        actions {
    +            triggers {
    +                transportType
    +                name
    +            }
    +            filters {
    +                attribute
    +                actionFilterOperator
    +                value
    +                enabled
    +                valueSource
    +            }
    +        }
    +        createdAt
    +        updatedAt
         }
    -  }
     }
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "synonyms": {"synonymsGroups": [SynonymsGroup]}
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - unit -

    -
    -
    -
    -
    Description
    -

    Retrieve a recommendation unit by its unit id.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a UnitResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - id - String! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query unit($id: String!) {
    -  unit(id: $id) {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"id": "abc123"}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "unit": {
    -      "createdAt": "abc123",
    -      "displayNumber": 123,
    -      "displayOrder": 123,
    -      "filterRules": [FilterRuleResponse],
    -      "id": "abc123",
    -      "metrics": [Metrics],
    -      "pagePlacement": "abc123",
    -      "pageType": "CART",
    -      "storefrontLabel": "xyz789",
    -      "unitName": "abc123",
    -      "unitStatus": "ACTIVE",
    -      "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -      "updatedAt": "abc123"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Queries -
    -

    - units -

    -
    -
    -
    -
    Description
    -

    Retrieve all recommendation units.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns [UnitResponse!] -

    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    query units {
    -  units {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "units": [
    -      {
    -        "createdAt": "xyz789",
    -        "displayNumber": 987,
    -        "displayOrder": 987,
    -        "filterRules": [FilterRuleResponse],
    -        "id": "xyz789",
    -        "metrics": [Metrics],
    -        "pagePlacement": "abc123",
    -        "pageType": "CART",
    -        "storefrontLabel": "abc123",
    -        "unitName": "xyz789",
    -        "unitStatus": "ACTIVE",
    -        "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -        "updatedAt": "xyz789"
    -      }
    -    ]
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -

    Mutations

    -
    -

    - batchChannel -

    -
    -
    -
    -
    Description
    -

    Inserts or Updates channels in a single batch operation.

    -

    Input:

    -
      -
    • channels (UpdateChannelRequest): a list of items to insert or update. If any item in the batch does not have a channelId field, a new channel will be created for that record; otherwise, it will be updated.
        -
      • channelId: Channel identifier. Optional.
      • -
      • name: Name of the channel. Optional
      • -
      • scopes: List of locale scopes identifiers. If provided, it cannot be empty.
      • -
      • policyIds: List of policy identifiers. If provided, it cannot be empty.
      • -
      -
    • -
    -

    Example

    -
    mutation {
    -    batchChannel(channels: [
    -        {
    -            channelId: "844ed921",
    -            name: "Channel Web/Online & Offline",
    -            scopes: [
    -                { locale : "en_US" },
    -                { locale : "en_UK" },
    -                { locale : "es_ES" }
    -            ]
    -        },
    -        {
    -            name: "Offline Channel",
    -            scopes: [
    -                { locale : "en_UK" },
    -                { locale : "fr_FR" }
    -            ],
    -            "policyIds": [
    -                "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    -                "a3f4e403-a720-4b27-a266-d69099ae2421"
    -            ]
    -        }
    -    ]) {
    -        channels {
    -            channelId
    -            name
    -            scopes {
    -              locale
    -            }
    -            policyIds
    -            createdAt
    -            updatedAt
    -        }
    -        errors
    -    }
    -}
     

    Response

    {
         "data": {
    -        "batchChannel": {
    -        "channels": [
    -            {
    -                "channelId": "e3cbe432-71a2-47cb-938f-29af8be940ab",
    -                "name": "Channel Web/Online & Offline",
    -                "scopes": [
    -                    { "locale": "en_US" },
    -                    { "locale": "en_UK" },
    -                    { "locale": "es_ES" }
    -                ],
    -                "policyIds": [
    -                    "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    -                    "a3f4e403-a720-4b27-a266-d69099ae2421"
    -                ],
    -                "createdAt": "2024-11-08T14:55:37.938",
    -                "updatedAt": "2024-11-12T11:13:22.554967"
    -            },
    -            {
    -                "channelId": "f485f368-3a5a-497b-a13e-4fff8c66df09",
    -                "name": "Offline Channel",
    -                "scopes": [
    -                    { "locale": "en_UK" },
    -                    { "locale": "fr_FR" }
    -                ],
    -                "policyIds": [
    -                    "c1bcfed9-4096-4068-aab5-d88f6f39cfad",
    -                    "a3f4e403-a720-4b27-a266-d69099ae2421"
    -                ],
    -                "createdAt": "2024-11-12T11:13:22.562566",
    -                "updatedAt": "2024-11-12T11:13:22.562566"
    -            }
    -        ],
    -        "errors": []
    +        "updatePolicy": {
    +            "policyId": "d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    +            "name": "Offline Channel (Disabled)",
    +            "actions": [{
    +                "triggers": [{
    +                    "transportType": "HTTP_HEADER",
    +                    "name": "AC-Policy-POL1"
    +                }],
    +                "filters": [{
    +                    "attribute": "my_attribute",
    +                    "actionFilterOperator": "EQUALS",
    +                    "value": "AC-Policy-POL1",
    +                    "enabled": true,
    +                    "valueSource": "TRIGGER"
    +                }]
    +            }],
    +            "createdAt": "2024-11-12T12:00:16.146",
    +            "updatedAt": "2024-11-12T13:40:11.171292"
             }
    -    },
    -    "extensions": {
    -        "request-id": "d5863f2f668d897a"
    -    }
    -}
    -
    -

    In the provided example, the first item, with channel identifier of '844ed921' will update the provided attributes, while the second item in the list will be created, as reflected by the 'createdAt' and 'updatedAt' attributes for the response. Please note that the response returns also an errors list, where any transaction failure will be appended to.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a BatchChannelResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - channels - [UpdateChannelRequest!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation batchChannel($channels: [UpdateChannelRequest!]!) {
    -  batchChannel(channels: $channels) {
    -    channels {
    -      ...ChannelResponseFragment
    -    }
    -    errors
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"channels": [UpdateChannelRequest]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "batchChannel": {
    -      "channels": [ChannelResponse],
    -      "errors": ["abc123"]
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - batchPolicy -

    -
    -
    -
    -
    Description
    -

    Updates a batch of policies.

    -

    Input

    -
      -
    • policies (UpdatePolicyRequest). List of items to insert or update. If any item in the batch does not have a policyId field, a new policy will be created for that record; otherwise, it will be updated.
        -
      • policyId: Policy identifier. Optional.
      • -
      • name: Name of the policy. Optional.
      • -
      • mandatory: Indicates if the policy is compulsory or not (true | false). Optional.
      • -
      • actions: List of actions to update. Optional. If passed, it cannot be empty.
      • -
      -
    • -
    -

    Action fields:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Trigger fields:

    -
      -
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Action Filters fields:

    -
      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • -
    -

    Caveat:

    -

    Currently, appending or removing items to the list of actions, triggers, or filters, is an all-or-nothing operation, meaning that, if the fields are included, then, whatever it is provided, will replace the current values.

    -

    Example

    -
      -
    1. Creates a new policy "POL18:1" and updates policy with id "39c8106d":
    2. -
    -
    mutation {
    -    batchPolicy(
    -        policies: [
    -            {
    -                name: "Policy-18122024"
    -                mandatory: false
    -            },
    -            {
    -                name: "Policy-1""
    -                mandatory: false
    -                actions: [{
    -                    filters: [{
    -                        attribute: "my_attribute"
    -                        value: "AC-Policy-POL1"
    -                        enabled: false
    -                        actionFilterOperator: EQUALS
    -                        valueSource: TRIGGER
    -                    }]
    -                    triggers: [{
    -                        transportType: HTTP_HEADER
    -                        name: "AC-Policy-POL1"
    -                    }]
    -                }]
    -            }
    -        ]
    -    ) {
    -        policies {
    -            policyId
    -            name
    -            mandatory
    -            createdAt
    -            updatedAt
    -        }
    -        errors
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "batchPolicy": {
    -            "policies": [
    -                {
    -                    "policyId": "d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    -                    "name": "Policy-1",
    -                    "mandatory": false,
    -                    "createdAt": "2024-11-12T12:00:16.146",
    -                    "updatedAt": "2024-11-12T18:15:50.847842"
    -                },
    -                {
    -                    "policyId": "887962f7-0b0c-4836-8cd3-2087d908cd91",
    -                    "name": "Policy-2",
    -                    "mandatory": false,
    -                    "createdAt": "2024-11-12T18:15:50.855190",
    -                    "updatedAt": "2024-11-12T18:15:50.855190"
    -                }
    -            ],
    -            "errors": []
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "e22f7db098c31607"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a BatchPolicyResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - policies - [UpdatePolicyRequest!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation batchPolicy($policies: [UpdatePolicyRequest!]!) {
    -  batchPolicy(policies: $policies) {
    -    errors
    -    policies {
    -      ...PolicyResponseFragment
    -    }
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"policies": [UpdatePolicyRequest]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "batchPolicy": {
    -      "errors": ["xyz789"],
    -      "policies": [PolicyResponse]
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - batchUnits -

    -
    -
    -
    -
    Description
    -

    Batch update recommendation units.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a BatchUnitResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - requests - [UpdateUnitRequest!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation batchUnits($requests: [UpdateUnitRequest!]!) {
    -  batchUnits(requests: $requests) {
    -    errors
    -    units {
    -      ...UnitResponseFragment
    -    }
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"requests": [UpdateUnitRequest]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "batchUnits": {
    -      "errors": ["xyz789"],
    -      "units": [UnitResponse]
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - categoryRule -

    -
    -
    -
    -
    Description
    -

    Create or update a Live Search category rule configuration.

    -

    Category Merchandising allows store owners to apply Live Search Intelligent ranking rules to product categories and subcategories.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a CategoryRulesMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - categoryRule - CategoryRuleInput! - The category rule configuration input value.
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation categoryRule($categoryRule: CategoryRuleInput!) {
    -  categoryRule(categoryRule: $categoryRule) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"categoryRule": CategoryRuleInput}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "categoryRule": {"message": "abc123"}
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - createChannel -

    -
    -
    -
    -
    Description
    -

    Creates a new channel.

    -

    Input

    -
      -
    • -

      channelRequest (CreateChannelRequest): Channel creation information map.

      -
        -
      • name: Name of the channel. Mandatory. Needs to be unique.
      • -
      • scopes: List of locale scopes identifiers. At least one locale object should be provided.
      • -
      • policyIds: List of policy identifiers. These should be already created and available. At least one policy identifier should be provided.
      • -
      -
    • -
    -

    Example

    -
      -
    1. Create a new channel:
    2. -
    -
    mutation {
    -    createChannel(
    -        channelRequest: {
    -            name: "Channel Web/Online",
    -            scopes: [
    -                { locale: "en_US" },
    -                { locale: "en_UK" }
    -            ]
    -            policyIds : [
    -                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    -                "63992079-52b5-49b2-a739-312a079c19b7",
    -            ]
    -        }
    -    ) {
    -        channelId
    -        name
    -        scopes {
    -          locale
    -        }
    -        policyIds
    -        createdAt
    -        updatedAt
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "createChannel": {
    -            "channelId": "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    -            "name": "Channel Web/Online",
    -            "scopes": [
    -                { "locale" : "en_US" },
    -                { "locale" : "en_UK" }
    -            ],
    -            policyIds : [
    -                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    -                "63992079-52b5-49b2-a739-312a079c19b7",
    -            ],
    -            "createdAt": "2024-11-08T14:57:24.541128",
    -            "updatedAt": "2024-11-08T14:57:24.541128"
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "ea46a3e19c219068"
    -    }
    -}
    -
    -
      -
    1. Create a new channel and requesting its associated policies:
    2. -
    -
    mutation {
    -    createChannel(
    -        channelRequest: {
    -            name: "Brand A"
    -            scopes: [
    -                { locale : "en_US"}
    -                { locale : "en_UK"}
    -            ]
    -            policyIds : [
    -                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    -                "63992079-52b5-49b2-a739-312a079c19b7",
    -            ]
    -        }
    -    ) {
    -        channelId
    -        name
    -        scopes {
    -            locale
    -        }
    -        policyIds
    -        createdAt
    -        updatedAt
    -        policies {
    -            policyId
    -            name
    -            actions {
    -                triggers {
    -                    transportType
    -                    name
    -                }
    -                filters {
    -                    attribute
    -                    actionFilterOperator
    -                    value
    -                    enabled
    -                    valueSource
    -                }
    -            }
    -            mandatory
    -            createdAt
    -            updatedAt
    -        }
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "createChannel": {
    -            "channelId": "b4ab7a72-1556-49b4-b1ac-125902f37a0b",
    -            "name": "Brand A",
    -            "scopes": [
    -                { "locale": "en_US" },
    -                { "locale": "en_UK" }
    -            ],
    -            "policyIds": [
    -                "6f8b5a55-b97c-481a-94f3-5a813821c787",
    -                "63992079-52b5-49b2-a739-312a079c19b7"
    -            ],
    -            "createdAt": "2024-11-20T17:53:53.613",
    -            "updatedAt": "2024-11-20T17:53:53.613",
    -            "policies": [
    -                {
    -                    "policyId": "6f8b5a55-b97c-481a-94f3-5a813821c787",
    -                    "name": "Policy-1",
    -                    "actions": [
    -                        {
    -                            "triggers": [
    -                                {
    -                                    "transportType": "HTTP_HEADER",
    -                                    "name": "AC-Policy-POL1"
    -                                }
    -                            ],
    -                            "filters": [
    -                                {
    -                                    "attribute": "my_attribute",
    -                                    "actionFilterOperator": "EQUALS",
    -                                    "value": "AC-Policy-POL1",
    -                                    "enabled": true,
    -                                    "valueSource": "TRIGGER"
    -                                }
    -                            ]
    -                        }
    -                    ],
    -                    "mandatory": false,
    -                    "createdAt": "2024-11-20T14:09:57",
    -                    "updatedAt": "2024-11-20T14:09:57"
    -                },
    -                {
    -                    "policyId": "63992079-52b5-49b2-a739-312a079c19b7",
    -                    "name": "Policy-1",
    -                    "actions": [
    -                        {
    -                            "triggers": [
    -                                {
    -                                    "transportType": "HTTP_HEADER",
    -                                    "name": "AC-Policy-POL1"
    -                                }
    -                            ],
    -                            "filters": [
    -                                {
    -                                    "attribute": "my_attribute",
    -                                    "actionFilterOperator": "EQUALS",
    -                                    "value": "AC-Policy-POL1",
    -                                    "enabled": false,
    -                                    "valueSource": "STATIC"
    -                                }
    -                            ]
    -                        }
    -                    ],
    -                    "mandatory": false,
    -                    "createdAt": "2024-11-20T14:09:57",
    -                    "updatedAt": "2024-11-20T14:09:57"
    -                }
    -            ]
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "caefdeb372058548"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a ChannelResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - channelRequest - CreateChannelRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation createChannel($channelRequest: CreateChannelRequest!) {
    -  createChannel(channelRequest: $channelRequest) {
    -    channelId
    -    createdAt
    -    name
    -    policies {
    -      ...PolicyResponseFragment
    -    }
    -    policyIds
    -    scopes {
    -      ...ChannelScopeResponseFragment
    -    }
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"channelRequest": CreateChannelRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "createChannel": {
    -      "channelId": "xyz789",
    -      "createdAt": "abc123",
    -      "name": "abc123",
    -      "policies": [PolicyResponse],
    -      "policyIds": ["xyz789"],
    -      "scopes": [ChannelScopeResponse],
    -      "updatedAt": "abc123"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - createPolicy -

    -
    -
    -
    -
    Description
    -

    Creates a new policy.

    -

    Input

    -
      -
    • -

      policyRequest (CreatePolicyRequest):

      -
        -
      • name: Name of the policy. Mandatory
      • -
      • mandatory: Indicates if the policy is compulsory or not (true | false).
      • -
      • actions: List of actions. Mandatory.
      • -
      -
    • -
    -

    Action fields:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Trigger fields:

    -
      -
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Action Filters fields:

    -
      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • -
    -

    Example

    -
    mutation {
    -    createPolicy(
    -        policyRequest: {
    -            name: "Policy-200212000",
    -            actions: [
    -                {
    -                    triggers: [
    -                        {
    -                            transportType: HTTP_HEADER,
    -                            name: "AC-Policy-POL1"
    -                        }
    -                    ],
    -                    filters: [
    -                        {
    -                            attribute: "my_attribute",
    -                            actionFilterOperator: EQUALS,
    -                            value: "AC-Policy-POL01",
    -                            enabled: true,
    -                            valueSource: TRIGGER
    -                        }
    -                    ]
    -                }
    -            ],
    -            mandatory: true
    -        }) {
    -            policyId
    -            name
    -            mandatory
    -            actions {
    -                triggers {
    -                    transportType
    -                    name
    -                }
    -                filters {
    -                    attribute
    -                    actionFilterOperator
    -                    value
    -                    enabled
    -                    valueSource
    -                }
    -            }
    -            createdAt
    -            updatedAt
    -        }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "createPolicy": {
    -            "policyId": "39c8106d-aab2-49b2-aac3-177608d4d058",
    -            "name": "Policy-1",
    -            "mandatory": true,
    -            "actions": [
    -                {
    -                    "triggers": [
    -                        {
    -                            "transportType": "HTTP_HEADER",
    -                            "name": "AC-Policy-POL01"
    -                        }
    -                    ],
    -                    "filters": [
    -                        {
    -                            "attribute": "my_attribute",
    -                            "actionFilterOperator": "EQUALS",
    -                            "value": "AC-Policy-POL01",
    -                            "enabled": true,
    -                            "valueSource": "TRIGGER"
    -                        }
    -                    ]
    -                }
    -            ],
    -            "createdAt": "2024-11-12T12:00:16.146157",
    -            "updatedAt": "2024-11-12T12:00:16.146157"
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "bbcdcbc79b5d873b"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a PolicyResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - policyRequest - CreatePolicyRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation createPolicy($policyRequest: CreatePolicyRequest!) {
    -  createPolicy(policyRequest: $policyRequest) {
    -    actions {
    -      ...ActionResponseFragment
    -    }
    -    createdAt
    -    mandatory
    -    name
    -    policyId
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"policyRequest": CreatePolicyRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "createPolicy": {
    -      "actions": [ActionResponse],
    -      "createdAt": "abc123",
    -      "mandatory": true,
    -      "name": "abc123",
    -      "policyId": "xyz789",
    -      "updatedAt": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - createUnit -

    -
    -
    -
    -
    Description
    -

    Create a new recommendation unit.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a UnitResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - request - CreateUnitRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation createUnit($request: CreateUnitRequest!) {
    -  createUnit(request: $request) {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"request": CreateUnitRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "createUnit": {
    -      "createdAt": "xyz789",
    -      "displayNumber": 987,
    -      "displayOrder": 987,
    -      "filterRules": [FilterRuleResponse],
    -      "id": "xyz789",
    -      "metrics": [Metrics],
    -      "pagePlacement": "xyz789",
    -      "pageType": "CART",
    -      "storefrontLabel": "abc123",
    -      "unitName": "abc123",
    -      "unitStatus": "ACTIVE",
    -      "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -      "updatedAt": "abc123"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - deleteCategoryRule -

    -
    -
    -
    -
    Description
    -

    Delete a Live Search category rule configuration.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a CategoryRulesMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - categoryId - String - The category rule ID to delete.
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation deleteCategoryRule($categoryId: String) {
    -  deleteCategoryRule(categoryId: $categoryId) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"categoryId": "abc123"}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "deleteCategoryRule": {
    -      "message": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - deleteChannel -

    -
    -
    -
    -
    Description
    -

    Deletes a channel by its identifier.

    -

    Input

    -
      -
    • channelId: Channel identifier. If not provided, it will return an error.
    • -
    -

    Example

    -
      -
    1. Delete an existing channel:
    2. -
    -
    mutation {
    -    deleteChannel(channelId: "11730ac6-9f52-4490-a366-0c8237239a3f")
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "deleteChannel": "11730ac6-9f52-4490-a366-0c8237239a3f"
    -    },
    -    "extensions": {
    -        "request-id": "819e07d8b8b80af9"
    -    }
    -}
    -
    -
      -
    1. Trying to delete a non-existent channel:
    2. -
    -
    mutation {
    -    deleteChannel(channelId: "11730ac6-9f52-4490-a366-0c8237239a3f")
    -}
    -
    -

    Response

    -
    {
    -    "errors": [
    -        {
    -            "message": "Channel 11730ac6-9f52-4490-a366-0c8237239a3f not found",
    -            "locations": [
    -                {
    -                "line": 2,
    -                "column": 3
    -                }
    -            ],
    -            "path": ["deleteChannel"],
    -            "extensions": {
    -                "classification": "ValidationError"
    -            }
    -        }
    -    ],
    -    "extensions": {
    -        "request-id": "98e60e98e0c8a0ff"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a String! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - channelId - String! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation deleteChannel($channelId: String!) {
    -  deleteChannel(channelId: $channelId)
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"channelId": "xyz789"}
    -
    - - -
    -
    -
    Response
    - - -
    {"data": {"deleteChannel": "xyz789"}}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - deletePolicy -

    -
    -
    -
    -
    Description
    -

    Deletes a given policy by its identifier.

    -

    Input

    -
      -
    • policyId: Policy identifier. Mandatory. If not found, an error is returned.
    • -
    -

    Examples

    -
      -
    1. Deleting an existing policy:
    2. -
    -
    mutation {
    -    deletePolicy(policyId: "8ac25122")
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "deletePolicy": "8ac25122"
    -    },
    -    "extensions": {
    -        "request-id": "9b88d28bb67856bd"
    -    }
    -}
    -
    -
      -
    1. Deleting a missing policy. An error is returned:
    2. -
    -
    mutation {
    -    deletePolicy(policyId: "NON_EXISTENT_POLICY_ID")
    -}
    -
    -

    Response

    -
    {
    -    "errors": [
    -        {
    -            "message": "Policy NON_EXISTENT_POLICY_ID not found",
    -            "locations": [{
    -                "line": 2,
    -                "column": 7
    -            }],
    -            "path": ["deletePolicy"],
    -            "extensions": {
    -                "classification": "ValidationError"
    -            }
    -        }
    -    ],
    -    "extensions": {
    -        "request-id": "87962a2e351180d7"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a String! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - policyId - String! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation deletePolicy($policyId: String!) {
    -  deletePolicy(policyId: $policyId)
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"policyId": "abc123"}
    -
    - - -
    -
    -
    Response
    - - -
    {"data": {"deletePolicy": "xyz789"}}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - deleteUnit -

    -
    -
    -
    -
    Description
    -

    Delete a recommendation unit.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a UnitResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - unitId - String! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation deleteUnit($unitId: String!) {
    -  deleteUnit(unitId: $unitId) {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"unitId": "abc123"}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "deleteUnit": {
    -      "createdAt": "xyz789",
    -      "displayNumber": 987,
    -      "displayOrder": 123,
    -      "filterRules": [FilterRuleResponse],
    -      "id": "xyz789",
    -      "metrics": [Metrics],
    -      "pagePlacement": "abc123",
    -      "pageType": "CART",
    -      "storefrontLabel": "xyz789",
    -      "unitName": "xyz789",
    -      "unitStatus": "ACTIVE",
    -      "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -      "updatedAt": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - facetsConfiguration -

    -
    -
    -
    -
    Description
    -

    Create or update Live Search facets.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a FacetsConfigurationMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - facetsConfig - [FacetConfigurationInput!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation facetsConfiguration($facetsConfig: [FacetConfigurationInput!]!) {
    -  facetsConfiguration(facetsConfig: $facetsConfig) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"facetsConfig": [FacetConfigurationInput]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "facetsConfiguration": {
    -      "message": "abc123"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - queryRules -

    -
    -
    -
    -
    Description
    -

    Create or update Live Search query rules.

    -

    Search Merchandising refers to a set of rules that combine logic with actions to shape a shopper’s search experience in your store. You can use merchandising rules to boost, bury, pin, or hide products to calibrate search results in real time to support your business goals.

    -

    For more information, see the Live Search documentation

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a QueryRulesMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - queryRules - [QueryRuleInput!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation queryRules($queryRules: [QueryRuleInput!]!) {
    -  queryRules(queryRules: $queryRules) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"queryRules": [QueryRuleInput]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "queryRules": {"message": "abc123"}
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - storeConfiguration -

    -
    -
    -
    -
    Description
    -

    Create or update Live Search store configuration.

    -

    After submitting an update request, it takes about fifteen minutes for the updated settings to be available in the storefront.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a StoreConfigurationMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - storeConfiguration - StoreConfigurationInput! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation storeConfiguration($storeConfiguration: StoreConfigurationInput!) {
    -  storeConfiguration(storeConfiguration: $storeConfiguration) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"storeConfiguration": StoreConfigurationInput}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "storeConfiguration": {
    -      "message": "abc123"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - synonyms -

    -
    -
    -
    -
    Description
    -

    Create or update the Live Search synonyms configuration.

    -

    Synonyms expand the search query to include words that shoppers might use that differ from those in your catalog.

    -

    For more information, see the Live Search documentation.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a SynonymsMutationResponse -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - synonyms - [SynonymsInput!]! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation synonyms($synonyms: [SynonymsInput!]!) {
    -  synonyms(synonyms: $synonyms) {
    -    message
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"synonyms": [SynonymsInput]}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "synonyms": {"message": "xyz789"}
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - updateChannel -

    -
    -
    -
    -
    Description
    -

    Updates data in an existing channel by its identifier.

    -

    Input:

    -
      -
    • -

      channelRequest (UpdateChannelRequest). Channel information to update.

      -
        -
      • channelId: Channel identifier. Mandatory.
      • -
      • name: Name of the channel. Optional.
      • -
      • scopes: List of locale scopes identifiers. Optional.
      • -
      • policyIds: List of policy identifiers. Optional
      • -
      -
    • -
    -

    Caveat:

    -
    Currently, appending or removing to the list of locales or policies
    -is an all-or-nothing operation, meaning that, if the fields are included,
    -then, whatever it is provided, will replace the current values.
    -
    -

    Example

    -
      -
    1. Updating the name of a given channel:
    2. -
    -
    mutation {
    -    updateChannel(
    -        channelRequest: {
    -            channelId: "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    -            name: "Channel Web/Online/Mortar&Bricks"
    -        }) {
    -        channelId
    -        name
    -        createdAt
    -        updatedAt
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "updateChannel": {
    -            "channelId": "1e3c0bc2-d2c8-4eff-aa7b-aa83a824825a",
    -            "name": "Channel Web/Online/Mortar&Bricks",
    -            "createdAt": "2024-11-08T14:57:24.541",
    -            "updatedAt": "2024-11-08T15:22:34.168738"
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "d1d390da0b92d91a"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a ChannelResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - channelRequest - UpdateChannelRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation updateChannel($channelRequest: UpdateChannelRequest!) {
    -  updateChannel(channelRequest: $channelRequest) {
    -    channelId
    -    createdAt
    -    name
    -    policies {
    -      ...PolicyResponseFragment
    -    }
    -    policyIds
    -    scopes {
    -      ...ChannelScopeResponseFragment
    -    }
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"channelRequest": UpdateChannelRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "updateChannel": {
    -      "channelId": "abc123",
    -      "createdAt": "xyz789",
    -      "name": "xyz789",
    -      "policies": [PolicyResponse],
    -      "policyIds": ["abc123"],
    -      "scopes": [ChannelScopeResponse],
    -      "updatedAt": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - updatePolicy -

    -
    -
    -
    -
    Description
    -

    Updates an existent policy.

    -

    Input

    -
      -
    • policyRequest (UpdatePolicyRequest). Policy information to update.
        -
      • policyId: Policy identifier. Mandatory. If it doesn't exist, it fails with error.
      • -
      • name: Name of the policy. Optional.
      • -
      • mandatory: Indicates if the policy is compulsory or not (true | false). Optional.
      • -
      • actions: List of actions to update. Optional.
      • -
      -
    • -
    -

    Action fields:

    -
      -
    • triggers: List of triggers where the policy is activated.
    • -
    • filters: List of action filters.
    • -
    -

    Trigger fields:

    -
      -
    • name: Name of the trigger. If it does not start with "AC-Policy-", an error is returned.
    • -
    • transportType: Type of transport type, currently only "HTTP_HEADER" is supported.
    • -
    -

    Action Filters fields:

    -
      -
    • attribute: Name of the attribute to filter by.
    • -
    • value: Value to query for.
    • -
    • enabled: Indicates if the filter is enabled or not (true | false).
    • -
    • valueSource: Any of "TRIGGER" , "STATIC".
    • -
    • actionFilterOperator: Any of "EQUALS", "GREATER_THAN_EQUAL", "LESS_THAN_EQUAL".
    • -
    -

    Caveat:

    -

    Currently, appending or removing items to the list of actions, triggers, or filters, is an all-or-nothing operation, meaning that, if the fields are included, then, whatever it is provided, will replace the current values.

    -

    Examples:

    -
      -
    1. Updating the name of a policy:
    2. -
    -
    mutation {
    -    updatePolicy( policyRequest: {
    -        policyId:"39c8106d",
    -        name: "Offline Channel (Disabled)",
    -    }) {
    -        policyId
    -        name
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "updatePolicy": {
    -            "policyId": "39c8106d",
    -            "name": "Offline Channel (Disabled)"
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "a0347b3b579e1acb"
    -    }
    -}
    -
    -
      -
    1. Attempting to update a missing policy. An error is returned:
    2. -
    -
    mutation {
    -    updatePolicy( policyRequest: {
    -        policyId:"NON_EXISTENT_POLICY_ID",
    -        name: "Offline Channel (Disabled)",
    -    }) {
    -        policyId
    -        name
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "errors": [
    -        {
    -            "message": "Policy NON_EXISTENT_POLICY_ID not found",
    -            "locations": [
    -                {
    -                "line": 2,
    -                "column": 5
    -                }
    -            ],
    -            "path": [
    -                "updatePolicy"
    -            ],
    -            "extensions": {
    -                "classification": "ValidationError"
    -            }
    -        }
    -    ],
    -    "extensions": {
    -        "request-id": "82c39ad9e91b4620"
    -    }
    -}
    -
    -
      -
    1. Updating a policy's actions list:
    2. -
    -
    mutation {
    -    updatePolicy(policyRequest: {
    -        policyId:"d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    -            actions: [{
    -                triggers: [{
    -                    transportType: HTTP_HEADER,
    -                    name: "AC-Policy-POL1"
    -                }],
    -                filters: [{
    -                    attribute: "my_attribute",
    -                    actionFilterOperator: EQUALS,
    -                    value: "AC-Policy-POL1",
    -                    enabled: true,
    -                    valueSource: TRIGGER
    -                }]
    -            }]
    -    }) {
    -        policyId
    -        name
    -        actions {
    -            triggers {
    -                transportType
    -                name
    -            }
    -            filters {
    -                attribute
    -                actionFilterOperator
    -                value
    -                enabled
    -                valueSource
    -            }
    -        }
    -        createdAt
    -        updatedAt
    -    }
    -}
    -
    -

    Response

    -
    {
    -    "data": {
    -        "updatePolicy": {
    -            "policyId": "d179f1b6-e2bb-4f1e-843b-c06ca828de2d",
    -            "name": "Offline Channel (Disabled)",
    -            "actions": [{
    -                "triggers": [{
    -                    "transportType": "HTTP_HEADER",
    -                    "name": "AC-Policy-POL1"
    -                }],
    -                "filters": [{
    -                    "attribute": "my_attribute",
    -                    "actionFilterOperator": "EQUALS",
    -                    "value": "AC-Policy-POL1",
    -                    "enabled": true,
    -                    "valueSource": "TRIGGER"
    -                }]
    -            }],
    -            "createdAt": "2024-11-12T12:00:16.146",
    -            "updatedAt": "2024-11-12T13:40:11.171292"
    -        }
    -    },
    -    "extensions": {
    -        "request-id": "bb8f5beda64d85cc"
    -    }
    -}
    -
    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a PolicyResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - policyRequest - UpdatePolicyRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation updatePolicy($policyRequest: UpdatePolicyRequest!) {
    -  updatePolicy(policyRequest: $policyRequest) {
    -    actions {
    -      ...ActionResponseFragment
    -    }
    -    createdAt
    -    mandatory
    -    name
    -    policyId
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"policyRequest": UpdatePolicyRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "updatePolicy": {
    -      "actions": [ActionResponse],
    -      "createdAt": "xyz789",
    -      "mandatory": true,
    -      "name": "xyz789",
    -      "policyId": "xyz789",
    -      "updatedAt": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Mutations -
    -

    - updateUnit -

    -
    -
    -
    -
    Description
    -

    Update an existing recommendation unit.

    -
    -
    -
    -
    -
    -
    -
    Response
    -

    Returns a UnitResponse! -

    -
    -
    -
    Arguments
    - - - - - - - - - - - - - -
    NameDescription
    - request - UpdateUnitRequest! - -
    -
    -
    -
    -

    Example

    -
    -
    Query
    - - -
    mutation updateUnit($request: UpdateUnitRequest!) {
    -  updateUnit(request: $request) {
    -    createdAt
    -    displayNumber
    -    displayOrder
    -    filterRules {
    -      ...FilterRuleResponseFragment
    -    }
    -    id
    -    metrics {
    -      ...MetricsFragment
    -    }
    -    pagePlacement
    -    pageType
    -    storefrontLabel
    -    unitName
    -    unitStatus
    -    unitType
    -    updatedAt
    -  }
    -}
    -
    - - -
    -
    -
    Variables
    - - -
    {"request": UpdateUnitRequest}
    -
    - - -
    -
    -
    Response
    - - -
    {
    -  "data": {
    -    "updateUnit": {
    -      "createdAt": "abc123",
    -      "displayNumber": 987,
    -      "displayOrder": 987,
    -      "filterRules": [FilterRuleResponse],
    -      "id": "xyz789",
    -      "metrics": [Metrics],
    -      "pagePlacement": "xyz789",
    -      "pageType": "CART",
    -      "storefrontLabel": "abc123",
    -      "unitName": "abc123",
    -      "unitStatus": "ACTIVE",
    -      "unitType": "ADD_TO_CART_CONVERSION_RATE",
    -      "updatedAt": "xyz789"
    -    }
    -  }
    -}
    -
    - - -
    -
    - back to top -
    -
    -

    Types

    -
    -

    ActionFilterOperator

    -
    -
    -
    -
    Description
    -

    Action filter operator.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    EQUALS

    -
    -
    -

    GREATER_THAN_EQUAL

    -
    -
    -

    LESS_THAN_EQUAL

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "EQUALS"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionFilterRequest

    -
    -
    -
    -
    Description
    -

    Request input to define an action filter in a policy insert or update operation.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - actionFilterOperator - ActionFilterOperator! - Filter comparison operator. Required.
    - attribute - String! - Attribute name to use in the filter. Required.
    - enabled - Boolean! - Indicates if the filter is enabled or not (true | false). Required.
    - value - String! - Filter attribute value. Required.
    - valueSource - ActionFilterValueSource! - -

    Indicates the location of action filter's value. Required.

    -
      -
    • If TRIGGER, then a corresponding trigger must be configured.
    • -
    • If STATIC, the value field must contain the value to apply in the action filter.
    • -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "actionFilterOperator": "EQUALS",
    -  "attribute": "abc123",
    -  "enabled": false,
    -  "value": "abc123",
    -  "valueSource": "STATIC"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionFilterResponse

    -
    -
    -
    -
    Description
    -

    Represents an action filter.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    actionFilterOperator - ActionFilterOperator - Filter comparison operator.
    attribute - String - Attribute name to use in the filter.
    enabled - Boolean - Indicates if the filter is enabled or not (true | false).
    value - String - Filter attribute value.
    valueSource - ActionFilterValueSource - Indicates the type of action filter.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "actionFilterOperator": "EQUALS",
    -  "attribute": "xyz789",
    -  "enabled": false,
    -  "value": "abc123",
    -  "valueSource": "STATIC"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionFilterValueSource

    -
    -
    -
    -
    Description
    -

    Action filter origin type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    STATIC

    -
    -
    -

    TRIGGER

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "STATIC"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionRequest

    -
    -
    -
    -
    Description
    -

    Request input for defining policy actions in an update or insert operation.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - filters - [ActionFilterRequest!] - List of action filters for the enclosing policy action item. Optional.
    - triggers - [TriggerRequest!] - List of triggers for the enclosing policy action item. Optional. If not provided, then the policy will always be applied.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "filters": [ActionFilterRequest],
    -  "triggers": [TriggerRequest]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionResponse

    -
    -
    -
    -
    Description
    -

    Represents the associated triggers and filters for a given policy.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    filters - [ActionFilterResponse!] - List of action filters for a given policy.
    triggers - [TriggerResponse!] - List of triggers for a given policy.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "filters": [ActionFilterResponse],
    -  "triggers": [TriggerResponse]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ActionType

    -
    -
    -
    -
    Description
    -

    Live Search query rule action type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    BOOST

    -
    -
    -

    BURY

    -
    -
    -

    HIDE

    -
    -
    -

    PIN

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "BOOST"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    AnalyticsInput

    -
    -
    -
    -
    Description
    -

    Live Search analytics input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - analyticsTypes - [AnalyticsTypes!]! - The analytics types to retrieve.
    - timeframeInput - TimeframeInput - The analytics time frame filter.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "analyticsTypes": ["POPULAR_RESULTS"],
    -  "timeframeInput": TimeframeInput
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    AnalyticsTypes

    -
    -
    -
    -
    Description
    -

    Live Search analytics types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    POPULAR_RESULTS

    -
    -
    -

    SUMMARY

    -
    -
    -

    UNIQUE_SEARCHES

    -
    -
    -

    ZERO_RESULTS

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "POPULAR_RESULTS"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    BatchChannelResponse

    -
    -
    -
    -
    Description
    -

    Response for batch operations (insert or update) over a channel objects list.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    channels - [ChannelResponse!] - List of channels to insert or update.
    errors - [String!] - List of errors found during the insert or update operations, if any.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "channels": [ChannelResponse],
    -  "errors": ["abc123"]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    BatchPolicyResponse

    -
    -
    -
    -
    Description
    -

    Response object for policy batch updates/inserts.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    errors - [String!] - List of errors found during the insert or update operations, if any.
    policies - [PolicyResponse!] - List of policy objects created or modified.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "errors": ["xyz789"],
    -  "policies": [PolicyResponse]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    BatchUnitResponse

    -
    -
    -
    -
    Description
    -

    Recommendation unit batch update response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    errors - [String!] - List of errors during the batch update process, if any.
    units - [UnitResponse!] - List of recommendation units updated.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "errors": ["abc123"],
    -  "units": [UnitResponse]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    BigDecimal

    -
    -
    -
    -
    Description
    -

    An arbitrary precision signed decimal

    -
    -
    -
    -
    -
    Example
    - - -
    BigDecimal
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Boolean

    -
    -
    -
    -
    Description
    -

    The Boolean scalar type represents true or false.

    -
    -
    -
    -
    -
    Example
    - - -
    true
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CatalogStorefront

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    count - Int! - Queries the Catalog Storefront Service for the count of products. This represents the number of products that are indexed and available for catalog storefront functionality.
    countFromTo - CountFromTo! - -

    Queries the Catalog Storefront Service for the number of products indexed between two given timestamps.

    -

    Parameters:

    -
      -
    • from: The start timestamp to query from (optional, if not provided will count all products up to the 'to' timestamp)
    • -
    • to: The end timestamp to query to (optional, if not provided will count all products from the 'from' timestamp)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    from - String -
    -
    -
    -
    to - String -
    -
    -
    -
    -
    productDetail - ProductDetail! - -

    Queries the Catalog Storefront Service for detailed product information for a given SKU

    -

    Parameters:

    -
      -
    • sku: The SKU of the product to retrieve (required)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    sku - String! -
    -
    -
    -
    -
    productList - ProductList! - -

    Queries the Catalog Storefront Service for a list of products indexed. This represents the list of products that are indexed and available for catalog storefront functionality. The product list is sorted by last indexed timestamp in descending order.

    -

    Parameters:

    -
      -
    • cursor: The cursor to continue a previous search (optional)
    • -
    • size: The number of products to return (optional, default: 50)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    cursor - String -
    -
    -
    -
    size - Int -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "count": 123,
    -  "countFromTo": CountFromTo,
    -  "productDetail": ProductDetail,
    -  "productList": ProductList
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoriesResponse

    -
    -
    -
    -
    Description
    -

    Live Search categories configuration query response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    categories - [Category] - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"categories": [Category]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Category

    -
    -
    -
    -
    Description
    -

    Live Search category configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    children - [String] - The category children identifiers.
    id - String! - The category identifier.
    level - Int - The category level.
    name - String - The category name.
    parentId - Int - The category parent identifier.
    path - String - The category ID path.
    urlPath - String - The category URL path.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "children": ["abc123"],
    -  "id": "xyz789",
    -  "level": 123,
    -  "name": "abc123",
    -  "parentId": 123,
    -  "path": "xyz789",
    -  "urlPath": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRule

    -
    -
    -
    -
    Description
    -

    Live Search category rule configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    applyToSubcategories - Boolean - Indicates whether the category rule applies to sub-categories.
    categoryId - String! - The category identifier.
    categoryName - String! - The category name.
    children - [String!] - The category children identifiers.
    level - Int! - The category level.
    parentId - Int! - The category parent identifier.
    parentRuleId - String - The category rule parent identifier. This value is present if a category rule is inherited from its parent category.
    path - String! - The category ID path.
    rankingType - RankingType - The category rule ranking type.
    ruleId - String - The category rule identifier.
    ruleUpdated - String - The timestamp when the category rule was last updated. The date must be in ISO date format.
    trendingWindow - TrendingWindow - The category rule trending window.
    urlPath - String! - The category URL path.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "applyToSubcategories": false,
    -  "categoryId": "abc123",
    -  "categoryName": "xyz789",
    -  "children": ["xyz789"],
    -  "level": 987,
    -  "parentId": 987,
    -  "parentRuleId": "abc123",
    -  "path": "xyz789",
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleId": "abc123",
    -  "ruleUpdated": "xyz789",
    -  "trendingWindow": "FOURTEEN",
    -  "urlPath": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRuleDetail

    -
    -
    -
    -
    Description
    -

    Live Search category rule detail configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    applyToSubcategories - Boolean - Indicates whether this category rule applies to sub-categories.
    categoryId - String! - The category identifier.
    categoryName - String! - The category name.
    children - [String!] - The category children identifiers.
    events - [Event!] - List of category rule events.
    level - Int! - The category level.
    parentId - Int! - The category parent identifier.
    parentRuleId - String - The category rule parent identifier.
    path - String! - The category ID path.
    rankingType - RankingType - The category rule ranking type.
    ruleId - String - The category rule identifier.
    ruleUpdated - String - The timestamp when the category rule was last updated. The date must be in ISO date format.
    trendingWindow - TrendingWindow - The category rule trending window.
    urlPath - String! - The category URL path.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "applyToSubcategories": true,
    -  "categoryId": "abc123",
    -  "categoryName": "abc123",
    -  "children": ["abc123"],
    -  "events": [Event],
    -  "level": 123,
    -  "parentId": 987,
    -  "parentRuleId": "xyz789",
    -  "path": "xyz789",
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleId": "xyz789",
    -  "ruleUpdated": "xyz789",
    -  "trendingWindow": "FOURTEEN",
    -  "urlPath": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRuleInput

    -
    -
    -
    -
    Description
    -

    Live Search category rule configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - applyToSubcategories - Boolean! - Indicates whether this category rule applies to sub-categories.
    - categoryId - String! - The category identifier.
    - events - [EventInput!] - List of category rule events.
    - preview - Boolean! - The category rule preview flag.
    - rankingType - RankingType! - The category rule ranking type.
    - ruleId - ID - The category rule identifier.
    - trendingWindow - TrendingWindow - The category rule trending window.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "applyToSubcategories": true,
    -  "categoryId": "xyz789",
    -  "events": [EventInput],
    -  "preview": true,
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleId": "4",
    -  "trendingWindow": "FOURTEEN"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRulesDeleteCount

    -
    -
    -
    -
    Description
    -

    Live Search category rule delete count response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    categoryRulesDeleteCount - Int - The number of category rules that were deleted.
    -
    -
    -
    -
    -
    Example
    - - -
    {"categoryRulesDeleteCount": 123}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRulesMutationResponse

    -
    -
    -
    -
    Description
    -

    Live Search category rule configuration mutation response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    message - String! - Contains the status of a category rule mutation.
    -
    -
    -
    -
    -
    Example
    - - -
    {"message": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CategoryRulesQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search category rule configuration response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    categoryRules - [CategoryRule!] - List of category rule configurations.
    -
    -
    -
    -
    -
    Example
    - - -
    {"categoryRules": [CategoryRule]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ChannelResponse

    -
    -
    -
    -
    Description
    -

    Represents a channel.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    channelId - String! - Unique identifier for the channel.
    createdAt - String - Timestamp of when the channel was created, in ISO 8601 format (e.g., 2024-07-25T16:10:11.701669).
    name - String! - Name of the channel.
    policies - [PolicyResponse] - Policies associated to each channel (joined by policyIds).
    policyIds - [String!] - List of policy identifiers associated with the channel.
    scopes - [ChannelScopeResponse!] - List of scopes associated with the channel.
    updatedAt - String - Timestamp of the last update to the channel, in ISO 8601 format (e.g., 2024-07-25T16:10:11.701669).
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "channelId": "xyz789",
    -  "createdAt": "abc123",
    -  "name": "abc123",
    -  "policies": [PolicyResponse],
    -  "policyIds": ["xyz789"],
    -  "scopes": [ChannelScopeResponse],
    -  "updatedAt": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ChannelScopeRequest

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Input FieldDescription
    - locale - String! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"locale": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ChannelScopeResponse

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    locale - String! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"locale": "abc123"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ConditionRequest

    -
    -
    -
    -
    Description
    -

    Filter rule condition input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - enabled - Boolean! - Is the filter rule condition enabled? Required (true/false).
    - field - String - The field to filter on.
    - operator - OperatorRequest - The filter rule operator.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "enabled": true,
    -  "field": "abc123",
    -  "operator": OperatorRequest
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ConditionResponse

    -
    -
    -
    -
    Description
    -

    Filter rule condition response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    enabled - Boolean! - Is the filter rule condition enabled? Required (true/false).
    field - String - The field to filter on.
    operator - OperatorResponse - The filter rule operator.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "enabled": false,
    -  "field": "xyz789",
    -  "operator": OperatorResponse
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CountFromTo

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    count - Int! - -
    from - String! - -
    to - String! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "count": 123,
    -  "from": "abc123",
    -  "to": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CreateChannelRequest

    -
    -
    -
    -
    Description
    -

    Request input for creating a channel.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - name - String! - Name of the Chanel. Mandatory.
    - policyIds - [String!] - List of policy identifiers.
    - scopes - [ChannelScopeRequest!] - List of locale identifiers.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "name": "abc123",
    -  "policyIds": ["xyz789"],
    -  "scopes": [ChannelScopeRequest]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CreatePolicyRequest

    -
    -
    -
    -
    Description
    -

    Request input for creating a policy.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - actions - [ActionRequest]! - List of policy's actions. Required, at least one item.
    - mandatory - Boolean! - Indicates if the policy is required or not (true | false). Required.
    - name - String! - Name of the policy. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "actions": [ActionRequest],
    -  "mandatory": true,
    -  "name": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CreateUnitRequest

    -
    -
    -
    -
    Description
    -

    Create recommendation unit input.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/create

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - displayNumber - Int - The number of recommendations to display in the recommendation unit.
    - displayOrder - Int - The order in which the recommendation unit will be displayed on the page.
    - filterRules - [FilterRuleRequest!] - -

    Recommendation unit filter rules. If included, it cannot be empty.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/filters

    -
    - pagePlacement - String! - -

    Recommendation unit page placement. This value determines where the recommendation unit will be displayed on the page. Required.

    -

    Options: below-main-content, above-main-content.

    -
    - pageType - UnitPageType! - Page type where the recommendation unit will be displayed. Required.
    - storefrontLabel - String - The displayed label for the recommendation unit.
    - unitName - String! - Name of the recommendation unit. Required.
    - unitStatus - UnitStatus! - The status of the recommendation unit. Required.
    - unitType - UnitType! - Recommendation unit type. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "displayNumber": 987,
    -  "displayOrder": 123,
    -  "filterRules": [FilterRuleRequest],
    -  "pagePlacement": "abc123",
    -  "pageType": "CART",
    -  "storefrontLabel": "xyz789",
    -  "unitName": "abc123",
    -  "unitStatus": "ACTIVE",
    -  "unitType": "ADD_TO_CART_CONVERSION_RATE"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CustomOperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule custom operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - type - CustomOperatorType! - Custom operator type. Required.
    - value - [String!]! - List of custom operator values. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "CUSTOM", "value": ["xyz789"]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CustomOperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule custom operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    type - CustomOperatorType! - Custom operator type.
    value - [String!]! - List of custom operator values.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "CUSTOM", "value": ["abc123"]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    CustomOperatorType

    -
    -
    -
    -
    Description
    -

    Filter rule custom operator type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    CUSTOM

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "CUSTOM"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    DefaultQueryRule

    -
    -
    -
    -
    Description
    -

    Live Search default Query Rule implementation for Search Merchandising Rule.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    description - String - Merchandising rule description.
    events - [Event!] - Merchandising rule events.
    id - ID! - Merchandising rule identifier.
    lastUpdatedAt - String! - Merchandising rule last updated timestamp in ISO date format.
    name - String! - Merchandising rule name.
    preview - Boolean! - Merchandising rule preview flag.
    rankingType - RankingType - Merchandising rule ranking type.
    ruleType - RuleType - Merchandising rule type.
    status - RuleStatusType - Merchandising rule status.
    timeframe - Timeframe - Merchandising rule time frame.
    trendingWindow - TrendingWindow - Merchandising rule trending window.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "description": "abc123",
    -  "events": [Event],
    -  "id": "4",
    -  "lastUpdatedAt": "abc123",
    -  "name": "xyz789",
    -  "preview": true,
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleType": "DEFAULT_RULE",
    -  "status": "ACTIVE",
    -  "timeframe": Timeframe,
    -  "trendingWindow": "FOURTEEN"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    DefaultQueryRuleQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search default query rule response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    defaultQueryRule - DefaultQueryRule - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"defaultQueryRule": DefaultQueryRule}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Event

    -
    -
    -
    -
    Description
    -

    Live Search query rule event.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    action - EventAction! - Event action.
    notes - String - Query rule event notes.
    targetType - EventTargetType! - Query rule event target type.
    targetValue - String! - Query rule event target value.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "action": EventAction,
    -  "notes": "xyz789",
    -  "targetType": "SKU",
    -  "targetValue": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    EventAction

    -
    -
    -
    -
    Description
    -

    Live Search query rule event action type.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    slot - Int - -
    type - ActionType! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"slot": 987, "type": "BOOST"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    EventActionInput

    -
    -
    -
    -
    Description
    -

    Live Search query rule event action input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - slot - Int - Query rule event action slot number.
    - type - ActionType! - Query rule event action type.
    -
    -
    -
    -
    -
    Example
    - - -
    {"slot": 123, "type": "BOOST"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    EventCounts

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    action - String - -
    category - String - -
    count - Int! - -
    day - String! - -
    hour - String - -
    type - String - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "action": "abc123",
    -  "category": "xyz789",
    -  "count": 123,
    -  "day": "abc123",
    -  "hour": "abc123",
    -  "type": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    EventInput

    -
    -
    -
    -
    Description
    -

    Live Search query rule event input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - action - EventActionInput! - Query rule event action.
    - notes - String - Query rule event notes.
    - targetType - EventTargetType! - Query rule event target type.
    - targetValue - String! - Query rule event target value.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "action": EventActionInput,
    -  "notes": "xyz789",
    -  "targetType": "SKU",
    -  "targetValue": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    EventTargetType

    -
    -
    -
    -
    Description
    -

    Live Search query rule event target type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    SKU

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "SKU"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Eventing

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    countsByDay - [EventCounts] - -

    Get all event counts aggregated by day for the given date range

    -

    Parameters:

    -
      -
    • from: The start timestamp to query from (required)
    • -
    • to: The end timestamp to query to (optional, defaults to current timestamp)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    from - String -
    -
    -
    -
    to - String -
    -
    -
    -
    -
    countsByHour - [EventCounts] - -

    Get event counts aggregated by hour for the given date range

    -

    Parameters:

    -
      -
    • from: The start timestamp to query from (required)
    • -
    • to: The end timestamp to query to (optional, defaults to current timestamp)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    from - String -
    -
    -
    -
    to - String -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "countsByDay": [EventCounts],
    -  "countsByHour": [EventCounts]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetAggregationRange

    -
    -
    -
    -
    Description
    -

    Live Search facet aggregation range.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    from - Float! - -
    to - Float! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"from": 987.65, "to": 123.45}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetAggregationRangeInput

    -
    -
    -
    -
    Description
    -

    Live Search facet aggregation range from/to input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - from - Float! - -
    - to - Float! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"from": 123.45, "to": 123.45}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetConfigAggregationType

    -
    -
    -
    -
    Description
    -

    Live Search facet aggregation type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    RANGE_AGGREGATION

    -
    -
    -

    TERM_AGGREGATION

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "RANGE_AGGREGATION"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetConfigDisplayType

    -
    -
    -
    -
    Description
    -

    Live Search facet display type. Determines whether a facet is always displayed, or dynamically displayed.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    ALWAYS_DISPLAYED

    -
    -
    -

    DYNAMIC_DISPLAY

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "ALWAYS_DISPLAYED"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetConfigurationInput

    -
    -
    -
    -
    Description
    -

    Live Search facet configuration input type.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - aggregationRanges - [FacetAggregationRangeInput!] - The facet aggregation ranges. Conditional: Set this value if AggregationType == RangeAggregation.
    - aggregationType - FacetConfigAggregationType! - The facet aggregation type.
    - attributeCode - String! - The product attribute code. The maximum length is 255.
    - dataType - String! - The facet data type. Consists of but not limited to: static, varchar, text, datetime, integer, decimal.
    - facetType - FacetConfigDisplayType! - The facet display type.
    - frontendInput - String - The facet frontend input type. Consists of but not limited to: text, textarea, price, select, boolean, hidden, media_image, multiline, weight, date.
    - maxValue - Int - The number of values shown within a specified facet. The default value is 10. The maximum value is 255. Default = 10
    - multiSelect - Boolean - Indicates whether the facet allows multi select. Default = false
    - multiSelectOperator - MultiSelectOperator - Only applicable if multiSelect is true. If a value is not provided, the operator defaults to an OR. If multiSelect is false, this field is ignored.
    - numeric - Boolean! - Indicates whether the attribute is numeric.
    - sortType - FacetValuesSortType - The facet sort type. Indicates how the values are sorted. Default = COUNT
    - title - String! - The facet display name. The maximum length is 255.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "aggregationRanges": [FacetAggregationRangeInput],
    -  "aggregationType": "RANGE_AGGREGATION",
    -  "attributeCode": "xyz789",
    -  "dataType": "abc123",
    -  "facetType": "ALWAYS_DISPLAYED",
    -  "frontendInput": "xyz789",
    -  "maxValue": 987,
    -  "multiSelect": false,
    -  "multiSelectOperator": "AND",
    -  "numeric": true,
    -  "sortType": "ALPHABETICAL",
    -  "title": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetConfigurationResponse

    -
    -
    -
    -
    Description
    -

    Live Search facet configuration response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    aggregationRanges - [FacetAggregationRange!] - The facet aggregation ranges. Conditional: This value is set if AggregationType == RangeAggregation.
    aggregationType - FacetConfigAggregationType! - The facet aggregation type.
    attributeCode - String! - The product attribute code.
    dataType - String! - The facet data type. Consists of but not limited to: static, varchar, text, datetime, integer, decimal.
    facetType - FacetConfigDisplayType! - The facet display type.
    frontendInput - String - The facet frontend input type. Consists of but not limited to: text, textarea, price, select, boolean, hidden, media_image, multiline, weight, date.
    maxValue - Int - The maximum number of values shown within a given facet.
    multiSelect - Boolean - Indicates whether the facet allows for multiselect.
    multiSelectOperator - MultiSelectOperator - Only applicable if multiSelect is true. If multiSelect is false, this value is null.
    numeric - Boolean - Indicates whether the attribute is numeric.
    sortType - FacetValuesSortType - The facet sort type. Indicates how the values are sorted.
    title - String! - The facet display name.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "aggregationRanges": [FacetAggregationRange],
    -  "aggregationType": "RANGE_AGGREGATION",
    -  "attributeCode": "abc123",
    -  "dataType": "abc123",
    -  "facetType": "ALWAYS_DISPLAYED",
    -  "frontendInput": "abc123",
    -  "maxValue": 987,
    -  "multiSelect": false,
    -  "multiSelectOperator": "AND",
    -  "numeric": false,
    -  "sortType": "ALPHABETICAL",
    -  "title": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetValuesSortType

    -
    -
    -
    -
    Description
    -

    Live Search facet values sort type that controls how the facet values are sorted.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    ALPHABETICAL

    -
    Sorts facet values alphabetically: A -> Z.
    -

    COUNT

    -
    Sorts facet values in descending order by number of returned products that have the specified value for the attribute in question.
    -

    CUSTOM

    -
    Commerce custom sorting: e.g. S, M, L.
    -
    -
    -
    -
    -
    Example
    - - -
    "ALPHABETICAL"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetsConfigurationMutationResponse

    -
    -
    -
    -
    Description
    -

    Live Search facet configuration mutation response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    message - String! - Contains the status of a facet mutation.
    -
    -
    -
    -
    -
    Example
    - - -
    {"message": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FacetsConfigurationQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search facet configuration retrieval response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    facetsConfig - [FacetConfigurationResponse!]! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"facetsConfig": [FacetConfigurationResponse]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FilterRuleRequest

    -
    -
    -
    -
    Description
    -

    Filter rule input.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/filters

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - conditions - [ConditionRequest!] - List of filter rule conditions. If included, it cannot be empty.
    - name - String! - The name of the filter rule. Required.
    - type - FilterRuleType! - The type of the filter rule. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "conditions": [ConditionRequest],
    -  "name": "abc123",
    -  "type": "EXCLUSION"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FilterRuleResponse

    -
    -
    -
    -
    Description
    -

    Filter rule response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    conditions - [ConditionResponse!] - List of filter rule conditions. If included, it cannot be empty.
    name - String! - The name of the filter rule. Required.
    type - FilterRuleType! - The type of the filter rule. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "conditions": [ConditionResponse],
    -  "name": "xyz789",
    -  "type": "EXCLUSION"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    FilterRuleType

    -
    -
    -
    -
    Description
    -

    Filter rule types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    EXCLUSION

    -
    -
    -

    INCLUSION

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "EXCLUSION"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Float

    -
    -
    -
    -
    Description
    -

    The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

    -
    -
    -
    -
    -
    Example
    - - -
    123.45
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ID

    -
    -
    -
    -
    Description
    -

    The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

    -
    -
    -
    -
    -
    Example
    - - -
    "4"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Image

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    label - String - -
    url - String - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "label": "abc123",
    -  "url": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    IndexLanguageConfiguration

    -
    -
    -
    -
    Description
    -

    Live Search index language configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    languageAnalyzers - [LanguageAnalyzer!]! - Language analyzers used in Live Search product indexing. The size currently limited to 1, but support for multiple languages is possible in the future.
    -
    -
    -
    -
    -
    Example
    - - -
    {"languageAnalyzers": [LanguageAnalyzer]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    IndexLanguageConfigurationInput

    -
    -
    -
    -
    Description
    -

    Live Search index language configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Input FieldDescription
    - languageAnalyzers - [LanguageAnalyzerInput!]! - Language analyzers used in Live Search product indexing. The size currently limited to 1, but support for multiple languages is possible in the future.
    -
    -
    -
    -
    -
    Example
    - - -
    {"languageAnalyzers": [LanguageAnalyzerInput]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Int

    -
    -
    -
    -
    Description
    -

    The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

    -
    -
    -
    -
    -
    Example
    - - -
    987
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    IsOperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule equality operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - type - IsOperatorType! - Equality operator type. Required.
    - value - Boolean! - Equality operator value. Required (true/false).
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "IS", "value": false}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    IsOperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule equality operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    type - IsOperatorType! - -
    value - Boolean! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "IS", "value": false}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    IsOperatorType

    -
    -
    -
    -
    Description
    -

    Filter rule is operator types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    IS

    -
    -
    -

    UNKNOWN

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "IS"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    JoinOperatorType

    -
    -
    -
    -
    Description
    -

    Live Search query rule join operator type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    AND

    -
    -
    -

    OR

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "AND"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Language

    -
    -
    -
    -
    Description
    -

    Live Search supported languages. The default value is EN (English).

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    AR

    -
    Arabic
    -

    BG

    -
    Bulgarian
    -

    BN

    -
    Bengali
    -

    CA

    -
    Catalon
    -

    CS

    -
    Czech
    -

    DA

    -
    Danish
    -

    DE

    -
    German
    -

    EL

    -
    Greek
    -

    EN

    -
    English (default)
    -

    ES

    -
    Spanish
    -

    ET

    -
    Estonian
    -

    EU

    -
    Basque
    -

    FA

    -
    Persian
    -

    FI

    -
    Finnish
    -

    FR

    -
    French
    -

    GA

    -
    Irish
    -

    GL

    -
    Galician
    -

    HI

    -
    Hindi
    -

    HU

    -
    Hungarian
    -

    HY

    -
    Armeniam
    -

    ID

    -
    Indonesian
    -

    IT

    -
    Italian
    -

    JA

    -
    Japanese
    -

    KO

    -
    Korean
    -

    KU

    -
    Sorani
    -

    LT

    -
    Lithuanian
    -

    LV

    -
    Latvian
    -

    NL

    -
    Dutch
    -

    NO

    -
    Norwegian
    -

    PL

    -
    Polish
    -

    PT

    -
    Portuguese
    -

    PT_BR

    -
    Brazilian
    -

    RO

    -
    Romanian
    -

    RU

    -
    Russian
    -

    SV

    -
    Swedish
    -

    TH

    -
    Thai
    -

    TR

    -
    Turkish
    -

    ZH_CN

    -
    Chinese (Simplified)
    -

    ZH_TW

    -
    Chinese (Traditional)
    -
    -
    -
    -
    -
    Example
    - - -
    "AR"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    LanguageAnalyzer

    -
    -
    -
    -
    Description
    -

    Live Search language analyzer configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    language - Language! - The language enum.
    -
    -
    -
    -
    -
    Example
    - - -
    {"language": "AR"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    LanguageAnalyzerInput

    -
    -
    -
    -
    Description
    -

    Live Search language analyzer configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Input FieldDescription
    - language - Language! - -

    Language analyzers used in Live Search product indexing.

    -

    The size is currently limited to 1, but support for multiple languages is possible in the future.

    -
    -
    -
    -
    -
    -
    Example
    - - -
    {"language": "AR"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    LiveSearch

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    count - Int! - Queries the Live Search data store for the count of products. This represents the number of products that are indexed and available for Live Search.
    productDetail - ProductDetail - -

    Queries the Live Search data store for detailed product information for a given SKU.

    -

    Parameters:

    -
      -
    • sku: The SKU of the product to retrieve (required)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    sku - String! -
    -
    -
    -
    -
    productList - ProductList! - -

    Queries the Live Search data store for a list of products indexed. This represents the list of products that are indexed and available for Live Search. The product list is sorted by last indexed timestamp in descending order.

    -

    Parameters:

    -
      -
    • searchTerm: The search term to filter the product list by (optional)
    • -
    • scrollId: The scroll ID to continue a previous search (optional)
    • -
    • size: The number of products to return (optional, default: 50)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    scrollId - String -
    -
    -
    -
    searchTerm - String -
    -
    -
    -
    size - Int -
    -
    -
    -
    -
    since - Since! - -

    Queries the Live Search data store for the number of products indexed since a given datetime.

    -

    Parameters:

    -
      -
    • datetime: The start datetime to query from (required)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    datetime - String! -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "count": 987,
    -  "productDetail": ProductDetail,
    -  "productList": ProductList,
    -  "since": Since
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ManualPriceBucketConfiguration

    -
    -
    -
    -
    Description
    -

    Live Search price bucket implementation for manual price buckets.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    interval - Int! - The price bucket range interval. The maximum value is 40,000,000.
    numSelections - Int! - The number of price bucket selections. Up to 50 price groupings can be defined.
    -
    -
    -
    -
    -
    Example
    - - -
    {"interval": 123, "numSelections": 987}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ManualPriceBucketConfigurationInput

    -
    -
    -
    -
    Description
    -

    Live Search manual price bucket configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - interval - Int! - The price bucket range interval.
    - numSelections - Int! - The number of price bucket selections.
    -
    -
    -
    -
    -
    Example
    - - -
    {"interval": 987, "numSelections": 987}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    MetadataBooleanCondition

    -
    -
    -
    -
    Description
    -

    Live Search metadata boolean condition configuration input value.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - filterField - MetadataBooleanFieldFilterEnum! - The product metadata filter condition field.
    - value - Boolean! - The product metadata filter condition value.
    -
    -
    -
    -
    -
    Example
    - - -
    {"filterField": "FILTERABLE", "value": false}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    MetadataBooleanFieldFilterEnum

    -
    -
    -
    -
    Description
    -

    Live Search product attribute metadata field filter type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    FILTERABLE

    -
    -
    -

    FILTERABLE_IN_SEARCH

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "FILTERABLE"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    MetadataBooleanFilter

    -
    -
    -
    -
    Description
    -

    Live Search metadata boolean filter configuration input value.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - conditions - [MetadataBooleanCondition!] - The product metadata boolean filter conditions.
    - operator - MetadataFilterOperatorEnum - The product metadata filter operator type. The default value is OR. Default = OR
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "conditions": [MetadataBooleanCondition],
    -  "operator": "AND"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    MetadataFilterOperatorEnum

    -
    -
    -
    -
    Description
    -

    Live Search product metadata filter operation type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    AND

    -
    -
    -

    OR

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "AND"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Metrics

    -
    -
    -
    -
    Description
    -

    Recommendation unit performance metrics response.

    -

    See Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/workspace#column-descriptions

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    clickThroughRate - Float - The percentage of unit impressions for the recommendation that register a click. CTR counts all impressions even if the unit does not enter the shopper’s view. If the recommendation unit is not viewed, it is unlikely to get clicked. However, those unseen impressions count toward the CTR score and reduce the overall CTR percentage.
    clicks - Int - The sum of the number of times a shopper clicks an item in the recommendation unit and the number of times the shopper clicks the Add to cart button in the recommendation unit.
    impressions - Int - The number of times a recommendation unit is loaded and rendered on a page. A recommendation unit that is below the fold of the browser’s viewport is rendered on the page, even if it is not viewed by the shopper. In this case, the rendered unit is counted as an impression, but a view is counted only if the shopper scrolls the unit into view.
    lifetimeRevenue - Float - The lifetime revenue driven by a recommendation.
    period - Int - The time period of the recommendation unit metrics. Options: 1, 7, or 30 days.
    revenue - Float - The revenue driven by the recommendation for the current period.
    unitId - String - The recommendation unit id.
    viewability - Float - The percentage of recommendation units that register for the view.
    viewableClickThroughRate - Float - Viewable Click-Through Rate measures clicks based only on viewable impressions (recommendations that actually appeared in the visible part of the shopper’s screen), providing a more accurate gauge of shopper engagement.
    viewableImpressions - Int - The number of recommendation units that register at least one view. For example, if the recommendation unit has two lines, each with two products, and the last two products are not seen by the shopper but the first two are, the activity will still count as an impression.
    views - Int - The number of recommendation units that appear in the viewport of the shopper’s browser. If the shopper scrolls the page up or down several times, the event fires multiple times, each time the unit is viewable.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "clickThroughRate": 987.65,
    -  "clicks": 123,
    -  "impressions": 987,
    -  "lifetimeRevenue": 123.45,
    -  "period": 987,
    -  "revenue": 123.45,
    -  "unitId": "xyz789",
    -  "viewability": 987.65,
    -  "viewableClickThroughRate": 987.65,
    -  "viewableImpressions": 987,
    -  "views": 987
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    MultiSelectOperator

    -
    -
    -
    -
    Description
    -

    Live Search facet multiselect operator.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    AND

    -
    -
    -

    OR

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "AND"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    NumericOperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule numeric operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Input FieldDescription
    - type - NumericOperatorType! - Numeric operator type. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "GREATER_THAN_CURRENT"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    NumericOperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule numeric operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    type - NumericOperatorType! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "GREATER_THAN_CURRENT"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    NumericOperatorType

    -
    -
    -
    -
    Description
    -

    Filter rule numeric operator types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    GREATER_THAN_CURRENT

    -
    -
    -

    LESS_THAN_CURRENT

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "GREATER_THAN_CURRENT"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    OperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - customOperator - CustomOperatorRequest - Filter rule custom operator.
    - isOperator - IsOperatorRequest - Filter rule equality operator.
    - numericOperator - NumericOperatorRequest - Filter rule numeric operator.
    - rangeOperator - RangeOperatorRequest - Filter rule range operator.
    - stringOperator - StringOperatorRequest - Filter rule string operator.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "customOperator": CustomOperatorRequest,
    -  "isOperator": IsOperatorRequest,
    -  "numericOperator": NumericOperatorRequest,
    -  "rangeOperator": RangeOperatorRequest,
    -  "stringOperator": StringOperatorRequest
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    OperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    customOperator - CustomOperatorResponse - Filter rule custom operator.
    isOperator - IsOperatorResponse - Filter rule equality operator.
    numericOperator - NumericOperatorResponse - Filter rule numeric operator.
    rangeOperator - RangeOperatorResponse - Filter rule range operator.
    stringOperator - StringOperatorResponse - Filter rule string operator.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "customOperator": CustomOperatorResponse,
    -  "isOperator": IsOperatorResponse,
    -  "numericOperator": NumericOperatorResponse,
    -  "rangeOperator": RangeOperatorResponse,
    -  "stringOperator": StringOperatorResponse
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PolicyResponse

    -
    -
    -
    -
    Description
    -

    Represents a policy.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    actions - [ActionResponse!] - List of actions associated to the policy.
    createdAt - String - Record creation timestamp.
    mandatory - Boolean - Indicates if the policy is required or not (true | false).
    name - String - Policy name.
    policyId - String - Policy identifier.
    updatedAt - String - Record's latest update timestamp.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "actions": [ActionResponse],
    -  "createdAt": "abc123",
    -  "mandatory": true,
    -  "name": "abc123",
    -  "policyId": "xyz789",
    -  "updatedAt": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PopularSkuResponse

    -
    -
    -
    -
    Description
    -

    Live Search popular SKU response analytics.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    imageUrl - String - The product's image URL.
    impressions - Int - The number of impressions from this product's search results.
    productName - String - The product name.
    revenue - Float - The revenue generated by Live Search via this product's searches.
    topSku - String - The product's top level SKU.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "imageUrl": "abc123",
    -  "impressions": 123,
    -  "productName": "abc123",
    -  "revenue": 987.65,
    -  "topSku": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Price

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    finalPrice - BigDecimal - -
    regularPrice - BigDecimal - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "finalPrice": BigDecimal,
    -  "regularPrice": BigDecimal
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PriceBucketConfiguration

    -
    -
    -
    -
    Description
    -

    Live Search price bucket configuration.

    -

    Only manual price configurations are supported, but in the future we may have multiple automatic price configurations, for example auto equalize count and equalize price range.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    numSelections - Int! - The number of price bucket selections. Up to 50 price groupings can be defined.
    -
    -
    -
    Possible Types
    - - - - - - - - - - - -
    PriceBucketConfiguration Types
    -

    ManualPriceBucketConfiguration

    -
    -
    -
    -
    -
    -
    Example
    - - -
    {"numSelections": 123}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PriceBucketConfigurationInput

    -
    -
    -
    -
    Description
    -

    Live Search price bucket configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - manualPriceBucketConfiguration - ManualPriceBucketConfigurationInput - The manual price bucket configuration.
    - priceBucketType - PriceBucketType! - The price bucket type.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "manualPriceBucketConfiguration": ManualPriceBucketConfigurationInput,
    -  "priceBucketType": "MANUAL"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PriceBucketType

    -
    -
    -
    -
    Description
    -

    Live Search price bucket configuration type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    MANUAL

    -
    -
    -

    NOT_CONFIGURED

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "MANUAL"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    PriceWrapper

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    maximum - Price - -
    minimum - Price - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"maximum": Price, "minimum": Price}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductAttributeMetadataQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search product attribute metadata configuration response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    attributes - [ProductAttributeMetadataResponse!]! - The list of product attributes metadata.
    -
    -
    -
    -
    -
    Example
    - - -
    {"attributes": [ProductAttributeMetadataResponse]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductAttributeMetadataResponse

    -
    -
    -
    -
    Description
    -

    Live Search product attribute metadata configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    attributeCode - String - The product attribute code.
    dataType - String - The product attribute data type. Consists of but not limited to: static, varchar, text, datetime, integer, decimal.
    deleted - Boolean - Indicates whether the product attribute is marked for deletion.
    filterable - Boolean - Indicates whether the product attribute is filterable in layered navigation.
    filterableInSearch - Boolean - Indicates whether the product attribute can be filtered in search.
    frontendInput - String - The product attribute's frontend input type. Consists of but not limited to: text, textarea, price, select, boolean, hidden, media_image, multiline, weight, date.
    global - Boolean - Indicates whether the product attribute is global.
    label - String - The product attribute label.
    multiSelect - Boolean - Indicates whether the facet allows multiselect.
    numeric - Boolean - Indicates whether the product attribute is a numeric data type.
    required - Boolean - Indicates the product attribute required?
    searchWeight - Float - The product's search weight.
    searchable - Boolean - Indicates whether the product attribute is used for full-text search.
    sortable - Boolean - Indicates whether the product attribute can be sorted on the Product Listing Page (PLP).
    unique - Boolean - Is the product attribute unique?
    usedForRules - Boolean - Indicates whether the product attribute can be used for promotion rules.
    visible - Boolean - Indicates whether the product attribute is visible on the Product Detail Page (PDP).
    visibleInCompareList - Boolean - Indicates whether the product attribute is visible in the compare list.
    visibleInListing - Boolean - Indicates whether the product attribute is visible on the Product Listing Page (PLP).
    visibleInSearch - Boolean - Indicates whether the product attribute is visible in search results.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "attributeCode": "xyz789",
    -  "dataType": "abc123",
    -  "deleted": false,
    -  "filterable": true,
    -  "filterableInSearch": false,
    -  "frontendInput": "xyz789",
    -  "global": false,
    -  "label": "xyz789",
    -  "multiSelect": true,
    -  "numeric": false,
    -  "required": true,
    -  "searchWeight": 123.45,
    -  "searchable": false,
    -  "sortable": true,
    -  "unique": false,
    -  "usedForRules": true,
    -  "visible": true,
    -  "visibleInCompareList": true,
    -  "visibleInListing": false,
    -  "visibleInSearch": false
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductDetail

    -
    -
    -
    -
    Description
    -

    Represents product detail information for a given SKU from the destination system.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    attributes - [String] - -
    currency - String - -
    description - String - -
    image - Image - -
    inStock - Boolean - -
    lastIndexedTs - String - -
    lowStock - Boolean - -
    metaDescription - String - -
    metaKeyword - String - -
    metaTitle - String - -
    name - String! - -
    productId - Int - -
    productOverrides - [ProductOverride] - -
    shortDescription - String - -
    sku - String! - -
    smallImage - Image - -
    storeViewCode - String! - -
    thumbnailImage - Image - -
    type - String! - -
    url - String - -
    websiteCode - String! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "attributes": ["xyz789"],
    -  "currency": "abc123",
    -  "description": "xyz789",
    -  "image": Image,
    -  "inStock": false,
    -  "lastIndexedTs": "xyz789",
    -  "lowStock": false,
    -  "metaDescription": "abc123",
    -  "metaKeyword": "abc123",
    -  "metaTitle": "abc123",
    -  "name": "xyz789",
    -  "productId": 987,
    -  "productOverrides": [ProductOverride],
    -  "shortDescription": "xyz789",
    -  "sku": "abc123",
    -  "smallImage": Image,
    -  "storeViewCode": "xyz789",
    -  "thumbnailImage": Image,
    -  "type": "abc123",
    -  "url": "xyz789",
    -  "websiteCode": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductList

    -
    -
    -
    -
    Description
    -

    Represents the list of products indexed for a given data space and scope.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    lastPage - Boolean! - The last page number in the product list.
    pageSize - Int! - The total number of pages in the product list.
    products - [ProductRow] - The list of product data used to populate the product list table.
    scrollId - String - The scroll ID to use for the next page of results. If the last page is reached, this will be null.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "lastPage": true,
    -  "pageSize": 987,
    -  "products": [ProductRow],
    -  "scrollId": "xyz789"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductOverride

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    addToCartAllowed - Boolean - -
    customerGroupHash - String - -
    prices - PriceWrapper - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "addToCartAllowed": true,
    -  "customerGroupHash": "abc123",
    -  "prices": PriceWrapper
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    ProductRow

    -
    -
    -
    -
    Description
    -

    Represents a view of a product to populate the product list table.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    currency - String - -
    inStock - Boolean - -
    lastIndexedTs - String - -
    lowStock - Boolean - -
    name - String! - -
    price - BigDecimal - -
    productId - Int! - -
    sku - String! - -
    type - String! - -
    url - String - -
    visibility - String - -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "currency": "xyz789",
    -  "inStock": true,
    -  "lastIndexedTs": "xyz789",
    -  "lowStock": false,
    -  "name": "xyz789",
    -  "price": BigDecimal,
    -  "productId": 123,
    -  "sku": "xyz789",
    -  "type": "abc123",
    -  "url": "abc123",
    -  "visibility": "abc123"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryCondition

    -
    -
    -
    -
    Description
    -

    Live Search query rule condition.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    type - QueryConditionType! - Query rule condition type.
    value - String! - Query rule condition value.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "CONTAINS", "value": "abc123"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryConditionGroup

    -
    -
    -
    -
    Description
    -

    Live Search query rule condition group.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    joinOperator - JoinOperatorType! - Query rule condition group join operator.
    queryConditions - [QueryCondition!]! - Query rule conditions.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "joinOperator": "AND",
    -  "queryConditions": [QueryCondition]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryConditionGroupInput

    -
    -
    -
    -
    Description
    -

    Live Search query rule condition group input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - joinOperator - JoinOperatorType! - Query rule condition join operator.
    - queryConditions - [QueryConditionInput!]! - Query rule conditions.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "joinOperator": "AND",
    -  "queryConditions": [QueryConditionInput]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryConditionInput

    -
    -
    -
    -
    Description
    -

    Live Search query rule condition type.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - type - QueryConditionType! - Query rule condition type.
    - value - String! - Query rule condition value.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "CONTAINS", "value": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryConditionType

    -
    -
    -
    -
    Description
    -

    Live Search query rule condition type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    CONTAINS

    -
    -
    -

    ENDS_WITH

    -
    -
    -

    EQUALS

    -
    -
    -

    STARTS_WITH

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "CONTAINS"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryRule

    -
    -
    -
    -
    Description
    -

    Live Search Query Rule implemenation for Search Merchandising Rule.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    description - String - Merchandising rule description.
    events - [Event!] - List of merchandising rule events.
    id - ID! - Merchandising rule identifier.
    lastUpdatedAt - String! - Merchandising rule last updated timestamp in ISO date format.
    name - String! - Merchandising rule name.
    preview - Boolean! - Merchandising rule preview flag.
    queryConditionGroup - QueryConditionGroup - Merchandising rule query condition group.
    rankingType - RankingType - Merchandising rule ranking type.
    ruleType - RuleType - Merchandising rule type.
    status - RuleStatusType - Merchandising rule status.
    timeframe - Timeframe - Merchandising rule time frame.
    trendingWindow - TrendingWindow - Merchandising rule trending window.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "description": "abc123",
    -  "events": [Event],
    -  "id": "4",
    -  "lastUpdatedAt": "xyz789",
    -  "name": "xyz789",
    -  "preview": false,
    -  "queryConditionGroup": QueryConditionGroup,
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleType": "DEFAULT_RULE",
    -  "status": "ACTIVE",
    -  "timeframe": Timeframe,
    -  "trendingWindow": "FOURTEEN"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryRuleInput

    -
    -
    -
    -
    Description
    -

    Live Search query rule input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - description - String - Query rule description.
    - events - [EventInput!] - Query rule events.
    - id - ID! - Query rule identifier.
    - name - String! - Query rule name.
    - preview - Boolean - Query rule preview flag.
    - queryConditionGroup - QueryConditionGroupInput - Query rule condition group.
    - rankingType - RankingType - Query rule ranking type.
    - ruleType - RuleType - Query rule type.
    - status - RuleStatusType! - Query rule status.
    - timeframe - TimeframeInput - Query rule time frame.
    - trendingWindow - TrendingWindow - Query rule trending window.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "description": "xyz789",
    -  "events": [EventInput],
    -  "id": "4",
    -  "name": "abc123",
    -  "preview": false,
    -  "queryConditionGroup": QueryConditionGroupInput,
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleType": "DEFAULT_RULE",
    -  "status": "ACTIVE",
    -  "timeframe": TimeframeInput,
    -  "trendingWindow": "FOURTEEN"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryRulesMutationResponse

    -
    -
    -
    -
    Description
    -

    Live Search query rule mutation response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    message - String! - Contains the status of the query rules mutation.
    -
    -
    -
    -
    -
    Example
    - - -
    {"message": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    QueryRulesQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search query rules response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    queryRules - [QueryRule!]! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"queryRules": [QueryRule]}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeInput

    -
    -
    -
    -
    Description
    -

    Categories range filter input to filter based on category levels.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - from - Int - -
    - to - Int - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"from": 987, "to": 987}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeOperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule range operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - type - RangeType! - Range operator type. Required.
    - value - RangeValueRequest! - Range operator value. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "DYNAMIC", "value": RangeValueRequest}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeOperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule range operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    type - RangeType! - Range operator type.
    value - RangeValue! - Range operator value.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "DYNAMIC", "value": RangeValue}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeType

    -
    -
    -
    -
    Description
    -

    Filter rule range operator types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    DYNAMIC

    -
    -
    -

    PERCENTAGE

    -
    -
    -

    STATIC

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "DYNAMIC"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeValue

    -
    -
    -
    -
    Description
    -

    Filter rule range value response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    from - Float! - Range filter lower bound.
    to - Float! - Range filter upper bound.
    -
    -
    -
    -
    -
    Example
    - - -
    {"from": 123.45, "to": 123.45}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RangeValueRequest

    -
    -
    -
    -
    Description
    -

    Filter rule range value input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - from - Float! - Range filter lower bound. Required.
    - to - Float! - Range filter upper bound. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {"from": 123.45, "to": 987.65}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RankingType

    -
    -
    -
    -
    Description
    -

    Live Search category rule ranking type.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    MOST_ADDED_TO_CART

    -
    -
    -

    MOST_PURCHASED

    -
    -
    -

    MOST_VIEWED

    -
    -
    -

    NONE

    -
    -
    -

    RECOMMENDED_FOR_YOU

    -
    -
    -

    TRENDING

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "MOST_ADDED_TO_CART"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Recommendations

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    count - Int! - Queries the Product Recommendations data store for the count of products. This represents the number of products that are indexed and available for Product Recommendations .
    productDetail - ProductDetail - -

    Queries the Product Recommendations data store for detailed product information for a given SKU.

    -

    Parameters:

    -
      -
    • sku: The SKU of the product to retrieve (required)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    sku - String! -
    -
    -
    -
    -
    productList - ProductList! - -

    Queries the Product Recommendations data store for a list of products indexed. This represents the list of products that are indexed and available for Product Recommendations . The product list is sorted by last indexed timestamp in descending order.

    -

    Parameters:

    -
      -
    • searchTerm: The search term to filter the product list by (optional)
    • -
    • scrollId: The scroll ID to continue a previous search (optional)
    • -
    • size: The number of products to return (optional, default: 50)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    scrollId - String -
    -
    -
    -
    searchTerm - String -
    -
    -
    -
    size - Int -
    -
    -
    -
    -
    since - Since! - -

    Queries the Product Recommendations data store for the number of products indexed since a given datetime.

    -

    Parameters:

    -
      -
    • datetime: The start datetime to query from (required)
    • -
    -
    -
    -
    Arguments
    -
    -
    -
    datetime - String! -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "count": 123,
    -  "productDetail": ProductDetail,
    -  "productList": ProductList,
    -  "since": Since
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RuleStatusType

    -
    -
    -
    -
    Description
    -

    Live Search query rule status.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    ACTIVE

    -
    -
    -

    INACTIVE

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "ACTIVE"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    RuleType

    -
    -
    -
    -
    Description
    -

    Live Search query rule type. The default value is SEARCH_QUERY.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    DEFAULT_RULE

    -
    -
    -

    SEARCH_QUERY

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "DEFAULT_RULE"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Scope

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    locale - String - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"locale": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    SearchAnalyticsQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search analytics response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    popularResults - [PopularSkuResponse!] - Live Search popular results analytics.
    summary - SummaryResponse - Live Search summary analytics.
    uniqueSearchResults - [UniqueSearchesResponse!] - Live Search unique search analytics.
    zeroResults - [ZeroResultsResponse!] - Live Search zero results analytics.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "popularResults": [PopularSkuResponse],
    -  "summary": SummaryResponse,
    -  "uniqueSearchResults": [UniqueSearchesResponse],
    -  "zeroResults": [ZeroResultsResponse]
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    SearchMerchandisingRule

    -
    -
    -
    -
    Description
    -

    Live Search merchandising rule.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Field NameDescription
    description - String - Merchandising rule description.
    events - [Event!] - Merchandising rule events.
    id - ID! - Merchandising rule identifier.
    lastUpdatedAt - String! - Merchandising rule last updated timestamp in ISO date format.
    name - String! - Merchandising rule name.
    preview - Boolean! - Merchandising rule preview flag.
    rankingType - RankingType - Merchandising rule ranking type.
    ruleType - RuleType - Merchandising rule type.
    status - RuleStatusType - Merchandising rule status.
    timeframe - Timeframe - Merchandising rule time frame.
    trendingWindow - TrendingWindow - Merchandising rule trending window.
    -
    -
    -
    Possible Types
    - - - - - - - - - - - - - - -
    SearchMerchandisingRule Types
    -

    DefaultQueryRule

    -
    -

    QueryRule

    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "description": "abc123",
    -  "events": [Event],
    -  "id": "4",
    -  "lastUpdatedAt": "abc123",
    -  "name": "xyz789",
    -  "preview": false,
    -  "rankingType": "MOST_ADDED_TO_CART",
    -  "ruleType": "DEFAULT_RULE",
    -  "status": "ACTIVE",
    -  "timeframe": Timeframe,
    -  "trendingWindow": "FOURTEEN"
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    Since

    -
    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    count - Int! - -
    datetime - String! - -
    -
    -
    -
    -
    -
    Example
    - - -
    {"count": 123, "datetime": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StoreConfiguration

    -
    -
    -
    -
    Description
    -

    Live Search store configuration.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Field NameDescription
    indexLanguageConfiguration - IndexLanguageConfiguration - The index language configuration. The Language setting tells the Live Search service which language to expect when writing the index.
    priceBucketConfiguration - PriceBucketConfiguration - -

    The price bucket configuration. Price faceting specifies the number of price range groups and how price values are distributed among them.

    -

    You can specify the number of price range groups and how price values are distributed among them.

    -

    Each price range overlaps the previous group by one. For example, five groups with an interval of 20 creates the following price ranges: 0-20, 20-40, 40-60, 60-80, and >80.

    -

    If there are not enough products in the catalog to fill all defined ranges, the display of the available groups is adjusted accordingly. For example: 0-20, 60-80, >80.

    -
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "indexLanguageConfiguration": IndexLanguageConfiguration,
    -  "priceBucketConfiguration": PriceBucketConfiguration
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StoreConfigurationInput

    -
    -
    -
    -
    Description
    -

    Live Search store configuration input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - - - - - -
    Input FieldDescription
    - indexLanguageConfiguration - IndexLanguageConfigurationInput - The index language configuration input. The Language setting tells the Live Search service which language to expect when writing the index.
    - priceBucketConfiguration - PriceBucketConfigurationInput - The price bucket configuration input.
    -
    -
    -
    -
    -
    Example
    - - -
    {
    -  "indexLanguageConfiguration": IndexLanguageConfigurationInput,
    -  "priceBucketConfiguration": PriceBucketConfigurationInput
    -}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StoreConfigurationMutationResponse

    -
    -
    -
    -
    Description
    -

    Live Search store configuration mutation response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    message - String! - Contains the status of a store configuration mutation.
    -
    -
    -
    -
    -
    Example
    - - -
    {"message": "xyz789"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StoreConfigurationQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search store configuration query response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    storeConfig - StoreConfiguration - The Live Search store configuration.
    -
    -
    -
    -
    -
    Example
    - - -
    {"storeConfig": StoreConfiguration}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    String

    -
    -
    -
    -
    Description
    -

    The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

    -
    -
    -
    -
    -
    Example
    - - -
    "xyz789"
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StringOperatorRequest

    -
    -
    -
    -
    Description
    -

    Filter rule string operator input.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Input FieldDescription
    - type - StringOperatorType! - String operator type. Required.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "ALL_EXCEPT_CURRENT"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StringOperatorResponse

    -
    -
    -
    -
    Description
    -

    Filter rule string operator response.

    -
    -
    -
    Fields
    - - - - - - - - - - - - - -
    Field NameDescription
    type - StringOperatorType! - String operator type.
    -
    -
    -
    -
    -
    Example
    - - -
    {"type": "ALL_EXCEPT_CURRENT"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    StringOperatorType

    -
    -
    -
    -
    Description
    -

    Filter rule string operator types.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - -
    Enum ValueDescription
    -

    ALL_EXCEPT_CURRENT

    -
    -
    -

    SAME_AS_CURRENT

    -
    -
    -
    -
    -
    -
    -
    Example
    - - -
    "ALL_EXCEPT_CURRENT"
    +    },
    +    "extensions": {
    +        "request-id": "bb8f5beda64d85cc"
    +    }
    +}
     
    - -
    - back to top
    -
    -
    -
    - Types -
    -

    SubcategoryOverridesQueryResponse

    -
    -
    Description
    -

    Live Search category rule sub-category response.

    +
    +
    Response
    +

    Returns a PolicyResponse! +

    -
    -
    Fields
    +
    +
    Arguments
    - + - - - - - -
    Field NameName Description
    categoryRules - [CategoryRule!] + + policyRequest - UpdatePolicyRequest! The category rules for sub-categories.
    totalCount - Int + Total number of rules for a specified category path: used for pagination.
    -
    -
    Example
    +

    Example

    +
    +
    Query
    + + +
    mutation updatePolicy($policyRequest: UpdatePolicyRequest!) {
    +  updatePolicy(policyRequest: $policyRequest) {
    +    actions {
    +      ...ActionResponseFragment
    +    }
    +    createdAt
    +    mandatory
    +    name
    +    policyId
    +    updatedAt
    +  }
    +}
    +
    + + +
    +
    +
    Variables
    + + +
    {"policyRequest": UpdatePolicyRequest}
    +
    + + +
    +
    +
    Response
    -
    {"categoryRules": [CategoryRule], "totalCount": 987}
    +                  
    {
    +  "data": {
    +    "updatePolicy": {
    +      "actions": [ActionResponse],
    +      "createdAt": "xyz789",
    +      "mandatory": true,
    +      "name": "xyz789",
    +      "policyId": "abc123",
    +      "updatedAt": "abc123"
    +    }
    +  }
    +}
     
    @@ -13561,54 +2504,45 @@
    Example
    back to top
    -
    -
    - Types -
    -

    SummaryResponse

    +

    Types

    +
    +

    ActionFilterOperator

    Description
    -

    Live Search analytics summary response.

    +

    Action filter operator.

    -
    Fields
    +
    Values
    - + - - - - - - - - - - - - -
    Field NameEnum Value Description
    averageClickPos - Float + +

    EQUALS

    The relative position of the average click-through rate based on unique searches for the specified date range.
    clickThruRate - Float + The percentage of searches that conclude with the shopper clicking a product. For example, the click-through rate is 50% if the shopper searches for “pants” and “shirt” and then clicks one result in the “shirt” search.
    conversionRate - Float + +

    GREATER_THAN_EQUAL

    -

    The percentage of products the shopper purchases versus the number of products the shopper clicks for the specified date range. For example, the conversion rate of the interaction is 100% if the shopper views six products in the popover, clicks one, and makes a purchase.

    -

    The conversion rate is not affected by the number of views of a given product. For example, the conversion rate remains the same if the shopper uses search, but does not click any products.

    uniqueSearches - Int + +

    LESS_THAN_EQUAL

    The total number of unique searches for the specified date range. Multiple searches by the same shopper, even if for the same query, are considered unique if submitted more than one hour apart.
    zeroResultsRate - Float + The percentage of unique searches that returns no results for the specified date range. For example, the zero results rate is 66.67% if the shopper searches for “fjjajfjfjf” twice (without results) and for “pants” once (with results).
    @@ -13619,13 +2553,7 @@
    Fields
    Example
    -
    {
    -  "averageClickPos": 987.65,
    -  "clickThruRate": 123.45,
    -  "conversionRate": 123.45,
    -  "uniqueSearches": 987,
    -  "zeroResultsRate": 987.65
    -}
    +                  
    "EQUALS"
     
    @@ -13634,46 +2562,62 @@
    Example
    back to top
    -
    +
    -

    SynonymsGroup

    +

    ActionFilterRequest

    Description
    -

    Live Search synonyms group configuration.

    +

    Request input to define an action filter in a policy insert or update operation.

    Fields
    - + - + + + + - + - - + - - + - + -
    Field NameInput Field Description
    anchor - String + + actionFilterOperator - ActionFilterOperator! + Filter comparison operator. Required.
    + attribute - String! The synonym group anchor. Attribute name to use in the filter. Required.
    id - String + + enabled - Boolean! The synonym group identifier. Indicates if the filter is enabled or not (true | false). Required.
    terms - [String] + + value - String! The synonym group terms list. Filter attribute value. Required.
    type - SynonymsType + + valueSource - ActionFilterValueSource! + +

    Indicates the location of action filter's value. Required.

    +
      +
    • If TRIGGER, then a corresponding trigger must be configured.
    • +
    • If STATIC, the value field must contain the value to apply in the action filter.
    • +
    The synonym group type.
    @@ -13685,10 +2629,11 @@
    Example
    {
    -  "anchor": "abc123",
    -  "id": "abc123",
    -  "terms": ["xyz789"],
    -  "type": "EQUIVALENT"
    +  "actionFilterOperator": "EQUALS",
    +  "attribute": "abc123",
    +  "enabled": false,
    +  "value": "abc123",
    +  "valueSource": "STATIC"
     }
     
    @@ -13698,50 +2643,51 @@
    Example
    back to top
    -
    +
    -

    SynonymsInput

    +

    ActionFilterResponse

    Description
    -

    Live Search synonyms configuration input.

    +

    Represents an action filter.

    Fields
    - + - - + - - + - - + - + + + + - +
    Input FieldField Name Description
    - anchor - String! + actionFilterOperator - ActionFilterOperator The synonym anchor. Filter comparison operator.
    - id - String! + attribute - String The synonym identifier. Attribute name to use in the filter.
    - terms - [String!]! + enabled - Boolean The synonym terms list. Indicates if the filter is enabled or not (true | false).
    - type - SynonymsType! + value - String + Filter attribute value.
    valueSource - ActionFilterValueSource The synonym type. Indicates the type of action filter.
    @@ -13753,10 +2699,11 @@
    Example
    {
    -  "anchor": "abc123",
    -  "id": "xyz789",
    -  "terms": ["abc123"],
    -  "type": "EQUIVALENT"
    +  "actionFilterOperator": "EQUALS",
    +  "attribute": "xyz789",
    +  "enabled": true,
    +  "value": "xyz789",
    +  "valueSource": "STATIC"
     }
     
    @@ -13766,75 +2713,40 @@
    Example
    back to top
    -
    +
    -

    SynonymsMutationResponse

    +

    ActionFilterValueSource

    Description
    -

    Live Search synonyms configuration mutation response.

    +

    Action filter origin type.

    -
    Fields
    +
    Values
    - + - + - - - -
    Field NameEnum Value Description
    message - String! + +

    STATIC

    +
    Contains the status of the synonyms mutation.
    -
    -
    -
    -
    -
    Example
    - - -
    {"message": "abc123"}
    -
    - - -
    -
    - back to top -
    -
    -
    -
    - Types -
    -

    SynonymsQueryResponse

    -
    -
    -
    -
    Description
    -

    Live Search synonyms configuration.

    -
    -
    -
    Fields
    - - - - - - - - + -
    Field NameDescription
    synonymsGroups - [SynonymsGroup!]! + +

    TRIGGER

    +
    The synonym groups.
    @@ -13845,7 +2757,7 @@
    Fields
    Example
    -
    {"synonymsGroups": [SynonymsGroup]}
    +                  
    "STATIC"
     
    @@ -13854,40 +2766,38 @@
    Example
    back to top
    -
    +
    -

    SynonymsType

    +

    ActionRequest

    Description
    -

    Live Search synonyms type.

    +

    Request input for defining policy actions in an update or insert operation.

    -
    Values
    +
    Fields
    - + - + - +
    Enum ValueInput Field Description
    -

    EQUIVALENT

    -
    + filters - [ActionFilterRequest!] List of action filters for the enclosing policy action item. Optional.
    -

    ONE_WAY

    -
    + triggers - [TriggerRequest!] List of triggers for the enclosing policy action item. Optional. If not provided, then the policy will always be applied.
    @@ -13898,7 +2808,10 @@
    Values
    Example
    -
    "EQUIVALENT"
    +                  
    {
    +  "filters": [ActionFilterRequest],
    +  "triggers": [TriggerRequest]
    +}
     
    @@ -13907,16 +2820,16 @@
    Example
    back to top
    -
    +
    -

    Timeframe

    +

    ActionResponse

    Description
    -

    Live Search query rule time frame.

    +

    Represents the associated triggers and filters for a given policy.

    Fields
    @@ -13929,14 +2842,14 @@
    Fields
    - end - String! + filters - [ActionFilterResponse!] - End time frame in ISO date format. + List of action filters for a given policy. - start - String! + triggers - [TriggerResponse!] - Start time frame in ISO date format. + List of triggers for a given policy. @@ -13948,8 +2861,8 @@
    Example
    {
    -  "end": "xyz789",
    -  "start": "xyz789"
    +  "filters": [ActionFilterResponse],
    +  "triggers": [TriggerResponse]
     }
     
    @@ -13959,38 +2872,36 @@
    Example
    back to top
    -
    +
    -

    TimeframeInput

    +

    BatchChannelResponse

    Description
    -

    Live Search timeframe input.

    +

    Response for batch operations (insert or update) over a channel objects list.

    Fields
    - + - - + - - +
    Input FieldField Name Description
    - end - String! + channels - [ChannelResponse!] End time frame in ISO date format. List of channels to insert or update.
    - start - String! + errors - [String!] Start time frame in ISO date format. List of errors found during the insert or update operations, if any.
    @@ -14002,8 +2913,8 @@
    Example
    {
    -  "end": "xyz789",
    -  "start": "abc123"
    +  "channels": [ChannelResponse],
    +  "errors": ["xyz789"]
     }
     
    @@ -14013,33 +2924,36 @@
    Example
    back to top
    -
    +
    -

    TransportType

    +

    BatchPolicyResponse

    Description
    -

    Trigger's transport type.

    +

    Response object for policy batch updates/inserts.

    -
    Values
    +
    Fields
    - + - - + + + +
    Enum ValueField Name Description
    -

    HTTP_HEADER

    +
    errors - [String!] + List of errors found during the insert or update operations, if any.
    policies - [PolicyResponse!] List of policy objects created or modified.
    @@ -14050,7 +2964,10 @@
    Values
    Example
    -
    "HTTP_HEADER"
    +                  
    {
    +  "errors": ["abc123"],
    +  "policies": [PolicyResponse]
    +}
     
    @@ -14059,47 +2976,78 @@
    Example
    back to top
    -
    +
    +
    + Types +
    +

    Boolean

    +
    +
    +
    +
    Description
    +

    The Boolean scalar type represents true or false.

    +
    +
    +
    +
    + back to top +
    +
    +
    -

    TrendingWindow

    +

    ChannelResponse

    Description
    -

    Live Search category rule trending window. The default value is THREE.

    +

    Represents a channel.

    -
    Values
    +
    Fields
    - + - - + + + + - - + + + + - - + + + + + + + +
    Enum ValueField Name Description
    -

    FOURTEEN

    +
    channelId - String! + Unique identifier for the channel.
    createdAt - String Timestamp of when the channel was created, in ISO 8601 format (e.g., 2024-07-25T16:10:11.701669).
    -

    THIRTY

    +
    name - String! + Name of the channel.
    policies - [PolicyResponse] Policies associated to each channel (joined by policyIds).
    -

    THREE

    +
    policyIds - [String!] + List of policy identifiers associated with the channel.
    scopes - [ChannelScopeResponse!] + List of scopes associated with the channel.
    updatedAt - String Timestamp of the last update to the channel, in ISO 8601 format (e.g., 2024-07-25T16:10:11.701669).
    @@ -14110,7 +3058,15 @@
    Values
    Example
    -
    "FOURTEEN"
    +                  
    {
    +  "channelId": "abc123",
    +  "createdAt": "abc123",
    +  "name": "abc123",
    +  "policies": [PolicyResponse],
    +  "policyIds": ["abc123"],
    +  "scopes": [ChannelScopeResponse],
    +  "updatedAt": "abc123"
    +}
     
    @@ -14119,17 +3075,13 @@
    Example
    back to top
    -
    +
    -

    TriggerRequest

    +

    ChannelScopeRequest

    -
    -
    Description
    -

    Request input to define a policy trigger in a policy insert or update operation.

    -
    Fields
    @@ -14142,15 +3094,10 @@
    Fields
    - - - -
    - name - String! + locale - String! Name of the trigger. Required.
    - transportType - TransportType! Type of transport. Only HTTP_HEADER supported. Required.
    @@ -14161,10 +3108,7 @@
    Fields
    Example
    -
    {
    -  "name": "abc123",
    -  "transportType": "HTTP_HEADER"
    -}
    +                  
    {"locale": "abc123"}
     
    @@ -14173,17 +3117,13 @@
    Example
    back to top
    -
    +
    -

    TriggerResponse

    +

    ChannelScopeResponse

    -
    -
    Description
    -

    Represents a trigger action.

    -
    Fields
    @@ -14195,14 +3135,10 @@
    Fields
    - - - - - -
    name - String + locale - String! Name of the trigger. It should start with the "AC-Policy-" prefix.
    transportType - TransportType + Originating transport type. Currently only HTTP_HEADER is supported.
    @@ -14213,10 +3149,7 @@
    Fields
    Example
    -
    {
    -  "name": "abc123",
    -  "transportType": "HTTP_HEADER"
    -}
    +                  
    {"locale": "xyz789"}
     
    @@ -14225,41 +3158,44 @@
    Example
    back to top
    -
    +
    -

    UniqueSearchesResponse

    +

    CreateChannelRequest

    Description
    -

    Live Search unique search analytics.

    +

    Request input for creating a channel.

    Fields
    - + - - + - - + - - +
    Field NameInput Field Description
    count - Int + + name - String! The number of unique searches. Name of the Chanel. Mandatory.
    refinements - Int + + policyIds - [String!] The number of search query refinements. List of policy identifiers.
    searchQuery - String + + scopes - [ChannelScopeRequest!] The search query string. List of locale identifiers.
    @@ -14271,9 +3207,9 @@
    Example
    {
    -  "count": 123,
    -  "refinements": 123,
    -  "searchQuery": "abc123"
    +  "name": "xyz789",
    +  "policyIds": ["abc123"],
    +  "scopes": [ChannelScopeRequest]
     }
     
    @@ -14283,68 +3219,44 @@
    Example
    back to top
    -
    +
    -

    UnitPageType

    +

    CreatePolicyRequest

    Description
    -

    The page type where the recommendation unit is displayed.

    +

    Request input for creating a policy.

    -
    Values
    +
    Fields
    - + - - - - - - - - - - - - - + - + - +
    Enum ValueInput Field Description
    -

    CART

    -
    -
    -

    CATEGORY

    -
    -
    -

    CONFIRMATION

    -
    -
    -

    HOME

    -
    + actions - [ActionRequest]! List of policy's actions. Required, at least one item.
    -

    PAGE_BUILDER

    -
    + mandatory - Boolean! Indicates if the policy is required or not (true | false). Required.
    -

    PRODUCT_DETAIL

    -
    + name - String! Name of the policy. Required.
    @@ -14355,7 +3267,11 @@
    Values
    Example
    -
    "CART"
    +                  
    {
    +  "actions": [ActionRequest],
    +  "mandatory": false,
    +  "name": "abc123"
    +}
     
    @@ -14364,16 +3280,16 @@
    Example
    back to top
    -
    +
    -

    UnitResponse

    +

    PolicyResponse

    Description
    -

    Recommendation unit response.

    +

    Represents a policy.

    Fields
    @@ -14386,75 +3302,34 @@
    Fields
    - createdAt - String - - The timestamp that the recommendation unit was created. - - - displayNumber - Int - - The number of recommendations to display in the recommendation unit. - - - displayOrder - Int - - The order in which the recommendation unit will be displayed on the page. - - - filterRules - [FilterRuleResponse!] - - -

    Recommendation unit filter rules. If included, it cannot be empty.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/filters

    - - - - id - String! - - The recommendation unit id. - - - metrics - [Metrics!] - - Recommendation unit performance metrics. - - - pagePlacement - String! - - -

    Recommendation unit page placement. This value determines where the recommendation unit will be displayed on the page.

    -

    Options: below-main-content, above-main-content.

    - - - - pageType - UnitPageType! + actions - [ActionResponse!] - Page type where the recommendation unit will be displayed. + List of actions associated to the policy. - storefrontLabel - String + createdAt - String - The displayed label for the recommendation unit. + Record creation timestamp. - unitName - String! + mandatory - Boolean - Name of the recommendation unit. + Indicates if the policy is required or not (true | false). - unitStatus - UnitStatus! + name - String - The status of the recommendation unit. + Policy name. - unitType - UnitType! + policyId - String - Recommendation unit type. + Policy identifier. updatedAt - String - The timestamp that the recommendation unit was last updated. + Record's latest update timestamp. @@ -14466,18 +3341,11 @@
    Example
    {
    +  "actions": [ActionResponse],
       "createdAt": "xyz789",
    -  "displayNumber": 123,
    -  "displayOrder": 987,
    -  "filterRules": [FilterRuleResponse],
    -  "id": "abc123",
    -  "metrics": [Metrics],
    -  "pagePlacement": "xyz789",
    -  "pageType": "CART",
    -  "storefrontLabel": "abc123",
    -  "unitName": "xyz789",
    -  "unitStatus": "ACTIVE",
    -  "unitType": "ADD_TO_CART_CONVERSION_RATE",
    +  "mandatory": false,
    +  "name": "xyz789",
    +  "policyId": "abc123",
       "updatedAt": "abc123"
     }
     
    @@ -14488,58 +3356,25 @@
    Example
    back to top
    -
    +
    Types -
    -

    UnitStatus

    -
    -
    -
    -
    Description
    -

    The recommendation unit status.

    -
    -
    -
    Values
    - - - - - - - - - - - - - - - - - - - - + +

    Scope

    +
    +
    +
    +
    Fields
    +
    Enum ValueDescription
    -

    ACTIVE

    -
    -
    -

    ARCHIVED

    -
    -
    -

    DRAFT

    -
    -
    + - - + + + + - @@ -14553,7 +3388,33 @@
    Values
    Example
    -
    "ACTIVE"
    +                  
    {"locale": "xyz789"}
    +
    + + + + + back to top + + +
    +
    + Types +
    +

    String

    +
    +
    +
    +
    Description
    +

    The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

    +
    +
    +
    +
    +
    Example
    + + +
    "xyz789"
     
    @@ -14562,17 +3423,16 @@
    Example
    back to top
    -
    +
    -

    UnitType

    +

    TransportType

    Description
    -

    The recommendation unit type.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/type

    +

    Trigger's transport type.

    Values
    @@ -14586,91 +3446,7 @@
    Values
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -14684,7 +3460,7 @@
    Values
    Example
    -
    "ADD_TO_CART_CONVERSION_RATE"
    +                  
    "HTTP_HEADER"
     
    @@ -14693,16 +3469,16 @@
    Example
    back to top -
    +
    -

    UpdateChannelRequest

    +

    TriggerRequest

    Description
    -

    Request input for updating a given channel. Also used for batch channel operations.

    +

    Request input to define a policy trigger in a policy insert or update operation.

    Fields
    @@ -14716,27 +3492,15 @@
    Fields
    - - - - - - - - - + - +
    -

    INACTIVE

    -
    - Field NameDescription
    -

    IN_PROGRESS

    +
    locale - String
    -

    ADD_TO_CART_CONVERSION_RATE

    -
    -
    -

    BOUGHT_BOUGHT

    -
    -
    -

    JUST_FOR_YOU

    -
    -
    -

    MORE_LIKE_THIS

    -
    -
    -

    MOST_ADDED_TO_CART

    -
    -
    -

    MOST_PURCHASED

    -
    -
    -

    MOST_VIEWED

    -
    -
    -

    PURCHASE_SESSION_CONVERSION_RATE

    -
    -
    -

    RECENTLY_VIEWED

    -
    -
    -

    TRENDING

    -
    -
    -

    VIEWED_BOUGHT

    -
    -
    -

    VIEWED_VIEWED

    -
    -
    -

    VISUAL

    +

    HTTP_HEADER

    - channelId - String - Channel identifier. Required only if used for an update operation. It can be omitted if used in a batch insert operation.
    - name - String - Name of the channel to update.
    - policyIds - [String!] + name - String! List of policy identifiers. Providing an empty list removes all policy links to the channel. Name of the trigger. Required.
    - scopes - [ChannelScopeRequest!] + transportType - TransportType! List of scopes. Providing an empty list removes all scopes from the channel. Type of transport. Only HTTP_HEADER supported. Required.
    @@ -14748,10 +3512,8 @@
    Example
    {
    -  "channelId": "abc123",
       "name": "xyz789",
    -  "policyIds": ["xyz789"],
    -  "scopes": [ChannelScopeRequest]
    +  "transportType": "HTTP_HEADER"
     }
     
    @@ -14761,50 +3523,36 @@
    Example
    back to top
    -
    +
    -

    UpdatePolicyRequest

    +

    TriggerResponse

    Description
    -

    Request input for updating a given policy. Also used in policy batch operations.

    +

    Represents a trigger action.

    Fields
    - + - - - - - - - - - - + - - +
    Input FieldField Name Description
    - actions - [ActionRequest!] - List of policy's actions. Optional.
    - mandatory - Boolean - Indicates if the policy is compulsory or not (true | false). Optional.
    - name - String + name - String Name of the policy. Optional. Name of the trigger. It should start with the "AC-Policy-" prefix.
    - policyId - String + transportType - TransportType Policy identifier. Required only if used for an update operation. It can be omitted if used in a batch insert operation. Originating transport type. Currently only HTTP_HEADER is supported.
    @@ -14816,10 +3564,8 @@
    Example
    {
    -  "actions": [ActionRequest],
    -  "mandatory": false,
    -  "name": "abc123",
    -  "policyId": "xyz789"
    +  "name": "xyz789",
    +  "transportType": "HTTP_HEADER"
     }
     
    @@ -14829,17 +3575,16 @@
    Example
    back to top
    -
    +
    -

    UpdateUnitRequest

    +

    UpdateChannelRequest

    Description
    -

    Update recommendation unit input.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/edit

    +

    Request input for updating a given channel. Also used for batch channel operations.

    Fields
    @@ -14853,69 +3598,27 @@
    Fields
    - displayNumber - Int - - The number of recommendations to display in the recommendation unit. - - - - displayOrder - Int - - The order in which the recommendation unit will be displayed on the page. - - - - filterRules - [FilterRuleRequest!] - - -

    Recommendation unit filter rules. If included, it cannot be empty.

    -

    See the Product Recommendations documentation for more information: https://experienceleague.adobe.com/en/docs/commerce-merchant-services/product-recommendations/admin/filters

    - - - - - id - String - - The id of the recommendation unit to update. - - - - pagePlacement - String - - -

    Recommendation unit page placement. This value determines where the recommendation unit will be displayed on the page.

    -

    Options: below-main-content, above-main-content.

    - - - - - pageType - UnitPageType - - Page type where the recommendation unit will be displayed. - - - - storefrontLabel - String + channelId - String - The displayed label for the recommendation unit. + Channel identifier. Required only if used for an update operation. It can be omitted if used in a batch insert operation. - unitName - String + name - String - Name of the recommendation unit. + Name of the channel to update. - unitStatus - UnitStatus + policyIds - [String!] - The status of the recommendation unit. + List of policy identifiers. Providing an empty list removes all policy links to the channel. - unitType - UnitType + scopes - [ChannelScopeRequest!] - Recommendation unit type. + List of scopes. Providing an empty list removes all scopes from the channel. @@ -14927,16 +3630,10 @@
    Example
    {
    -  "displayNumber": 123,
    -  "displayOrder": 123,
    -  "filterRules": [FilterRuleRequest],
    -  "id": "abc123",
    -  "pagePlacement": "xyz789",
    -  "pageType": "CART",
    -  "storefrontLabel": "xyz789",
    -  "unitName": "xyz789",
    -  "unitStatus": "ACTIVE",
    -  "unitType": "ADD_TO_CART_CONVERSION_RATE"
    +  "channelId": "xyz789",
    +  "name": "xyz789",
    +  "policyIds": ["abc123"],
    +  "scopes": [ChannelScopeRequest]
     }
     
    @@ -14946,36 +3643,50 @@
    Example
    back to top
    -
    +
    -

    ZeroResultsResponse

    +

    UpdatePolicyRequest

    Description
    -

    Live Search zero results analytics.

    +

    Request input for updating a given policy. Also used in policy batch operations.

    Fields
    - + - + + + + + + + + - + - - +
    Field NameInput Field Description
    count - Int + + actions - [ActionRequest!] + List of policy's actions. Optional.
    + mandatory - Boolean + Indicates if the policy is compulsory or not (true | false). Optional.
    + name - String The number of zero results queries. Name of the policy. Optional.
    searchQuery - String + + policyId - String The search query string. Policy identifier. Required only if used for an update operation. It can be omitted if used in a batch insert operation.
    @@ -14986,7 +3697,12 @@
    Fields
    Example
    -
    {"count": 987, "searchQuery": "xyz789"}
    +                  
    {
    +  "actions": [ActionRequest],
    +  "mandatory": false,
    +  "name": "abc123",
    +  "policyId": "abc123"
    +}