diff --git a/api-specs/api/api.raml b/api-specs/api/api.raml index 1b50ba93f..1684a3474 100644 --- a/api-specs/api/api.raml +++ b/api-specs/api/api.raml @@ -16,6 +16,7 @@ baseUriParameters: - eu-central-1.aws - australia-southeast1.gcp - api.cn-northwest-1.aws.commercetools.cn + - eastus.azure description: | [Region](/../api/general-concepts#hosts) in which the Project is hosted. version: v1 diff --git a/api-specs/api/examples/Cart/CartChangeLineItemsOrderAction.json b/api-specs/api/examples/Cart/CartChangeLineItemsOrderAction.json new file mode 100644 index 000000000..62d2634ee --- /dev/null +++ b/api-specs/api/examples/Cart/CartChangeLineItemsOrderAction.json @@ -0,0 +1,4 @@ +{ + "action": "changeLineItemsOrder", + "lineItemOrder": ["{{lineItemId2}}", "{{lineItemId}}"] +} diff --git a/api-specs/api/resources/in-store.raml b/api-specs/api/resources/in-store.raml index 86c848dde..cb016e294 100644 --- a/api-specs/api/resources/in-store.raml +++ b/api-specs/api/resources/in-store.raml @@ -65,7 +65,7 @@ uriParameters: ] description: | Creates a [Cart](ctp:api:type:Cart) in the [Store](ctp:api:type:Store) specified by `storeKey`. - When using this endpoint the Cart's `store` field is always set to the [Store](ctp:api:type:Store) specified in the path parameter. + If the referenced [ShippingMethod](ctp:api:type:ShippingMethod) in the [CartDraft](ctp:api:type:CartDraft) has a predicate that does not match, or if the Shipping Method is not active, an [InvalidOperation](ctp:api:type:InvalidOperationError) error is returned. Specific Error Codes: diff --git a/api-specs/api/resources/orders.raml b/api-specs/api/resources/orders.raml index 3779ac01f..7c54a6b6a 100644 --- a/api-specs/api/resources/orders.raml +++ b/api-specs/api/resources/orders.raml @@ -334,7 +334,9 @@ post: type: OrderPagedSearchResponse head: securedBy: [oauth_2_0: { scopes: ['view_orders:{projectKey}'] }] - description: Checks whether a search index for the Project's Orders exists. + description: | + Checks whether a search index for the Project's Orders exists. + Returns a `200 OK` status if the index exists or a `404 Not Found` error otherwise. responses: 200: description: The index exists and the Search Orders endpoint can be used. diff --git a/api-specs/api/resources/product-projections-suggest.raml b/api-specs/api/resources/product-projections-suggest.raml index be42e7789..7543ac6da 100644 --- a/api-specs/api/resources/product-projections-suggest.raml +++ b/api-specs/api/resources/product-projections-suggest.raml @@ -4,21 +4,36 @@ description: The source of data for suggestions is the searchKeyword field in a get: displayName: Get suggestion keywords queryParameters: - fuzzy?: - type: boolean - description: Whether to apply fuzzy search on the text to analyze. - #TODO clarify correct syntax /searchKeywords\.[a-z]{2}(-[A-Z]{2})?/: + type: string[] + required: false (placeholderParam): paramName: searchKeywords template: searchKeywords. placeholder: locale - type: string[] - required: false + description: |- + The input text provided for the language specified as [Locale](ctp:api:type:Locale). + limit?: + type: number + format: int32 + default: 10 + maximum: 100 + description: | + Controls how many suggestions per language the [SuggestionResult](ctp:api:type:SuggestionResult) will contain. + The default limit is `10` Suggestions per language and the maximum is `100`. + fuzzy?: + type: boolean + description: | + Defaults to `false`. + + If set to `true`, [fuzzy search](/../api/projects/products-search#fuzzy-search) is applied on the text to analyze. + staged?: + type: boolean + description: | + Defaults to `false`. + + If set to `true` (possible only while using the `view_products` scope), staged projections is queried. is: - - sortable: - sortExample: createdAt asc - - paging - projectionSelecting securedBy: [ diff --git a/api-specs/api/resources/subscriptions.raml b/api-specs/api/resources/subscriptions.raml index e760e6378..454334a4f 100644 --- a/api-specs/api/resources/subscriptions.raml +++ b/api-specs/api/resources/subscriptions.raml @@ -34,7 +34,7 @@ post: is: - deprecatable201 description: | - A test message is sent to ensure the correct configuration of the Destination. If the message cannot be delivered, the Subscription will not be created. The payload of the test message is a notification of type [ResourceCreated](/../api/projects/subscriptions#resourcecreateddeliverypayload) for the `resourceTypeId` `subscription`. + A test notification is sent to ensure the correct configuration of the Destination. If the notification cannot be delivered, the Subscription will not be created. The payload of the test notification is of type [ResourceCreated](/../api/projects/subscriptions#resourcecreateddeliverypayload) for the `resourceTypeId` `subscription`. body: application/json: type: SubscriptionDraft diff --git a/api-specs/api/types/cart/updates/CartChangeLineItemsOrderAction.raml b/api-specs/api/types/cart/updates/CartChangeLineItemsOrderAction.raml new file mode 100644 index 000000000..750b26194 --- /dev/null +++ b/api-specs/api/types/cart/updates/CartChangeLineItemsOrderAction.raml @@ -0,0 +1,11 @@ +#%RAML 1.0 DataType +(package): Cart +type: CartUpdateAction +displayName: CartChangeLineItemsOrderAction +discriminatorValue: changeLineItemsOrder +example: !include ../../../examples/Cart/CartChangeLineItemsOrderAction.json +properties: + lineItemOrder: + type: string[] + description: | + All existing [LineItem](ctp:api:type:LineItem) `id`s in the desired new order. diff --git a/api-specs/api/types/cart/updates/CartSetCustomerIdAction.raml b/api-specs/api/types/cart/updates/CartSetCustomerIdAction.raml index a5cec1d07..d66ffb576 100644 --- a/api-specs/api/types/cart/updates/CartSetCustomerIdAction.raml +++ b/api-specs/api/types/cart/updates/CartSetCustomerIdAction.raml @@ -13,4 +13,6 @@ properties: customerId?: type: string description: | - `id` of an existing [Customer](ctp:api:type:Customer). If empty, any value is removed. + `id` of an existing [Customer](ctp:api:type:Customer). + If the Customer is assigned to a [CustomerGroup](ctp:api:type:CustomerGroup), this update action also sets the value for the `customerGroup` field. + If empty, the update action removes the value for both `customerId` and `customerGroup`. diff --git a/api-specs/api/types/extension/ExtensionResourceTypeId.raml b/api-specs/api/types/extension/ExtensionResourceTypeId.raml index 359f8f5c2..4f019eca2 100644 --- a/api-specs/api/types/extension/ExtensionResourceTypeId.raml +++ b/api-specs/api/types/extension/ExtensionResourceTypeId.raml @@ -13,6 +13,7 @@ enum: - staged-quote - quote - business-unit + - shopping-list (enumDescriptions): cart: Extension triggered for operations on [Carts](/../api/projects/carts). order: Extension triggered for operations on [Orders](/../api/projects/orders). @@ -22,3 +23,4 @@ enum: staged-quote: Extension triggered for operations on [StagedQuotes](/../api/projects/staged-quotes). quote: Extension triggered for operations on [Quotes](/../api/projects/quotes). business-unit: Extension triggered for operations on [BusinessUnits](/../api/projects/business-units). + shopping-list: Extension triggered for operations on [ShoppingLists](/../api/projects/shoppingLists). diff --git a/api-specs/api/types/me/updates/MyCartChangeLineItemsOrderAction.raml b/api-specs/api/types/me/updates/MyCartChangeLineItemsOrderAction.raml new file mode 100644 index 000000000..5b985eab5 --- /dev/null +++ b/api-specs/api/types/me/updates/MyCartChangeLineItemsOrderAction.raml @@ -0,0 +1,11 @@ +#%RAML 1.0 DataType +(package): Me +type: MyCartUpdateAction +displayName: MyCartChangeLineItemsOrderAction +discriminatorValue: changeLineItemsOrder +example: !include ../../../examples/Cart/CartChangeLineItemsOrderAction.json +properties: + lineItemOrder: + type: string[] + description: | + All existing [LineItem](ctp:api:type:LineItem) `id`s of the [Cart](ctp:api:type:Cart) in the desired new order. diff --git a/api-specs/api/types/order-search/OrderSearchCustomType.raml b/api-specs/api/types/order-search/OrderSearchCustomType.raml new file mode 100644 index 000000000..5aefeaae0 --- /dev/null +++ b/api-specs/api/types/order-search/OrderSearchCustomType.raml @@ -0,0 +1,58 @@ +#%RAML 1.0 DataType +(package): Order +displayName: OrderSearchCustomType +description: Possible values for the `customType` property on [query expressions](/../api/projects/order-search#query-expressions) indicating the data type of the `field`. +type: string +enum: + - BooleanType + - StringType + - LocalizedStringType + - EnumType + - LocalizedEnumType + - NumberType + - DateType + - TimeType + - DateTimeType + - SetType.StringType + - SetType.LocalizedStringType + - SetType.EnumType + - SetType.LocalizedEnumType + - SetType.NumberType + - SetType.DateType + - SetType.TimeType + - SetType.DateTimeType +(enumDescriptions): + BooleanType: | + For [CustomFieldBooleanType](ctp:api:type:CustomFieldBooleanType) Custom Fields. + StringType: | + For [CustomFieldStringType](ctp:api:type:CustomFieldStringType) Custom Fields. + LocalizedStringType: | + For [CustomFieldLocalizedStringType](ctp:api:type:CustomFieldLocalizedStringType) Custom Fields. + EnumType: | + For [CustomFieldEnumType](ctp:api:type:CustomFieldEnumType) Custom Fields. + LocalizedEnumType: | + For [CustomFieldLocalizedEnumType](ctp:api:type:CustomFieldLocalizedEnumType) Custom Fields. + NumberType: | + For [CustomFieldNumberType](ctp:api:type:CustomFieldNumberType) Custom Fields. + DateType: | + For [CustomFieldDateType](ctp:api:type:CustomFieldDateType) Custom Fields. + DateTimeType: | + For [CustomFieldDateTimeType](ctp:api:type:CustomFieldDateTimeType) Custom Fields. + TimeType: | + For [CustomFieldTimeType](ctp:api:type:CustomFieldTimeType) Custom Fields. + SetType.StringType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `StringType` Custom Fields. + SetType.LocalizedStringType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `LocalizedStringType` Custom Fields. + SetType.EnumType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `EnumType` Custom Fields. + SetType.LocalizedEnumType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `LocalizedEnumType` Custom Fields. + SetType.NumberType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `NumberType` Custom Fields. + SetType.DateType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `DateType` Custom Fields. + SetType.DateTimeType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `DateTimeType` Custom Fields. + SetType.TimeType: | + For [CustomFieldSetType](ctp:api:type:CustomFieldSetType) of `TimeType` Custom Fields. diff --git a/api-specs/api/types/order-search/OrderSearchQueryExpressionValue.raml b/api-specs/api/types/order-search/OrderSearchQueryExpressionValue.raml index 439774ec9..f374f92fd 100644 --- a/api-specs/api/types/order-search/OrderSearchQueryExpressionValue.raml +++ b/api-specs/api/types/order-search/OrderSearchQueryExpressionValue.raml @@ -10,4 +10,4 @@ properties: type: number format: int32 customType?: - type: string + type: OrderSearchCustomType diff --git a/api-specs/api/types/order/OrderSearchRequest.raml b/api-specs/api/types/order/OrderSearchRequest.raml index ccb1eea8f..fb8a7c1c5 100644 --- a/api-specs/api/types/order/OrderSearchRequest.raml +++ b/api-specs/api/types/order/OrderSearchRequest.raml @@ -15,10 +15,10 @@ properties: format: int32 default: 10 maximum: 100 - description: The maximum number of search results to be returned. + description: The maximum number of search results to be returned on one [page](#pagination). offset?: type: number format: int32 default: 0 maximum: 10000 - description: The number of search results to be skipped in the response for pagination. + description: The number of search results to be skipped in the response for [pagination](#pagination). diff --git a/api-specs/api/types/product-selection/ProductSelectionTypeEnum.raml b/api-specs/api/types/product-selection/ProductSelectionTypeEnum.raml index 869d1d74f..915b30b54 100644 --- a/api-specs/api/types/product-selection/ProductSelectionTypeEnum.raml +++ b/api-specs/api/types/product-selection/ProductSelectionTypeEnum.raml @@ -13,5 +13,5 @@ enum: individual: | For this type of Product Selection, the Products are to be assigned individually by using the [Add Product](/projects/product-selections#add-product) update action. individualExclusion: | - Defines the Product Selection to contain Products that are excluded from the catalog ([BETA](/../offering/api-contract#public-beta)). + Defines the Product Selection to contain Products that are excluded from the catalog ([BETA](/../offering/api-compatibility#public-beta)). For this type of Product Selection, the Products are to be excluded individually by using the [Exclude Product](/projects/product-selections#exclude-product) update action. diff --git a/api-specs/api/types/product-type/AttributeReferenceTypeId.raml b/api-specs/api/types/product-type/AttributeReferenceTypeId.raml index bbd5fa6df..d7c15549a 100644 --- a/api-specs/api/types/product-type/AttributeReferenceTypeId.raml +++ b/api-specs/api/types/product-type/AttributeReferenceTypeId.raml @@ -12,6 +12,7 @@ enum: - category - channel - customer + - customer-group - key-value-document - order - product @@ -35,6 +36,8 @@ enum: References a [Channel](ctp:api:type:Channel). customer: | References a [Customer](ctp:api:type:Customer). + customer-group: | + References a [CustomerGroup](ctp:api:type:CustomerGroup). key-value-document: | References a [CustomObject](ctp:api:type:CustomObject). order: | diff --git a/api-specs/api/types/product/ProductData.raml b/api-specs/api/types/product/ProductData.raml index 9a94fd5cd..3d115ecf6 100644 --- a/api-specs/api/types/product/ProductData.raml +++ b/api-specs/api/types/product/ProductData.raml @@ -51,4 +51,4 @@ properties: searchKeywords: type: SearchKeywords description: | - Used by [Product Suggestions](ctp:api:type:ProductSuggestions), but is also considered for a full text search. + Used by [Product Suggestions](/projects/products-suggestions), but is also considered for a [full text search](/projects/products-search#full-text-search). diff --git a/api-specs/api/types/product/ProductDraft.raml b/api-specs/api/types/product/ProductDraft.raml index ce8d7ab4f..3d3752429 100644 --- a/api-specs/api/types/product/ProductDraft.raml +++ b/api-specs/api/types/product/ProductDraft.raml @@ -63,7 +63,7 @@ properties: searchKeywords?: type: SearchKeywords description: | - Used by [Product Suggestions](ctp:api:type:ProductSuggestions), but is also considered for a [full text search](/projects/products-search#full-text-search). + Used by [Product Suggestions](/projects/products-suggestions), but is also considered for a [full text search](/projects/products-search#full-text-search). state?: type: StateResourceIdentifier description: | diff --git a/api-specs/api/types/product/SearchKeyword.raml b/api-specs/api/types/product/SearchKeyword.raml index a02a9c614..67db744cd 100644 --- a/api-specs/api/types/product/SearchKeyword.raml +++ b/api-specs/api/types/product/SearchKeyword.raml @@ -6,7 +6,7 @@ properties: text: type: string description: | - Text to return in the result of a [suggest query](ctp:api:type:ProductSuggestionsSuggestQuery). + Text to return in the [SuggestionResult](ctp:api:type:SuggestionResult). suggestTokenizer?: type: SuggestTokenizer description: | diff --git a/api-specs/api/types/product/SearchKeywords.raml b/api-specs/api/types/product/SearchKeywords.raml index c5dba8bd0..4df19cdde 100644 --- a/api-specs/api/types/product/SearchKeywords.raml +++ b/api-specs/api/types/product/SearchKeywords.raml @@ -6,7 +6,8 @@ type: object key: Locale value: SearchKeyword[] description: | - Search keywords are JSON objects primarily used by [Product Suggestions](ctp:api:type:ProductSuggestions), but are also considered for a full text search. The keys are of type [Locale](ctp:api:type:Locale), and the values are an array of [SearchKeyword](ctp:api:type:SearchKeyword). + Search keywords are JSON objects primarily used by [Product Suggestions](/projects/products-suggestions), but are also considered for a [full text search](/projects/products-search#full-text-search). + The keys are of type [Locale](ctp:api:type:Locale), and the values are an array of [SearchKeyword](ctp:api:type:SearchKeyword). example: !include ../../examples/Product/SearchKeywords.json properties: /^[a-z]{2}(-[A-Z]{2})?$/: diff --git a/api-specs/api/types/product/SuggestionResult.raml b/api-specs/api/types/product/SuggestionResult.raml index 474999dc2..efc48776a 100644 --- a/api-specs/api/types/product/SuggestionResult.raml +++ b/api-specs/api/types/product/SuggestionResult.raml @@ -1,8 +1,12 @@ #%RAML 1.0 DataType (package): Product displayName: SuggestionResult +example: !include ../../examples/product-projection-suggest.example.json type: object properties: /searchKeywords.[a-z]{2}(-[A-Z]{2})?/: type: array items: Suggestion + description: | + The result may contain multiple Suggestions identified by their [Locale](ctp:api:type:Locale). + See [Suggestions for two languages](/projects/products-suggestions#suggestions-for-two-languages). diff --git a/api-specs/api/types/search/SearchFieldType.raml b/api-specs/api/types/search/SearchFieldType.raml index 297217844..501f75432 100644 --- a/api-specs/api/types/search/SearchFieldType.raml +++ b/api-specs/api/types/search/SearchFieldType.raml @@ -28,46 +28,47 @@ enum: - set_reference (enumDescriptions): boolean: | - For Boolean fields and [AttributeBooleanType](ctp:api:type:AttributeBooleanType) Attributes. + For Boolean fields, [AttributeBooleanType](ctp:api:type:AttributeBooleanType) Attributes, and [BooleanType](ctp:api:type:CustomFieldBooleanType) Custom Fields. text: | - For string fields and [AttributeTextType](ctp:api:type:AttributeTextType) Attributes. + For string fields, [AttributeTextType](ctp:api:type:AttributeTextType) Attributes, and [StringType](ctp:api:type:CustomFieldStringType) Custom Fields. ltext: | - For [LocalizedString](types#localizedstring) fields and [AttributeLocalizableTextType](ctp:api:type:AttributeLocalizableTextType) Attributes. + For [LocalizedString](types#localizedstring) fields, [AttributeLocalizableTextType](ctp:api:type:AttributeLocalizableTextType) Attributes, + and [LocalizedStringType](ctp:api:type:CustomFieldLocalizedStringType) Custom Fields. enum: | - For enum fields and [AttributeEnumType](ctp:api:type:AttributeEnumType) Attributes. + For enum fields, [AttributeEnumType](ctp:api:type:AttributeEnumType) Attributes, and [EnumType](ctp:api:type:CustomFieldEnumType) Custom Fields. lenum: | - For localized enum fields and [AttributeLocalizedEnumType](ctp:api:type:AttributeLocalizedEnumType) Attributes. + For localized enum fields, [AttributeLocalizedEnumType](ctp:api:type:AttributeLocalizedEnumType) Attributes, and [LocalizedEnumType](ctp:api:type:CustomFieldLocalizedEnumType) Custom Fields. number: | - For number fields and [AttributeNumberType](ctp:api:type:AttributeNumberType) Attributes. + For number fields, [AttributeNumberType](ctp:api:type:AttributeNumberType) Attributes, and [NumberType](ctp:api:type:CustomFieldNumberType) Custom Fields. money: | For [Money](types#money) fields and [AttributeMoneyType](ctp:api:type:AttributeMoneyType) Attributes. date: | - For [Date](types#date) fields and [AttributeDateType](ctp:api:type:AttributeDateType) Attributes. + For [Date](types#date) fields, [AttributeDateType](ctp:api:type:AttributeDateType) Attributes, and [DateType](ctp:api:type:CustomFieldDateType) Custom Fields. datetime: | - For [DateTime](types#datetime) fields and [AttributeDateTimeType](ctp:api:type:AttributeDateTimeType) Attributes. + For [DateTime](types#datetime) fields, [AttributeDateTimeType](ctp:api:type:AttributeDateTimeType) Attributes, and [DateTimeType](ctp:api:type:CustomFieldDateTimeType) Custom Fields. time: | - For [Time](types#time) fields and [AttributeTimeType](ctp:api:type:AttributeTimeType) Attributes. + For [Time](types#time) fields, [AttributeTimeType](ctp:api:type:AttributeTimeType) Attributes, and [TimeType](ctp:api:type:CustomFieldTimeType) Custom Fields. reference: | For [Reference](types#reference) fields and [AttributeReferenceType](ctp:api:type:AttributeReferenceType) Attributes. set_boolean: | - For Set of Boolean fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `boolean` Attributes. + For Set of Boolean fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `boolean` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `boolean` Custom Fields. set_text: | - For Set of string fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `text` Attributes. + For Set of string fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `text` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `text` Custom Fields. set_ltext: | - For Set of [LocalizedString](types#localizedstring) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `ltext` Attributes. + For Set of [LocalizedString](types#localizedstring) fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `ltext` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `ltext` Custom Fields. set_enum: | - For Set of enum fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `enum` Attributes. + For Set of enum fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `enum` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `enum` Custom Fields. set_lenum: | - For Set of localized enum fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `lenum` Attributes. + For Set of localized enum fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `lenum` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `lenum` Custom Fields. set_number: | - For Set of number fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `number` Attributes. + For Set of number fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `number` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `number` Custom Fields. set_money: | For Set of [Money](types#money) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `money` Attributes. set_date: | - For Set of [Date](types#date) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `date` Attributes. + For Set of [Date](types#date) fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `date` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `date` Custom Fields. set_datetime: | - For Set of [DateTime](types#datetime) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `datetime` Attributes. + For Set of [DateTime](types#datetime) fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `datetime` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `datetime` Custom Fields. set_time: | - For Set of [Time](types#time) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `time` Attributes. + For Set of [Time](types#time) fields, [AttributeSetType](ctp:api:type:AttributeSetType) of `time` Attributes, and [SetType](ctp:api:type:CustomFieldSetType) of `time` Custom Fields. set_reference: | For Set of [Reference](types#reference) fields and [AttributeSetType](ctp:api:type:AttributeSetType) of `reference` Attributes. diff --git a/api-specs/api/types/subscription/AwsAuthenticationMode.raml b/api-specs/api/types/subscription/AwsAuthenticationMode.raml index c306384a3..b2c0a7811 100644 --- a/api-specs/api/types/subscription/AwsAuthenticationMode.raml +++ b/api-specs/api/types/subscription/AwsAuthenticationMode.raml @@ -10,5 +10,5 @@ enum: Credentials: | Subscriptions with `Credentials` authentication mode are authenticated using an `accessKey` and `accessSecret` pair. This is the default authentication mode for backwards compatibility. IAM: | - Subscriptions with `IAM` authentication mode are authenticated using Identity and Access Management (IAM). For this authentication mode, the following user requires permissions to send messages to the queue or publish to the topic: `arn:aws-cn:iam::417094354346:user/subscriptions` if the Project is hosted in the China (AWS, Ningxia) Region; `arn:aws:iam::362576667341:user/subscriptions` for all other [Regions](/../api/general-concepts#regions). This is the recommended authentication mode, as it doesn't require additional key management. + Subscriptions with `IAM` authentication mode are authenticated using Identity and Access Management (IAM). For this authentication mode, the following user requires permissions to send notifications to the queue or publish to the topic: `arn:aws-cn:iam::417094354346:user/subscriptions` if the Project is hosted in the China (AWS, Ningxia) Region; `arn:aws:iam::362576667341:user/subscriptions` for all other [Regions](/../api/general-concepts#regions). This is the recommended authentication mode, as it doesn't require additional key management. default: Credentials diff --git a/api-specs/api/types/subscription/AzureEventGridDestination.raml b/api-specs/api/types/subscription/AzureEventGridDestination.raml index e00663a10..ef7e5abe7 100644 --- a/api-specs/api/types/subscription/AzureEventGridDestination.raml +++ b/api-specs/api/types/subscription/AzureEventGridDestination.raml @@ -5,8 +5,8 @@ displayName: AzureEventGridDestination discriminatorValue: EventGrid example: !include ../../examples/Subscription/SubscriptionAzureEventGridDestination.json description: | - [Azure Event Grid](https://azure.microsoft.com/en-us/products/event-grid/) can be used to push messages to Azure Functions, HTTP endpoints (webhooks), and several other Azure tools. Event Grid can only be used with the [CloudEventsFormat](ctp:api:type:CloudEventsFormat). - To set up a Subscription with Azure Event Grid, first create a topic in the [Azure Portal](https://azure.microsoft.com/en-us/get-started/azure-portal/). To allow Composable Commerce to push messages to your topic, provide an [access key](https://docs.microsoft.com/en-us/azure/event-grid/get-access-keys). + [Azure Event Grid](https://azure.microsoft.com/en-us/products/event-grid/) can be used to push notifications to Azure Functions, HTTP endpoints (webhooks), and several other Azure tools. Event Grid can only be used with the [CloudEventsFormat](ctp:api:type:CloudEventsFormat). + To set up a Subscription with Azure Event Grid, first create a topic in the [Azure Portal](https://azure.microsoft.com/en-us/get-started/azure-portal/). To allow Composable Commerce to push notifications to your topic, provide an [access key](https://docs.microsoft.com/en-us/azure/event-grid/get-access-keys). properties: uri: type: string diff --git a/api-specs/api/types/subscription/AzureServiceBusDestination.raml b/api-specs/api/types/subscription/AzureServiceBusDestination.raml index 6f7e400aa..29e47761f 100644 --- a/api-specs/api/types/subscription/AzureServiceBusDestination.raml +++ b/api-specs/api/types/subscription/AzureServiceBusDestination.raml @@ -5,7 +5,7 @@ displayName: AzureServiceBusDestination discriminatorValue: AzureServiceBus example: !include ../../examples/Subscription/SubscriptionAzureServiceBusDestination.json description: | - [Azure Service Bus](https://azure.microsoft.com/en-us/products/service-bus/) can be used as a pull-queue with [Queues](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions#queues), or to fan-out messages with [Topics and Subscriptions](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions). + [Azure Service Bus](https://azure.microsoft.com/en-us/products/service-bus/) can be used as a pull-queue with [Queues](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions#queues), or to fan-out notifications with [Topics and Subscriptions](https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions). To set up a Subscription with Azure Service Bus, first create a queue/topic in the [Azure Portal](https://azure.microsoft.com/en-us/get-started/azure-portal/) with a Shared Access Policy including the `Send` permission. properties: connectionString: diff --git a/api-specs/api/types/subscription/CloudEventsPayload.raml b/api-specs/api/types/subscription/CloudEventsPayload.raml index b0b6a601b..b71e65550 100644 --- a/api-specs/api/types/subscription/CloudEventsPayload.raml +++ b/api-specs/api/types/subscription/CloudEventsPayload.raml @@ -5,7 +5,7 @@ displayName: CloudEventsPayload discriminatorValue: CloudEvents example: !include ../../examples/Subscription/cloudevents-payload.example.json description: | - The [CloudEventsFormat](ctp:api:type:CloudEventsFormat) represents event data in a way that conforms to a common specification. The message payload can be found inside the `data` field. + The [CloudEventsFormat](ctp:api:type:CloudEventsFormat) represents event data in a way that conforms to a common specification. The payload can be found inside the `data` field. properties: specversion: type: string diff --git a/api-specs/api/types/subscription/ConfluentCloudDestination.raml b/api-specs/api/types/subscription/ConfluentCloudDestination.raml index 4173f99b0..1b9b0c098 100644 --- a/api-specs/api/types/subscription/ConfluentCloudDestination.raml +++ b/api-specs/api/types/subscription/ConfluentCloudDestination.raml @@ -5,9 +5,9 @@ displayName: ConfluentCloudDestination discriminatorValue: ConfluentCloud example: !include ../../examples/Subscription/SubscriptionConfluentCloudDestination.json description: | - This destination can be used to push events and messages to [Confluent Cloud](https://www.confluent.io/confluent-cloud/). + This destination can be used to push notifications to [Confluent Cloud](https://www.confluent.io/confluent-cloud/). To set up a Subscription of this type, first, create a topic in Confluent Cloud. - Then, to allow Composable Commerce to push events and messages to your topic, generate [API keys](https://docs.confluent.io/cloud/current/access-management/authenticate/api-keys/api-keys.html) for your topic, and create the Subscription destination using the generated credentials. + Then, to allow Composable Commerce to push notifications to your topic, generate [API keys](https://docs.confluent.io/cloud/current/access-management/authenticate/api-keys/api-keys.html) for your topic, and create the Subscription destination using the generated credentials. The Composable Commerce producer uses the following values: `SASL_SSL` for`security.protocol`, `PLAIN` for`sasl.mechanism`, and the default value (1048576) for `max.request.size`. properties: diff --git a/api-specs/api/types/subscription/DeliveryPayload.raml b/api-specs/api/types/subscription/DeliveryPayload.raml index 28eeca823..fd0463992 100644 --- a/api-specs/api/types/subscription/DeliveryPayload.raml +++ b/api-specs/api/types/subscription/DeliveryPayload.raml @@ -10,7 +10,7 @@ properties: type: string description: | `key` of the [Project](ctp:api:type:Project). - Useful in message processing if the Destination receives events from multiple Projects. + Useful for processing notifications if the Destination receives them from multiple Projects. notificationType: type: string description: | @@ -18,7 +18,7 @@ properties: resource: type: Reference description: | - Reference to the resource that triggered the message. + Reference to the resource that triggered the notification. resourceUserProvidedIdentifiers?: type: UserProvidedIdentifiers description: | diff --git a/api-specs/api/types/subscription/GoogleCloudPubSubDestination.raml b/api-specs/api/types/subscription/GoogleCloudPubSubDestination.raml index 07cbecaa7..679f01d18 100644 --- a/api-specs/api/types/subscription/GoogleCloudPubSubDestination.raml +++ b/api-specs/api/types/subscription/GoogleCloudPubSubDestination.raml @@ -8,7 +8,7 @@ description: | Destination for [Google Cloud Pub/Sub](https://cloud.google.com/pubsub/) that can be used for [Pull subscriptions](https://cloud.google.com/pubsub/docs/pull) as well as for [Push subscriptions](https://cloud.google.com/pubsub/docs/push). The `topic` must give the `pubsub.topics.publish` permission to the service account `subscriptions@commercetools-platform.iam.gserviceaccount.com`. - If used with the [CloudEventsFormat](#cloudeventsformat), the message conforms to the [PubSub Protocol Binding](https://github.com/google/knative-gcp/blob/master/docs/spec/pubsub-protocol-binding.md) of the [Structured Content Mode](https://github.com/google/knative-gcp/blob/master/docs/spec/pubsub-protocol-binding.md#32-structured-content-mode). + If used with the [CloudEventsFormat](#cloudeventsformat), the notification conforms to the [PubSub Protocol Binding](https://github.com/google/knative-gcp/blob/master/docs/spec/pubsub-protocol-binding.md) of the [Structured Content Mode](https://github.com/google/knative-gcp/blob/master/docs/spec/pubsub-protocol-binding.md#32-structured-content-mode). properties: projectId: type: string diff --git a/api-specs/api/types/subscription/MessageDeliveryPayload.raml b/api-specs/api/types/subscription/MessageDeliveryPayload.raml index 48c27b12d..547b09551 100644 --- a/api-specs/api/types/subscription/MessageDeliveryPayload.raml +++ b/api-specs/api/types/subscription/MessageDeliveryPayload.raml @@ -34,7 +34,7 @@ properties: type: number format: int64 description: | - Version of the resource on which the change was performed. + Version of the resource on which the update was performed. payloadNotIncluded?: type: PayloadNotIncluded description: | diff --git a/api-specs/api/types/subscription/SnsDestination.raml b/api-specs/api/types/subscription/SnsDestination.raml index ccffd8317..38ab0e5fb 100644 --- a/api-specs/api/types/subscription/SnsDestination.raml +++ b/api-specs/api/types/subscription/SnsDestination.raml @@ -7,7 +7,7 @@ example: !include ../../examples/Subscription/SubscriptionSnsDestination.json description: | [AWS SNS](https://aws.amazon.com/sns/) can be used to push messages to AWS Lambda, HTTP endpoints (webhooks), or fan-out messages to SQS queues. The SQS queue must be a [Standard](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/standard-queues.html) queue type. - We recommend setting `authenticationMode` to `IAM`, to avoid unnecessary key management. For IAM authentication and before creating the Subscription, give permissions to the following user account: `arn:aws-cn:iam::417094354346:user/subscriptions` if the Project is hosted in the China (AWS, Ningxia) Region; `arn:aws:iam::362576667341:user/subscriptions` for all other [Regions](/../api/general-concepts#regions). Otherwise, a test message will not be sent. + We recommend setting `authenticationMode` to `IAM`, to avoid unnecessary key management. For IAM authentication and before creating the Subscription, give permissions to the following user account: `arn:aws-cn:iam::417094354346:user/subscriptions` if the Project is hosted in the China (AWS, Ningxia) Region; `arn:aws:iam::362576667341:user/subscriptions` for all other [Regions](/../api/general-concepts#regions). Otherwise, a test notification will not be sent. If you prefer to use `Credentials` for authentication, we recommend [creating an IAM user](https://docs.aws.amazon.com/sns/latest/dg/sns-setting-up.html#create-iam-user) with an `accessKey` and `accessSecret` pair specifically for each Subscription. diff --git a/api-specs/api/types/subscription/Subscription.raml b/api-specs/api/types/subscription/Subscription.raml index 4874763e9..00a2e2a90 100644 --- a/api-specs/api/types/subscription/Subscription.raml +++ b/api-specs/api/types/subscription/Subscription.raml @@ -36,11 +36,11 @@ properties: changes: type: ChangeSubscription[] description: | - Change notifications subscribed to. + Changes subscribed to. destination: type: Destination description: | - Messaging service to which the messages are to be sent. + Messaging service to which the notifications are sent. key?: type: string description: | diff --git a/api-specs/api/types/subscription/SubscriptionDraft.raml b/api-specs/api/types/subscription/SubscriptionDraft.raml index 6e7110694..1e519813c 100644 --- a/api-specs/api/types/subscription/SubscriptionDraft.raml +++ b/api-specs/api/types/subscription/SubscriptionDraft.raml @@ -9,11 +9,11 @@ properties: changes?: type: ChangeSubscription[] description: | - Change notifications to be subscribed to. + Changes to be subscribed to. destination: type: Destination description: | - Messaging service to which the messages are sent. + Messaging service to which the notifications are sent. key?: type: string description: | diff --git a/api-specs/api/types/subscription/SubscriptionHealthStatus.raml b/api-specs/api/types/subscription/SubscriptionHealthStatus.raml index eb2ca0462..7687c9887 100644 --- a/api-specs/api/types/subscription/SubscriptionHealthStatus.raml +++ b/api-specs/api/types/subscription/SubscriptionHealthStatus.raml @@ -2,14 +2,14 @@ (package): Subscription displayName: SubscriptionHealthStatus description: | - The health status of the Subscription that indicates whether messages are being delivered. + The health status of the Subscription that indicates whether notifications are being delivered. type: string (enumDescriptions): - Healthy: Delivers messages as expected. - ConfigurationError: Messages cannot be delivered with the current configuration. Common causes are deleting the Destination queue, deleting access credentials, or removing the necessary permissions. The configuration can be fixed by re-creating the configuration on the Destination side, or by setting a new configuration with the [Change Destination](/../api/projects/subscriptions#change-destination) update action. If the configuration is fixed, undelivered messages will be delivered and the `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus). `ConfigurationError` is automatically turned into `ConfigurationErrorDeliveryStopped` after some time. For more information, see [Delivery Guarantees](#delivery-guarantees). - ConfigurationErrorDeliveryStopped: Does not deliver messages with the current configuration and the delivery of the messages is no longer attempted. If the configuration is fixed, undelivered messages are not retained and will not be delivered. The `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus) as soon as new messages can be delivered. - TemporaryError: Does not deliver messages temporarily due to reasons other than a configuration error. For example, the Destination has a temporary outage. - ManuallySuspended: Does not deliver messages with the current configuration and the delivery of the messages is no longer attempted. Undelivered messages are not retained and will not be delivered. The `status` will not automatically change to [Healthy](ctp:api:type:SubscriptionHealthStatus). To return your subscriptions to a [Healthy](ctp:api:type:SubscriptionHealthStatus) status, contact the [Composable Commerce support team](https://support.commercetools.com/). + Healthy: Delivers notifications as expected. + ConfigurationError: Notifications cannot be delivered with the current configuration. Common causes are deleting the Destination queue, deleting access credentials, or removing necessary permissions. You can fix the configuration by re-creating the configuration on the Destination side, or by setting a new configuration with the [Change Destination](/../api/projects/subscriptions#change-destination) update action. After the configuration is fixed, undelivered notifications will be delivered and the `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus). `ConfigurationError` is automatically turned into `ConfigurationErrorDeliveryStopped` after some time. For more information, see [Delivery Guarantees](#delivery-guarantees). + ConfigurationErrorDeliveryStopped: Does not deliver notifications with the current configuration and the delivery of the notifications is no longer attempted. After the configuration is fixed, undelivered notifications are not retained and will not be delivered. The `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus) as soon as new notifications can be delivered. + TemporaryError: Does not deliver notifications temporarily due to reasons other than a configuration error. For example, the Destination has a temporary outage. + ManuallySuspended: Does not deliver notifications with the current configuration and the delivery of the notifications is no longer attempted. Undelivered notifications are not retained and will not be delivered. The `status` will not automatically change to [Healthy](ctp:api:type:SubscriptionHealthStatus). To return your subscriptions to a [Healthy](ctp:api:type:SubscriptionHealthStatus) status, contact the [Composable Commerce support team](https://support.commercetools.com/). enum: - Healthy diff --git a/api-specs/api/types/subscription/updates/SubscriptionChangeDestinationAction.raml b/api-specs/api/types/subscription/updates/SubscriptionChangeDestinationAction.raml index 106ef987e..9298c2521 100644 --- a/api-specs/api/types/subscription/updates/SubscriptionChangeDestinationAction.raml +++ b/api-specs/api/types/subscription/updates/SubscriptionChangeDestinationAction.raml @@ -5,7 +5,7 @@ displayName: SubscriptionChangeDestinationAction discriminatorValue: changeDestination example: !include ../../../examples/Subscription/SubscriptionChangeDestinationAction.json description: | - A test message is sent to ensure the correct configuration of the Destination. If the message cannot be delivered, the update will fail. The payload of the test message is a notification of type [ResourceCreated](ctp:api:type:ResourceCreatedDeliveryPayload) for the `resourceTypeId` `subscription`. The `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus), if it isn't already. + A test notification is sent to ensure the correct configuration of the Destination. If the notification cannot be delivered, the update will fail. The payload of the test notification is of type [ResourceCreated](ctp:api:type:ResourceCreatedDeliveryPayload) for the `resourceTypeId` `subscription`. The `status` will change to [Healthy](ctp:api:type:SubscriptionHealthStatus), if it isn't already. properties: destination: type: Destination diff --git a/api-specs/api/types/type/CustomFieldReferenceValue.raml b/api-specs/api/types/type/CustomFieldReferenceValue.raml index e346763f5..a4a9a77ec 100644 --- a/api-specs/api/types/type/CustomFieldReferenceValue.raml +++ b/api-specs/api/types/type/CustomFieldReferenceValue.raml @@ -13,6 +13,7 @@ enum: - category - channel - customer + - customer-group - key-value-document - order - product @@ -38,6 +39,8 @@ enum: [Channel](ctp:api:type:Channel) customer: | [Customer](ctp:api:type:Customer) + customer-group: | + [CustomerGroup](ctp:api:type:CustomerGroup) key-value-document: | [CustomObject](ctp:api:type:CustomObject) order: | diff --git a/api-specs/api/types/types.raml b/api-specs/api/types/types.raml index 457368ffa..e7116880e 100644 --- a/api-specs/api/types/types.raml +++ b/api-specs/api/types/types.raml @@ -241,6 +241,7 @@ CartChangeCustomLineItemMoneyAction: !include cart/updates/CartChangeCustomLineI CartChangeCustomLineItemPriceModeAction: !include cart/updates/CartChangeCustomLineItemPriceModeAction.raml CartChangeCustomLineItemQuantityAction: !include cart/updates/CartChangeCustomLineItemQuantityAction.raml CartChangeLineItemQuantityAction: !include cart/updates/CartChangeLineItemQuantityAction.raml +CartChangeLineItemsOrderAction: !include cart/updates/CartChangeLineItemsOrderAction.raml CartChangeTaxCalculationModeAction: !include cart/updates/CartChangeTaxCalculationModeAction.raml CartChangeTaxModeAction: !include cart/updates/CartChangeTaxModeAction.raml CartChangeTaxRoundingModeAction: !include cart/updates/CartChangeTaxRoundingModeAction.raml @@ -747,6 +748,7 @@ MyCartAddPaymentAction: !include me/updates/MyCartAddPaymentAction.raml # yamllint disable-line rule:line-length MyCartApplyDeltaToLineItemShippingDetailsTargetsAction: !include me/updates/MyCartApplyDeltaToLineItemShippingDetailsTargetsAction.raml MyCartChangeLineItemQuantityAction: !include me/updates/MyCartChangeLineItemQuantityAction.raml +MyCartChangeLineItemsOrderAction: !include me/updates/MyCartChangeLineItemsOrderAction.raml MyCartChangeTaxModeAction: !include me/updates/MyCartChangeTaxModeAction.raml MyCartRecalculateAction: !include me/updates/MyCartRecalculateAction.raml MyCartRemoveDiscountCodeAction: !include me/updates/MyCartRemoveDiscountCodeAction.raml @@ -1475,6 +1477,7 @@ OrderPagedSearchResponse: !include order-search/OrderPagedSearchResponse.raml OrderSearchAndExpression: !include order-search/OrderSearchAndExpression.raml OrderSearchAnyValue: !include order-search/OrderSearchAnyValue.raml OrderSearchCompoundExpression: !include order-search/OrderSearchCompoundExpression.raml +OrderSearchCustomType: !include order-search/OrderSearchCustomType.raml OrderSearchDateRangeExpression: !include order-search/OrderSearchDateRangeExpression.raml OrderSearchDateRangeValue: !include order-search/OrderSearchDateRangeValue.raml OrderSearchExactExpression: !include order-search/OrderSearchExactExpression.raml diff --git a/api-specs/checkout/types/responses/MultipleVendorButtonContainers.raml b/api-specs/checkout/types/responses/MultipleVendorButtonContainers.raml new file mode 100644 index 000000000..c422386af --- /dev/null +++ b/api-specs/checkout/types/responses/MultipleVendorButtonContainers.raml @@ -0,0 +1,17 @@ +#%RAML 1.0 DataType +(annotations.package): responses +type: Message +displayName: MultipleVendorButtonContainers +discriminatorValue: multiple_vendor_button_containers +description: | + Generated when multiple containers for [vendor payment buttons](/sdk#display-custom-and-vendor-payment-buttons) are found. +properties: + code: + type: string + description: + severity: + type: string + description: \`warn` + message: + type: string + description: Multiple vendor button containers detected, this may cause issues. diff --git a/api-specs/checkout/types/responses/PaymentMethodSelectionConfirmationFailed.raml b/api-specs/checkout/types/responses/PaymentMethodSelectionConfirmationFailed.raml index b2f46f6ee..61433555a 100644 --- a/api-specs/checkout/types/responses/PaymentMethodSelectionConfirmationFailed.raml +++ b/api-specs/checkout/types/responses/PaymentMethodSelectionConfirmationFailed.raml @@ -4,7 +4,7 @@ type: ResponseMessage displayName: PaymentMethodSelectionConfirmationFailed discriminatorValue: payment_method_selection_confirmation_failed description: | - Generated when an error occurs when the customer selects the payment method. + Generated when the selection of the payment method by the customer is not successful. properties: code: type: string diff --git a/api-specs/checkout/types/responses/PermissionsNotFound.raml b/api-specs/checkout/types/responses/PermissionsNotFound.raml new file mode 100644 index 000000000..d67fd9b16 --- /dev/null +++ b/api-specs/checkout/types/responses/PermissionsNotFound.raml @@ -0,0 +1,17 @@ +#%RAML 1.0 DataType +(annotations.package): responses +type: Message +displayName: PermissionsNotFound +discriminatorValue: no_permissions_found +description: | + Generated when no [permissions](/permissions-subscription) to create a Composable Commerce API Client are found. To create permissions, in the Merchant Center navigation menu, go to any page under **commercetools Checkout** and click **Confirm creation**. +properties: + code: + type: string + description: + severity: + type: string + description: \`warn` + message: + type: string + description: No permissions are found in your commercetools Checkout. diff --git a/api-specs/checkout/types/types.raml b/api-specs/checkout/types/types.raml index eca15b366..617d9dbd5 100644 --- a/api-specs/checkout/types/types.raml +++ b/api-specs/checkout/types/types.raml @@ -14,6 +14,7 @@ InitTimeout: !include responses/InitTimeout.raml InvalidMode: !include responses/InvalidMode.raml BadInputData: !include responses/BadInputData.raml InvalidToken: !include responses/InvalidToken.raml +MultipleVendorButtonContainers: !include responses/MultipleVendorButtonContainers.raml NoPaymentMethods: !include responses/NoPaymentMethods.raml PaymentFailed: !include responses/PaymentFailed.raml PaymentStarted: !include responses/PaymentStarted.raml @@ -32,6 +33,7 @@ PaymentValidationPassed: !include responses/PaymentValidationPassed.raml PaymentValidationStarted: !include responses/PaymentValidationStarted.raml PaymentVerificationStarted: !include responses/PaymentVerificationStarted.raml PaymentVerificationTimeout: !include responses/PaymentVerificationTimeout.raml +PermissionsNotFound: !include responses/PermissionsNotFound.raml ExternalTermsAndConditionsPending: !include responses/ExternalTermsAndConditionsPending.raml SetShippingAddressError: !include responses/SetShippingAddressError.raml NoShippingMethods: !include responses/NoShippingMethods.raml diff --git a/api-specs/graphql/schema.sdl b/api-specs/graphql/schema.sdl index a1d05ba7c..2dda497a3 100644 --- a/api-specs/graphql/schema.sdl +++ b/api-specs/graphql/schema.sdl @@ -2017,6 +2017,7 @@ input CartUpdateAction { changeCustomLineItemMoney: ChangeCartCustomLineItemMoney changeCustomLineItemPriceMode: ChangeCartCustomLineItemPriceMode changeCustomLineItemQuantity: ChangeCartCustomLineItemQuantity + changeLineItemsOrder: ChangeCartLineItemsOrder changeTaxCalculationMode: ChangeCartTaxCalculationMode changeTaxMode: ChangeCartTaxMode changeTaxRoundingMode: ChangeCartTaxRoundingMode @@ -2353,6 +2354,10 @@ input ChangeCartLineItemQuantity { externalTotalPrice: ExternalLineItemTotalPriceDraft } +input ChangeCartLineItemsOrder { + lineItemOrder: [String!]! +} + input ChangeCartTaxCalculationMode { taxCalculationMode: TaxCalculationMode! } @@ -6435,6 +6440,7 @@ input MyCartUpdateAction { addPayment: AddCartPayment addShoppingList: AddCartShoppingList applyDeltaToLineItemShippingDetailsTargets: ApplyCartDeltaToLineItemShippingDetailsTargets + changeLineItemsOrder: ChangeCartLineItemsOrder changeTaxMode: ChangeMyCartTaxMode recalculate: RecalculateCart removeDiscountCode: RemoveCartDiscountCode diff --git a/api-specs/import/annotationTypes/annotations.raml b/api-specs/import/annotationTypes/annotations.raml index 0a213a7d1..a0a92e129 100644 --- a/api-specs/import/annotationTypes/annotations.raml +++ b/api-specs/import/annotationTypes/annotations.raml @@ -72,3 +72,8 @@ annotationTypes: allowedTargets: - TypeDeclaration - Resource + deprecated: + type: boolean + allowedTargets: + - TypeDeclaration + - Resource diff --git a/api-specs/import/api.raml b/api-specs/import/api.raml index cf2df0097..1fbfb7ada 100644 --- a/api-specs/import/api.raml +++ b/api-specs/import/api.raml @@ -14,6 +14,9 @@ baseUri: https://import.europe-west1.gcp.commercetools.com - europe-west1.gcp - us-central1.gcp - australia-southeast1 + - us-east-2.aws + - eu-central-1.aws + - eastus.azure description: | The [Region](/hosts-and-authorization#hosts) in which the Project is hosted. (annotations.serviceRegions): @@ -29,6 +32,18 @@ baseUri: https://import.europe-west1.gcp.commercetools.com region: australia-southeast1 provider: gcp name: Australia (Google Cloud, Sydney) + - uri: https://import.us-east-2.aws.commercetools.com + region: us-east-2 + provider: aws + name: North America (AWS, Ohio) + - uri: https://import.eu-central-1.aws.commercetools.com + region: eu-central-1 + provider: aws + name: Europe (AWS, Frankfurt) + - uri: https://import.eastus.azure.commercetools.com + region: eastus + provider: azure + name: North America (Azure, Virginia) uses: annotations: annotationTypes/annotations.raml postman: annotationTypes/postman.raml diff --git a/api-specs/import/types/price-import.raml b/api-specs/import/types/price-import.raml index 1453766bb..c173d7a20 100644 --- a/api-specs/import/types/price-import.raml +++ b/api-specs/import/types/price-import.raml @@ -76,7 +76,7 @@ types: type: common.DiscountedPrice publish?: type: boolean - (annotations.markDeprecated): true + (annotations.deprecated): true default: false description: | Only the [Embedded Price](/../api/types#price) updates will be published to `staged` and `current` projection. diff --git a/api-specs/import/types/product-import.raml b/api-specs/import/types/product-import.raml index 388c638d2..6a186bf99 100644 --- a/api-specs/import/types/product-import.raml +++ b/api-specs/import/types/product-import.raml @@ -36,14 +36,14 @@ types: type: string suggestTokenizer?: type: SuggestTokenizer - description: The tokenizer defines the tokens that are used to match against the [Suggest Query](/../products-suggestions#suggest-query) input. + description: The tokenizer defines the tokens that are used to match against the [Suggest Query](/../products-suggestions#query-suggestions) input. SuggestTokenizer: discriminator: type properties: type: type: string description: | - The tokenizer defines the tokens that are used to match against the [Suggest Query](/../products-suggestions#suggest-query) input. + The tokenizer defines the tokens that are used to match against the [Suggest Query](/../products-suggestions#query-suggestions) input. CustomTokenizer: type: SuggestTokenizer discriminatorValue: custom diff --git a/api-specs/import/types/product-variant-import.raml b/api-specs/import/types/product-variant-import.raml index 78ab57ab1..9c758204a 100644 --- a/api-specs/import/types/product-variant-import.raml +++ b/api-specs/import/types/product-variant-import.raml @@ -234,7 +234,7 @@ types: Maps to `ProductVariant.assets`. type: common.Asset[] publish?: - (annotations.markDeprecated): true + (annotations.deprecated): true type: boolean description: | If `publish` is set to either `true` or `false`, both staged and current projections are set to the same value provided by the import data. diff --git a/api-specs/import/types/type-import.raml b/api-specs/import/types/type-import.raml index 5bfe029f6..9d3022e56 100644 --- a/api-specs/import/types/type-import.raml +++ b/api-specs/import/types/type-import.raml @@ -205,6 +205,7 @@ types: - category - channel - customer + - customer-group - key-value-document - order - product