diff --git a/src/_data/toc/graphql.yml b/src/_data/toc/graphql.yml index b72b0ba041c..9b4e18c7c84 100644 --- a/src/_data/toc/graphql.yml +++ b/src/_data/toc/graphql.yml @@ -181,10 +181,20 @@ pages: - label: addDownloadableProductsToCart mutation url: /graphql/mutations/add-downloadable-products.html + - label: addProductsToRequisitionList mutation + url: /graphql/mutations/add-products-to-requisition-list.html + edition: b2b-only + exclude_versions: [ "2.3" ] + - label: addProductsToWishlist mutation url: /graphql/mutations/add-products-to-wishlist.html exclude_versions: ["2.3"] + - label: addRequisitionListItemsToCart mutation + url: /graphql/mutations/add-requisition-list-items-to-cart.html + edition: b2b-only + exclude_versions: [ "2.3" ] + - label: addSimpleProductsToCart mutation url: /graphql/mutations/add-simple-products.html @@ -210,6 +220,16 @@ pages: - label: changeCustomerPassword mutation url: /graphql/mutations/change-customer-password.html + - label: clearCustomerCart mutation + url: /graphql/mutations/clear-customer-cart.html + edition: b2b-only + exclude_versions: [ "2.3" ] + + - label: copyItemsBetweenRequisitionLists mutation + url: /graphql/mutations/copy-items-between-requisition-lists.html + edition: b2b-only + exclude_versions: [ "2.3" ] + - label: copyProductsBetweenWishlists mutation url: /graphql/mutations/copy-products-between-wishlists.html edition: ee-only @@ -293,19 +313,24 @@ pages: - label: deleteCustomerAddress mutation url: /graphql/mutations/delete-customer-address.html - - label: deleteWishlist mutation - url: /graphql/mutations/delete-wishlist.html - edition: ee-only - exclude_versions: ["2.3"] - - - label: deletePaymentToken mutation - url: /graphql/mutations/delete-payment-token.html - - label: deleteRequisitionList mutation url: /graphql/mutations/delete-requisition-list.html edition: b2b-only exclude_versions: [ "2.3" ] + - label: deleteRequisitionListItems mutation + url: /graphql/mutations/delete-requisition-list-items.html + edition: b2b-only + exclude_versions: [ "2.3" ] + + - label: deletePaymentToken mutation + url: /graphql/mutations/delete-payment-token.html + + - label: deleteWishlist mutation + url: /graphql/mutations/delete-wishlist.html + edition: ee-only + exclude_versions: ["2.3"] + - label: generateCustomerToken mutation url: /graphql/mutations/generate-customer-token.html @@ -324,6 +349,11 @@ pages: edition: ee-only exclude_versions: ["2.3"] + - label: moveItemsBetweenRequisitionLists mutation + url: /graphql/mutations/move-items-between-requisition-lists.html + edition: b2b-only + exclude_versions: [ "2.3" ] + - label: placeOrder mutation url: /graphql/mutations/place-order.html @@ -354,11 +384,6 @@ pages: url: /graphql/mutations/remove-store-credit.html edition: ee-only - - label: renameRequisitionList mutation - url: /graphql/mutations/rename-requisition-list.html - edition: b2b-only - exclude_versions: [ "2.3" ] - - label: reorderItems mutation url: /graphql/mutations/reorder-items.html exclude_versions: ["2.3"] @@ -449,6 +474,16 @@ pages: url: /graphql/mutations/update-products-in-wishlist.html exclude_versions: ["2.3"] + - label: updateRequisitionList mutation + url: /graphql/mutations/update-requisition-list.html + edition: b2b-only + exclude_versions: [ "2.3" ] + + - label: updateRequisitionListItems mutation + url: /graphql/mutations/update-requisition-list-items.html + edition: b2b-only + exclude_versions: [ "2.3" ] + - label: updateWishlist mutation url: /graphql/mutations/update-wishlist.html edition: ee-only @@ -505,6 +540,11 @@ pages: url: /graphql/interfaces/order-item-interface.html exclude_versions: ["2.3"] + - label: RequisitionListItemInterface attributes and implementations + url: /graphql/interfaces/requisition-list-item-interface.html + edition: b2b-only + exclude_versions: ["2.3"] + - label: ShipmentItemInterface attributes and implementations url: /graphql/interfaces/shipment-item-interface.html exclude_versions: ["2.3"] diff --git a/src/_includes/graphql/customer-output-24.md b/src/_includes/graphql/customer-output-24.md index e926f274357..bf8d1f6f1b2 100644 --- a/src/_includes/graphql/customer-output-24.md +++ b/src/_includes/graphql/customer-output-24.md @@ -27,23 +27,25 @@ Attribute | Data Type | Description `firstname` | String | The customer's first name `gender` | Int | The customer's gender (Male - 1, Female - 2) `group_id` | Int | Deprecated. This attribute is not applicable for GraphQL. The group assigned to the user. Default values are 0 (Not logged in), 1 (General), 2 (Wholesale), and 3 (Retailer) -`id` | Int | Deprecated. This attribute is not applicable for GraphQL.The ID assigned to the customer +`id` | Int | Deprecated. This attribute is not applicable for GraphQL. The ID assigned to the customer `is_subscribed` | Boolean | Indicates whether the customer is subscribed to the company's newsletter `lastname` | String | The customer's family name `middlename` |String | The customer's middle name -`orders()` | {{ customeroutput_text }} | A list of the customer's placed orders{{ crossref_text }} +`orders(filter CustomerOrdersFilterInput, currentPage = 1 Int, pageSize = 20 Int)` | {{ customeroutput_text }} | A list of the customer's placed orders{{ crossref_text }} `prefix` | String | An honorific, such as Dr., Mr., or Mrs. `reviews(pageSize: Int = 20 currentPage: Int = 1)` | {{ productreview_text }} | The list of reviews of the product `reward_points` | {{ rewardpoints_text }} | Details about the customer's reward points `suffix` | String | A value such as Sr., Jr., or III `taxvat` | String | The customer's Tax/VAT number (for corporate customers) -`wishlist` | {{ wishlist_text }} | Contains the contents of the customer's wish lists +`wishlist` | Wishlist! | Deprecated. Use `wishlist_v2` instead. Contains the contents of the customer's wish lists +`wishlist_v2(id ID!)` | {{ wishlist_text }} | Retrieve the specified wish list identified by the unique ID for a Wishlist object -For B2B, company users can have the following attributes. +For B2B, company administrators and users can have the following attributes. Attribute | Data Type | Description --- | --- | --- `job_title` | String | The job title for a B2B company user +`requisition_lists (pageSize = 20 Int, currentPage = 1 Int, filter RequisitionListFilterInput)` | RequisitionLists | Contains the customer's requisition lists `role`| CompanyRole | The role name and permissions assigned to the company user `status` | CompanyUserStatusEnum | Indicates whether the company user is ACTIVE or INACTIVE `team` | CompanyTeam | The team the company user is assigned to diff --git a/src/_includes/graphql/requisition-list.md b/src/_includes/graphql/requisition-list.md new file mode 100644 index 00000000000..1dd3af89119 --- /dev/null +++ b/src/_includes/graphql/requisition-list.md @@ -0,0 +1,20 @@ +The `RequisitionList` object contains the following attributes. + +Attribute | Data Type | Description +--- | --- | --- +`description` | String | Optional text that describes the requisition list +`items` | [RequistionListItems](#RequistionListItems) | An array of products added to the requisition list +`items_count` | Int! | The number of items in the list +`name` | String! | The requisition list name +`uid` | ID! | The unique requisition list ID +`updated_at` | String | The time of the last modification of the requisition list + +### RequistionListItems attributes {#RequistionListItems} + +The `RequistionListItems` object contains the following attributes. + +Attribute | Data Type | Description +--- | --- | --- +`items` | [[RequisitionListItemInterface]!]({{page.baseurl}}/graphql/interfaces/requisition-list-item-interface.html) | An array of items in the requisition list +`page_info` | SearchResultPageInfo | Contains pagination metadata +`total_pages` | Int! | The number of pages returned diff --git a/src/_includes/graphql/store-config.md b/src/_includes/graphql/store-config.md index 00e6d4358b2..7af85a072eb 100644 --- a/src/_includes/graphql/store-config.md +++ b/src/_includes/graphql/store-config.md @@ -16,7 +16,6 @@ Attribute | Data Type | Description | Default or example value `base_media_url` | String | The fully-qualified URL that specifies the location of user media files | `http://magentohost.example.com/pub/media/` `base_static_url` | String | The fully-qualified URL that specifies the location of static view files | `http://magentohost.example.com/pub/static/` `base_url` | String | The store's fully-qualified base URL | `http://magentohost.example.com/` -`btob_website_configuration_requisition_list_active` | String | Indicates if requisition lists are enabled. Possible values: 1 (Yes) and 0 (No) | 0 `cart_gift_wrapping` | String | Indicates if gift wrapping prices are displayed on the Shopping Cart page. Possible values: 1 (Yes) and 0 (No) | 1 `cart_printed_card` | String | Indicates if printed card prices are displayed on the Shopping Cart page. Possible values: 1 (Yes) and 0 (No) | 1 `catalog_default_sort_by` | String | The default sort order of the search results list | `position` @@ -42,6 +41,7 @@ Attribute | Data Type | Description | Default or example value `id` | Int | Deprecated. Use `store_code` instead. The ID number assigned to the store | `1` `is_default_store` | Boolean | Indicates whether the store view has been designated as the default within the store group | true or false `is_default_store_group` | Boolean | Indicates whether the store group has been designated as the default within the website | true or false +`is_requisition_list_active` | String | Indicates if requisition lists are enabled. Possible values: 1 (Yes) and 0 (No) | 0 `list_mode` | String | The format of the search results list | `grid-list` `list_per_page` | Int | The default number of products per page in List View | `10` `list_per_page_values` | String | A list of numbers that define how many products can be displayed in List View | `5,10,15,20,25` diff --git a/src/guides/v2.4/graphql/interfaces/requisition-list-item-interface.md b/src/guides/v2.4/graphql/interfaces/requisition-list-item-interface.md new file mode 100644 index 00000000000..b9566135787 --- /dev/null +++ b/src/guides/v2.4/graphql/interfaces/requisition-list-item-interface.md @@ -0,0 +1,160 @@ +--- +group: graphql +title: RequisitionListItemInterface attributes and implementations +b2b_only: true +--- + +`RequisitionListItemInterface` provides details about items in a requisition list. It has the following implementations: + +* [`BundleRequisitionListItem`](#BundleRequisitionListItem) +* [`ConfigurableRequisitionListItem`](#ConfigurableRequisitionListItem) +* [`DownloadableRequisitionListItem`](#DownloadableRequisitionListItem) +* [`GiftCardRequisitionListItem`](#GiftCardRequisitionListItem) +* [`SimpleRequisitionListItem`](#SimpleRequisitionListItem) +* [`VirtualRequisitionListItem`](#VirtualRequisitionListItem) + +{:.bs-callout-info} +There is not an implementation for grouped products. The items within a grouped product are managed individually. + +## Attributes + +The `RequisitionListItemInterface` defines the following attributes. + +Attribute | Data Type | Description +--- | --- | --- +`customizable_options` | [SelectedCustomizableOption] | Selected custom options for an item in the requisition list +`product` | [ProductInterface!]({{page.baseurl}}/graphql/interfaces/product-interface.html) | Contains details about an item added to a requisition list +`quantity` | Float! | The amount added +`uid` | ID! | The unique ID for the requisition list item + +## Implementations + +### BundleRequisitionListItem attributes {#BundleRequisitionListItem} + +The `BundleRequisitionListItem` implementation adds the following attribute. + +Attribute | Data Type | Description +--- | --- | --- +`bundle_options`| [SelectedBundleOption]! | An array of selected options for a bundle product + +### ConfigurableRequisitionListItem attributes {#ConfigurableRequisitionListItem} + +The `ConfigurableRequisitionListItem` implementation adds the following attribute. + +Attribute | Data Type | Description +--- | --- | --- +`configurable_options`| [SelectedConfigurableOption] | Selected configurable options for an item in the requisition list + +### DownloadableRequisitionListItem attributes {#DownloadableRequisitionListItem} + +The `ConfigurableRequisitionListItem` implementation adds the following attributes. + +Attribute | Data Type | Description +--- | --- | --- +`links`| [DownloadableProductLinks] | An array of links for downloadable products in the requisition list +`samples` | [DownloadableProductSamples] | An array of links to downloadable product samples + +### GiftCardRequisitionListItem attributes {#GiftCardRequisitionListItem} + +The `GiftCardRequisitionListItem` implementation adds the following attribute. + +Attribute | Data Type | Description +--- | --- | --- +`gift_card_options` | GiftCardOptions! | An array that defines gift card properties + +#### GiftCardOptions attributes {#GiftCardOptions} + +The GiftCardOptions object provides details about a gift card. All attributes are optional for a requisition list. + +Attribute | Data Type | Description +--- | --- | --- +`amount`| Money | The amount and currency of the gift card +`custom_giftcard_amount` | Money | The custom amount and currency of the gift card +`message` | String | A message to the recipient +`recipient_email` | String | The name of the person receiving the gift card +`sender_email` | String | The email address of the person sending the gift card +`sender_name` | String | The name of the person sending the gift card + +### SimpleRequisitionListItem attributes {#SimpleRequisitionListItem} + +The SimpleRequisitionListItem data type does not provide additional attributes to the `RequisitionListItemInterface`. + +### VirtualRequisitionListItem attributes {#VirtualRequisitionListItem} + +The VirtualRequisitionListItem data type does not provide additional attributes to the `RequisitionListItemInterface`. + +## Example usage + +The following mutation adds a product to a requisition list and returns information about the products in the list. + +**Request:** + +```graphql +mutation { + addProductsToRequisitionList( + requisitionListUid: "Mg==" + requisitionListItems: [ + { + sku: "MS10" + quantity: 1 + selected_options: ["Y29uZmlndXJhYmxlLzkzLzUw","Y29uZmlndXJhYmxlLzE2MC8xNjg"] + } + ] + ) { + requisition_list { + uid + items { + items { + ... on RequisitionListItemInterface { + uid + product { + uid + sku + name + } + quantity + } + } + } + items_count + } + } +} +``` + +**Response:** + +```json +{ + "data": { + "addProductsToRequisitionList": { + "requisition_list": { + "uid": "Mg==", + "items": { + "items": [ + { + "uid": "Mg==", + "product": { + "uid": "MTA=", + "sku": "24-WB05", + "name": "Savvy Shoulder Tote" + }, + "quantity": 1 + }, + { + "uid": "Mw==", + "product": { + "uid": "NTk2", + "sku": "MS10", + "name": "Logan HeatTec® Tee" + }, + "quantity": 1 + } + ] + }, + "items_count": 2 + } + } + } +} +``` diff --git a/src/guides/v2.4/graphql/mutations/add-products-to-requisition-list.md b/src/guides/v2.4/graphql/mutations/add-products-to-requisition-list.md new file mode 100644 index 00000000000..be0e6146e4e --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/add-products-to-requisition-list.md @@ -0,0 +1,125 @@ +--- +group: graphql +title: addProductsToRequisitionList mutation +b2b_only: true +contributor_name: EY +--- +The `addProductsToRequisitionList` mutation adds products to a requisition list. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + addProductsToRequisitionList( + requisitionListUid: ID! + requisitionListItems: [RequisitionListItemsInput!]! + ) { + AddProductsToRequisitionListOutput + } +} +``` + +## Example usage + +The following example adds products to a requisition list. + +**Request:** + +``` graphql +mutation { + addProductsToRequisitionList( + requisitionListUid: "Mg==" + requisitionListItems: [ + { + sku: "MS10" + quantity: 1 + selected_options: ["Y29uZmlndXJhYmxlLzkzLzUw","Y29uZmlndXJhYmxlLzE2MC8xNjg"] + } + ] + ) { + requisition_list { + uid + items { + items { + ... on RequisitionListItemInterface { + uid + product { + uid + sku + name + } + quantity + } + } + } + items_count + } + } +} +``` + +**Response:** + +``` json +{ + "data": { + "addProductsToRequisitionList": { + "requisition_list": { + "uid": "Mg==", + "items": { + "items": [ + { + "uid": "Mw==", + "product": { + "uid": "NTk2", + "sku": "MS10", + "name": "Logan HeatTec® Tee" + }, + "quantity": 1 + } + ] + }, + "items_count": ` + } + } + } +} +``` + +## Input attributes + +The `addProductsToRequisitionList` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItems`| [[RequisitionListItemsInput](#RequisitionListItemsInput)!]! | An array of products to be added to the requisition list +`requisitionListUid`| ID! | The unique ID of the requisition list + +### RequisitionListItemsInput attributes {#RequisitionListItemsInput} + +The `RequisitionListItemsInput` type contains the list of products to add to a requisition list. + +Attribute | Data Type | Description +--- | --- | --- +`entered_options` | [EnteredOptionInput!] | An array of customer entered option IDs +`parent_sku` | String | For configurable products, the SKU of the parent product +`quantity` | Float | The quantity of the product to add +`selected_options` | [String!] | An array of selected option IDs +`sku` | String! | The product SKU + +## Output attributes + +The `addProductsToRequisitionList` object returns the requisition list object. + +Attribute | Data Type | Description +--- | --- | --- +`requisition_list` | [[RequisitionList](#RequisitionList)] | The requisition list after the items were added + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} diff --git a/src/guides/v2.4/graphql/mutations/add-requisition-list-items-to-cart.md b/src/guides/v2.4/graphql/mutations/add-requisition-list-items-to-cart.md new file mode 100644 index 00000000000..584e5ebf107 --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/add-requisition-list-items-to-cart.md @@ -0,0 +1,137 @@ +--- +group: graphql +title: addRequisitionListItemsToCart mutation +b2b_only: true +contributor_name: EY +--- +The `addRequisitionListItemsToCart` mutation adds requisition list items to the cart. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + addRequisitionListItemsToCart ( + requisitionListUid: ID + requisitionListItemUids: [ID!] + ) { + AddRequisitionListItemsToCartOutput + } +} +``` + +## Example usage + +The following example adds items to the cart. + +**Request:** + +``` graphql +mutation { + addRequisitionListItemsToCart ( + requisitionListUid: "Mg==" + requisitionListItemUids: + ["Mw==", "Ng==", "Nw=="] + ) + { + status + cart { + items { + uid + product { + uid + sku + name + } + } + } + } +} +``` + +**Response:** + +``` json +{ + "data": { + "addRequisitionListItemsToCart": { + "status": true, + "cart": { + "items": [ + { + "uid": "NQ==", + "product": { + "uid": "NTk2", + "sku": "MS10", + "name": "Logan HeatTec® Tee" + } + }, + { + "uid": "Nw==", + "product": { + "uid": "MTI=", + "sku": "24-WB03", + "name": "Driven Backpack" + } + }, + { + "uid": "OA==", + "product": { + "uid": "Mg==", + "sku": "24-MB04", + "name": "Strive Shoulder Pack" + } + } + ] + } + } + } +} +``` + +## Input attributes + +The `addRequisitionListItemsToCart` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItemUids`| [ID!] | An array of UIDs presenting products to be added to the cart. If no UIDs are specified, all items in the requisition list will be added to the cart +`requisitionListUid`| ID! | The unique ID of the requisition list + +## Output attributes + +The `addRequisitionListItemsToCart` object returns the status, cart and errors object. + +Attribute | Data Type | Description +--- | --- | --- +`add_requisition_list_items_to_cart_user_errors` | [[AddRequisitionListItemToCartUserError!](#AddRequisitionListItemToCartUserError)] | Indicates why the attempt to add items to the requistion list was not successful +`cart` | [Cart](#CartObject) | The cart after adding requisition list items. +`status` | Boolean! | Indicates whether the attempt to add items to the requisition list was successful + +### AddRequisitionListItemToCartUserError attributes {#AddRequisitionListItemToCartUserError} + +The `AddRequisitionListItemToCartUserError` type contains the list of errors which indicates why the attempt to add items to the requistion list was not successful. + +Attribute | Data Type | Description +--- | --- | --- +`message` | String! | A description of the error +`type` | [AddRequisitionListItemToCartUserErrorType!](#AddRequisitionListItemToCartUserErrorType) | The Error type + +### AddRequisitionListItemToCartUserErrorType {#AddRequisitionListItemToCartUserErrorType} + +Type | Description +--- | --- +`LOW_QUANTITY` | The quantity of one of the items is low +`OPTIONS_UPDATED` | The options have been updated +`OUT_OF_STOCK` | One of the items is out of stock +`UNAVAILABLE_SKU` | One of the items SKU is unavailable + +### Cart object {#CartObject} + +The `Cart` object can contain the following attributes. + +{% include graphql/cart-object-24.md %} diff --git a/src/guides/v2.4/graphql/mutations/clear-customer-cart.md b/src/guides/v2.4/graphql/mutations/clear-customer-cart.md new file mode 100644 index 00000000000..bff9cd560be --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/clear-customer-cart.md @@ -0,0 +1,75 @@ +--- +group: graphql +title: clearCustomerCart mutation +b2b_only: true +contributor_name: EY +--- +The `clearCustomerCart` mutation clears the customer's cart. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + clearCustomerCart( + cartUid: String! + ) { + ClearCustomerCartOutput + } +} +``` + +## Example usage + +The following example clears the customer's cart. + +**Request:** + +``` graphql +mutation { + clearCustomerCart( + cartUid: "8k0Q4MpH2IGahWrTRtqM61YV2MtLPApz" + ) { + status + } +} +``` + +**Response:** + +``` json +{ + "data": { + "clearCustomerCart": { + "status": "true" + } + } +} +``` + +## Input attributes + +The `clearCustomerCart` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`cartUid`| String! | Indicates whether cart was cleared + +## Output attributes + +The `clearCustomerCart` object returns the status and cart object. + +Attribute | Data Type | Description +--- | --- | --- +`cart` | [Cart](#CartObject) | The cart after clearing items +`status` | Boolean! | The requisition list after the items were added + +### Cart object {#CartObject} + +The `Cart` object can contain the following attributes. + +{% include graphql/cart-object-24.md %} diff --git a/src/guides/v2.4/graphql/mutations/copy-items-between-requisition-lists.md b/src/guides/v2.4/graphql/mutations/copy-items-between-requisition-lists.md new file mode 100644 index 00000000000..8b73a04bda0 --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/copy-items-between-requisition-lists.md @@ -0,0 +1,102 @@ +--- +group: graphql +title: copyItemsBetweenRequisitionLists mutation +b2b_only: true +contributor_name: EY +--- +The `copyItemsBetweenRequisitionLists` mutation copies items from one requisition list to another. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + copyItemsBetweenRequisitionLists( + sourceRequisitionListUid: ID!, + destinationRequisitionListUid: ID, + requisitionListItem: CopyItemsBetweenRequisitionListsInput + ) { + CopyItemsFromRequisitionListsOutput + } +} +``` + +## Example usage + +The following example copies an item from one requisition list to another. + +**Request:** + +``` graphql +mutation { + copyItemsBetweenRequisitionLists( + sourceRequisitionListUid: "Mg==", + destinationRequisitionListUid: "Mw==", + requisitionListItem: { + requisitionListItemUids: [ + "Nw==" + ] + } + ) { + requisition_list { + uid + name + items_count + } + } +} +``` + +**Response:** + +``` json +{ + "data": { + "copyItemsBetweenRequisitionLists": { + "requisition_list": { + "uid": "Mw==", + "name": "Rarely ordered items", + "items_count": 3 + } + } + } +} +``` + +## Input attributes + +The `copyItemsBetweenRequisitionLists` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`destinationRequisitionListUid`| ID | The unique ID of the destination requisition list. If null, a new requisition list will be created +`requisitionListItem`| [[CopyItemsBetweenRequisitionListsInput](#CopyItemsBetweenRequisitionListsInput)] | An array of selected requisition list items that are to be copied +`sourceRequisitionListUid`| ID! | The unique ID of the source requisition list + +### CopyItemsBetweenRequisitionListsInput attributes {#CopyItemsBetweenRequisitionListsInput} + +The `CopyItemsBetweenRequisitionListsInput` type contains the list of products to copy from one requisition list to other. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItemUids` | [ID!]! | An array of IDs representing products copied from one requisition list to another + +## Output attributes + +The `copyItemsBetweenRequisitionLists` mutation returns the requisition list object to which the products were copied to. + +Attribute | Data Type | Description +--- | --- | --- +`requisition_list` | [[RequisitionList](#RequisitionList)] | The destination requisition list after the items were copied + +### RequisitionList attributes {#RequisitionList} +{% include graphql/requisition-list.md %} + +## Related topics + +* [moveItemsBetweenRequisitionLists mutation]({{page.baseurl}}/graphql/mutations/move-items-between-requisition-lists.html) +* [deleteRequisitionListItems mutation]({{page.baseurl}}/graphql/mutations/delete-requisition-list-items.html) \ No newline at end of file diff --git a/src/guides/v2.4/graphql/mutations/create-requisition-list.md b/src/guides/v2.4/graphql/mutations/create-requisition-list.md index a9dfa774315..65463fba9d9 100644 --- a/src/guides/v2.4/graphql/mutations/create-requisition-list.md +++ b/src/guides/v2.4/graphql/mutations/create-requisition-list.md @@ -10,7 +10,7 @@ The `createRequisitionList` mutation creates a requisition list for the logged i This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). {:.bs-callout-info} -Use the [`storeConfig` query]({{page.baseurl}}/graphql/queries/store-config.html) with the `btob_website_configuration_requisition_list_active` attribute to determine whether requisition lists are supported. +Use the [`storeConfig` query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. ## Syntax @@ -33,11 +33,12 @@ The following example creates the `Frequently Ordered Products` requisition list ```graphql mutation { - createRequisitionList( - name: "Frequently Ordered Products", + createRequisitionList(input:{ + name: "Frequently Ordered Products" description: "Frequently ordered products list" + } ) { - list { + requisition_list { uid name description @@ -52,9 +53,9 @@ mutation { { "data": { "createRequisitionList": { - "list": { - "uid": "4", - "name": "Frequently Ordered Products", + "requisition_list": { + "uid": "Mw==" + "name": "Frequently Ordered Products" "description": "Frequently ordered products list" } } @@ -73,15 +74,17 @@ Attribute | Data Type | Description ## Output attributes -The `createRequisitionListOutput` object returns the `uid` of the new requisition list as well as the input attributes. +The `createRequisitionList` mutation returns the new requisition list. Attribute | Data Type | Description --- | --- | --- -`description` | String | The requisition list description -`name` | String! | The requisition list name -`uid` | ID! | The ID of the new requisition list +`requisition_list` | [[RequisitionList](#RequisitionList)] | The created requisition list + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} ## Related topics -* [renameRequisitionList mutation]({{page.baseurl}}/graphql/mutations/rename-requisition-list.html) +* [updateRequisitionList mutation]({{page.baseurl}}/graphql/mutations/update-requisition-list.html) * [deleteRequisitionList mutation]({{page.baseurl}}/graphql/mutations/delete-requisition-list.html) diff --git a/src/guides/v2.4/graphql/mutations/delete-requisition-list-items.md b/src/guides/v2.4/graphql/mutations/delete-requisition-list-items.md new file mode 100644 index 00000000000..bb0ae5d55ab --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/delete-requisition-list-items.md @@ -0,0 +1,84 @@ +--- +group: graphql +title: deleteRequisitionListItems mutation +b2b_only: true +contributor_name: EY +--- +The `deleteRequisitionListItems` mutation removes items from the specified requisiton list for the logged in customer. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + deleteRequisitionListItems( + requisitionListUid: ID! + requisitionListItemUids: [ID!]! + ) { + DeleteRequisitionListItemsOutput + } +} +``` +## Example usage + +The following example removes the specified items from the requisition list. + +**Request:** + +``` graphql +mutation { + deleteRequisitionListItems( + requisitionListUid: "Mg==", + requisitionListItemUids: ["NA==","NQ=="] + ) { + requisition_list { + uid + items_count + } + } +} +``` + +**Response:** + +``` json +{ + "data": { + "deleteRequisitionListItems": { + "requisition_list": { + "uid": "Mg==", + "items_count": 1 + } + } + } +} +``` + +## Input attributes + +The `deleteRequisitionListItems` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItemUids`| [ID!]! | An array of UIDs representing products to be removed from the requisition list +`requisitionListUid`| ID! | The unique ID of the requisition list + +## Output attributes + +The `deleteRequisitionListItems` object returns the requisition list after the deletion of items. + +Attribute | Data Type | Description +--- | --- | --- +`requisition_list` | [RequisitionList](#RequisitionList) | The requisition list after removing items + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} +## Related topics + +* [updateRequisitionList mutation]({{page.baseurl}}/graphql/mutations/update-requisition-list.html) +* [deleteRequisitionList mutation]({{page.baseurl}}/graphql/mutations/delete-requisition-list.html) \ No newline at end of file diff --git a/src/guides/v2.4/graphql/mutations/delete-requisition-list.md b/src/guides/v2.4/graphql/mutations/delete-requisition-list.md index f19af8edc63..71a0bd591d8 100644 --- a/src/guides/v2.4/graphql/mutations/delete-requisition-list.md +++ b/src/guides/v2.4/graphql/mutations/delete-requisition-list.md @@ -5,16 +5,20 @@ b2b_only: true contributor_name: Zilker Technology contributor_link: https://www.ztech.io/ --- -The `deleteRequisitionList` mutation deletes a requisition list of the logged in customer. + +The `deleteRequisitionList` mutation deletes a requisition list of the logged in customer. The response can include any remaining requisition lists. This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + ## Syntax ```graphql mutation { deleteRequisitionList( - uid: ID! + requisitionListUid: ID! ) { deleteRequisitionListOutput } @@ -23,16 +27,23 @@ mutation { ## Example usage -The following example deletes the requisition list with `uid` 4. +The following example deletes a requisition list. **Request:** ```graphql mutation { deleteRequisitionList( - uid: "4" + requisitionListUid: "Mw==" ) { - result + status + requisition_lists { + total_count + items { + uid + name + } + } } } ``` @@ -43,7 +54,16 @@ mutation { { "data": { "deleteRequisitionList": { - "result": true + "status": true, + "requisition_lists": { + "total_count": 1 + "items": [ + { + "uid": "Mg==", + "name": "Frequently Ordered Products" + } + ] + } } } } @@ -55,17 +75,32 @@ The `deleteRequisitionList` mutation requires the following input. Attribute | Data Type | Description --- | --- | --- -`uid` | ID! | The ID of the requisition list to delete +`requisitionListUid` | ID! | The ID of the requisition list to delete ## Output attributes -The `deleteRequisitionListOutput` object returns the `uid` of the new requisition list as well as the input attributes. +The `deleteRequisitionList` mutation returns the status of the operation and any undeleted requisition lists. + +Attribute | Data Type | Description +--- | --- | --- +`requisition_lists` | [[RequisitionLists](#RequisitionLists)] | Contains the customer's remaining requisition lists +`status` | Boolean | Indicates whether the request to delete the requisition list was successful + +### RequisitionLists attributes {#RequisitionLists} + +The RequisitionLists object contains array of requisition list items and pagination information. Attribute | Data Type | Description --- | --- | --- -`result` | Boolean | Indicates whether the requisition list was deleted +`items` | [[RequisitionList](#RequisitionList)] | An array of requisition lists +`page_info` | SearchResultPageInfo | Contains pagination metadata +`total_count` | Int | The number of returned requisition lists + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} ## Related topics * [createRequisitionList mutation]({{page.baseurl}}/graphql/mutations/create-requisition-list.html) -* [renameRequisitionList mutation]({{page.baseurl}}/graphql/mutations/rename-requisition-list.html) +* [updateRequisitionList mutation]({{page.baseurl}}/graphql/mutations/update-requisition-list.html) diff --git a/src/guides/v2.4/graphql/mutations/move-items-between-requisition-lists.md b/src/guides/v2.4/graphql/mutations/move-items-between-requisition-lists.md new file mode 100644 index 00000000000..18e7d7cae47 --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/move-items-between-requisition-lists.md @@ -0,0 +1,113 @@ +--- +group: graphql +title: moveItemsBetweenRequisitionLists mutation +b2b_only: true +contributor_name: EY +--- +The `moveItemsBetweenRequisitionLists` mutation moves items from one requisition list to another. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + moveItemsBetweenRequisitionLists( + sourceRequisitionListUid: ID! + destinationRequisitionListUid: ID + requisitionListItem: MoveItemsBetweenRequisitionListsInput + ) { + MoveItemsBetweenRequisitionListsOutput + } +} +``` + +## Example usage + +The following example moves an item from one requisition list to another. + +**Request:** + +``` graphql +mutation { + moveItemsBetweenRequisitionLists( + sourceRequisitionListUid: "Mg==" + destinationRequisitionListUid: "Mw==" + requisitionListItem: { + requisitionListItemUids: + ["MTI="] + } + ) { + source_requisition_list { + uid + name + items_count + } + destination_requisition_list { + uid + name + items_count + } + } +} +``` + +**Response:** + +``` json +{ + "data": { + "moveItemsBetweenRequisitionLists": { + "source_requisition_list": { + "uid": "Mg==", + "name": "Frequently Ordered Products", + "items_count": 3 + }, + "destination_requisition_list": { + "uid": "Mw==", + "name": "Rarely ordered items", + "items_count": 2 + } + } + } +} +``` + +## Input attributes + +The `moveItemsBetweenRequisitionLists` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`destinationRequisitionListUid`| ID! | The unique ID of the destination requisition list. If null, a new requisition list will be created +`requisitionListItem`| [[MoveItemsBetweenRequisitionListsInput](#MoveItemsBetweenRequisitionListsInput)] | An array of selected requisition list items that are to be moved from the source to the destination list +`sourceRequisitionListUid`| ID! | The unique ID of the source requisition list + +### MoveItemsBetweenRequisitionListsInput attributes {#MoveItemsBetweenRequisitionListsInput} + +The `MoveItemsBetweenRequisitionListsInput` type contains the list of products to move from one requisition list to other. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItemUids` | [ID!]! | An array of IDs representing products moved from one requisition list to another + +## Output attributes + +The `moveItemsBetweenRequisitionLists` object returns the source requisition list and the destination requisition list object. + +Attribute | Data Type | Description +--- | --- | --- +`destination_requisition_list` | [[RequisitionList](#RequisitionList)] | The destination requisition list after moving items +`source_requisition_list` | [[RequisitionList](#RequisitionList)] | The source requisition list after moving items + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} + +## Related topics + +* [copyItemsBetweenRequisitionLists mutation]({{page.baseurl}}/graphql/mutations/copy-items-between-requisition-lists.html) +* [deleteRequisitionListItems mutation]({{page.baseurl}}/graphql/mutations/delete-requisition-list-items.html) \ No newline at end of file diff --git a/src/guides/v2.4/graphql/mutations/update-requisition-list-items.md b/src/guides/v2.4/graphql/mutations/update-requisition-list-items.md new file mode 100644 index 00000000000..c1ae269d1cb --- /dev/null +++ b/src/guides/v2.4/graphql/mutations/update-requisition-list-items.md @@ -0,0 +1,124 @@ +--- +group: graphql +title: updateRequisitionListItems mutation +b2b_only: true +contributor_name: EY +--- +The `updateRequisitionListItems` mutation updates products in a requisition list. + +This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). + +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + +## Syntax + +```graphql +mutation { + updateRequisitionListItems( + requisitionListUid: ID! + requisitionListItems: [UpdateRequisitionListItemsInput!]! + ) { + UpdateRequisitionListItemsOutput + } +} +``` + +## Example usage + +The following example updates the quantity of an item in a requisition list. + +**Request:** + +``` graphql +mutation { + updateRequisitionListItems( + requisitionListUid: "Mg==", + requisitionListItems: [ + { + item_id: "Mw==" + quantity: 2 + } + ] + ){ + requisition_list { + uid + name + items_count + items { + items { + uid + quantity + product { + uid + name + sku + } + } + } + } + } +} +``` + +**Response:** + +``` json +{ +{ + "data": { + "updateRequisitionListItems": { + "requisition_list": { + "uid": "Mg==", + "name": "Frequently Ordered Products", + "items_count": 1, + "items": { + "items": [ + { + "uid": "Mw==", + "quantity": 2, + "product": { + "uid": "NTk2", + "name": "Logan HeatTec® Tee", + "sku": "MS10" + } + } + ] + } + } + } + } +} +``` + +## Input attributes + +The `updateRequisitionListItems` mutation requires the following input. + +Attribute | Data Type | Description +--- | --- | --- +`requisitionListItems`| [[UpdateRequisitionListItemsInput](#UpdateRequisitionListItemsInput)!]! | An array of products to be updated in the requisition list +`requisitionListUid`| ID! | The unique ID of the requisition list + +### UpdateRequisitionListItemsInput attributes {#UpdateRequisitionListItemsInput} + +The `UpdateRequisitionListItemsInput` type contains the list of products to be updated in the requisition list. + +Attribute | Data Type | Description +--- | --- | --- +`entered_options` | [EnteredOptionInput!] | An array of customer entered option IDs +`item_id` | ID! | The ID of the requisition list item to update +`quantity` | Float | The new quantity of the item +`selected_options` | [String!] | An array of selected option IDs + +## Output attributes + +The `updateRequisitionListItems` object returns the requisition list object. + +Attribute | Data Type | Description +--- | --- | --- +`requisition_list` | [[RequisitionList](#RequisitionList)] | The requisition list after the items were updated + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} diff --git a/src/guides/v2.4/graphql/mutations/rename-requisition-list.md b/src/guides/v2.4/graphql/mutations/update-requisition-list.md similarity index 55% rename from src/guides/v2.4/graphql/mutations/rename-requisition-list.md rename to src/guides/v2.4/graphql/mutations/update-requisition-list.md index 36d5fe9969d..eb3d9b59bb1 100644 --- a/src/guides/v2.4/graphql/mutations/rename-requisition-list.md +++ b/src/guides/v2.4/graphql/mutations/update-requisition-list.md @@ -1,24 +1,27 @@ --- group: graphql -title: renameRequisitionList mutation +title: updateRequisitionList mutation b2b_only: true contributor_name: Zilker Technology contributor_link: https://www.ztech.io/ --- -The `renameRequisitionList` mutation updates the name and, optionally, the description of a requisition list. +The `updateRequisitionList` mutation updates the name and, optionally, the description of a requisition list. This mutation requires a valid [customer authentication token]({{page.baseurl}}/graphql/mutations/generate-customer-token.html). +{:.bs-callout-info} +Use the [storeConfig query]({{page.baseurl}}/graphql/queries/store-config.html) with the `is_requisition_list_active` attribute to determine whether requisition lists are enabled. + ## Syntax ```graphql mutation { - renameRequisitionList( - uid: ID! + updateRequisitionList( + requisitionListUid: ID! name: String! description: String ) { - renameRequisitionListOutput + updateRequisitionListOutput } } ``` @@ -31,12 +34,13 @@ The following example renames the `Frequently Ordered Products` requisition list ```graphql mutation { - renameRequisitionList( - uid: "4" - name: "Frequently Ordered Essential Products", + updateRequisitionList(input:{ + name: "Frequently Ordered Essential Products" description: "Frequently ordered essential products list" + } + requisitionListUid: "Mw==" ) { - list { + requisition_list { uid name description @@ -50,10 +54,10 @@ mutation { ```json { "data": { - "renameRequisitionList": { - "list": { - "uid": "4", - "name": "Frequently Ordered Essential Products", + "updateRequisitionList": { + "requisition_list": { + "uid": "Mw==" + "name": "Frequently Ordered Essential Products" "description": "Frequently ordered essential products list" } } @@ -63,23 +67,25 @@ mutation { ## Input attributes -The `renameRequisitionList` mutation requires the following input. +The `updateRequisitionList` mutation requires the following input. Attribute | Data Type | Description --- | --- | --- `description`| String | Description of the customer's requisition list `name` | String! | The name of the customer's requisition list -`uid` | ID! | The ID of the new requisition list +`requisitionListUid` | ID! | The ID of the new requisition list ## Output attributes -The `renameRequisitionListOutput` object returns the `uid` of the new requisition list as well as the input attributes. +The `updateRequisitionList` mutation returns the new requisition list after updating a list. Attribute | Data Type | Description --- | --- | --- -`description` | String | The requisition list description -`name` | String! | The requisition list name -`uid` | ID! | The ID of the new requisition list +`requisition_list` | [[RequisitionList](#RequisitionList)] | The updated requisition list + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} ## Related topics diff --git a/src/guides/v2.4/graphql/queries/customer.md b/src/guides/v2.4/graphql/queries/customer.md index 409cf43432e..d342526e0f6 100644 --- a/src/guides/v2.4/graphql/queries/customer.md +++ b/src/guides/v2.4/graphql/queries/customer.md @@ -730,26 +730,6 @@ Attribute | Data Type | Description {% include graphql/product-review.md %} -### Wishlist attributes {#Wishlist} - -Attribute | Data type | Description ---- | --- | --- -`items` | [[WishlistItem]](#wishlistitem) | An array of items in the customer's wish list -`items_count` | Int | The number of items in the wish list -`id` | ID | The unique identifier of the wish list -`sharing_code` | String | An encrypted code that Magento uses to link to the wish list -`updated_at` | String | The time of the last modification to the wish list - -#### WishlistItem attributes {#wishlistitem} - -Attribute | Data type | Description ---- | --- | --- -`added_at` | String | The time when the customer added the item to the wish list -`description` | String | The customer's comment about this item -`id` | Int | The wish list item ID -`product` | [ProductInterface]({{ page.baseurl }}/graphql/interfaces/product-interface.html) | The ProductInterface contains attributes that are common to all types of products. Note that descriptions may not be available for custom and EAV attributes -`qty` | Float | The quantity of this wish list item - ### Store credit attributes In {{site.data.var.ee}}, the merchant can assign store credit to customers. Magento maintains the history of all changes to the balance of store credit available to the customer. The customer must be logged in to access the store credit history and balance. @@ -795,6 +775,33 @@ Attribute | Data Type | Description {% include graphql/wishlist.md %} +## B2B output attributes {#B2b} + +If B2B is installed the `Customer` object can contain additional information. + +### RequisitionListFilterInput attributes {#RequisitionListFilterInput} + +The `RequisitionListFilterInput` object defines filters that limit the number of requisition lists returned. + +Attribute | Data Type | Description +--- | --- | --- +`name` | FilterMatchTypeInput | Filter by the display name of the requisition list +`uids` | FilterEqualTypeInput | Filter requisition lists by one or more requisition list IDs + +### RequisitionList attributes {#RequisitionList} + +{% include graphql/requisition-list.md %} + +### RequisitionLists attributes {#RequisitionList} + +The RequisitionLists object contains an array of requisition lists. + +Attribute | Data Type | Description +--- | --- | --- +`items` | [[RequisitionList]](#RequisitionList) | An array of requisition lists +`page_info` | SearchResultPageInfo | Contains pagination metadata +`total_count` | Int | The number of returned requisition lists + ## Related topics * [isEmailAvailable query]({{page.baseurl}}/graphql/queries/is-email-available.html) diff --git a/src/guides/v2.4/release-notes/commerce-2-4-2.md b/src/guides/v2.4/release-notes/commerce-2-4-2.md index c996893f273..bd995ffdbeb 100644 --- a/src/guides/v2.4/release-notes/commerce-2-4-2.md +++ b/src/guides/v2.4/release-notes/commerce-2-4-2.md @@ -93,9 +93,9 @@ This release adds GraphQL coverage for the following features: * Added support for returned merchandise authorizations (RMA) * Added support for the following B2B features: - * Companies, including administrators, users, roles, and structure - * Company credit - * [Create]({{ page.baseurl }}/graphql/mutations/create-requisition-list.html), [delete]({{ page.baseurl }}/graphql/mutations/delete-requisition-list.html), and update requisition lists + * Companies. You can add company [administrators]({{page.baseurl}}/graphql/mutations/create-company.html), [users]({{page.baseurl}}/graphql/mutations/create-company-user.html), [roles]({{page.baseurl}}/graphql/mutations/create-company-role.html), and [teams]({{page.baseurl}}/graphql/mutations/create-company-team.html). + * Company credit. The [company query]({{page.baseurl}}/graphql/queries/company.html) includes details about the company's credit history. + * Requisition lists. You can [create]({{page.baseurl}}/graphql/mutations/create-requisition-list.html), [delete]({{ page.baseurl }}/graphql/mutations/delete-requisition-list.html), and [update]({{page.baseurl}}/graphql/mutations/update-requisition-list.html) requisition lists. Support also includes the ability to [add]({{page.baseurl}}/graphql/mutations/add-products-to-requisition-list.html), [update]({{page.baseurl}}/graphql/mutations/update-products-in-wishlist.html), [delete]({{page.baseurl}}/graphql/mutations/delete-requisition-list-items.html), [copy]({{page.baseurl}}/graphql/mutations/copy-items-between-requisition-lists.html), and [move]({{page.baseurl}}/graphql/mutations/move-items-between-requisition-lists.html) items within a requisition list as well as add requisition list items [into the cart]({{page.baseurl}}/graphql/mutations/add-requisition-list-items-to-cart.html). See the [GraphQL Developer Guide]({{page.baseurl}}/graphql/) for details on these enhancements.