Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions src/data/navigation/sections/graphql.js
Original file line number Diff line number Diff line change
Expand Up @@ -1149,10 +1149,22 @@ module.exports = [
title: "deleteRequisitionListItems",
path: "/graphql/schema/b2b/requisition-list/mutations/delete-items/",
},
{
title: "importSharedRequisitionList",
path: "/graphql/schema/b2b/requisition-list/mutations/import-shared-requisition-list/",
},
{
title: "moveItemsBetweenRequisitionLists",
path: "/graphql/schema/b2b/requisition-list/mutations/move-items/",
},
{
title: "shareRequisitionListByEmail",
path: "/graphql/schema/b2b/requisition-list/mutations/share-requisition-list-by-email/",
},
{
title: "shareRequisitionListByToken",
path: "/graphql/schema/b2b/requisition-list/mutations/share-requisition-list-by-token/",
},
{
title: "updateRequisitionList",
path: "/graphql/schema/b2b/requisition-list/mutations/update/",
Expand All @@ -1163,6 +1175,16 @@ module.exports = [
},
],
},
{
title: "Queries",
path: "/graphql/schema/b2b/requisition-list/queries",
pages: [
{
title: "sharedRequisitionList",
path: "/graphql/schema/b2b/requisition-list/queries/shared-requisition-list/",
},
]
},
{
title: "Interfaces",
path: "/graphql/schema/b2b/requisition-list/interfaces/"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
---
title: importSharedRequisitionList mutation
edition: saas
keywords:
- B2B
---

import CommerceOnly from '/src/_includes/commerce-only.md'

<CommerceOnly />

# importSharedRequisitionList mutation

<InlineAlert variant="info" slots="text1" />

This mutation is part of the B2B Storefront Compatibility Package and is only available on [Adobe Commerce as a Cloud Service](https://experienceleague.adobe.com/en/docs/commerce/cloud-service/overview).

The `importSharedRequisitionList` mutation allows recipients within the same company to import or clone a shared requisition list. You must specify a valid token, generated by the [shareRequisitionListByToken](share-requisition-list-by-token.md) mutation, as an input parameter. This mutation returns a `requisition_list` object and `user_errors`, if any.

## Syntax

```graphql
{
importSharedRequisitionList(
token: String!
): ImportSharedRequisitionListOutput
}
```

## Example usage

The following example demonstrates how to import a shared requisition list using the specified token as its identifier.

**Request:**

```graphql
mutation ImportSharedRequisitionList {
importSharedRequisitionList(
token: "Ra4yCcOAesVKIHNKuqUy6G3PMbcWt6HMohgcwDMXmnwrbB2SCeMMDPGlmDukDXGc"
) {
requisition_list {
description
name
uid
items(currentPage: 1, pageSize: 20) {
items {
quantity
sku
uid
product {
attribute_set_id
uid
name
}
}
page_info {
current_page
page_size
total_pages
}
}
}
user_errors {
code
message
}
}
}
```

**Response:**

```json
{
"data": {
"importSharedRequisitionList": {
"requisition_list": {
"description": null,
"name": "John's Favorites",
"uid": "MTA5Nw==",
"items": {
"items": [
{
"quantity": 2,
"sku": "Augusta",
"uid": "NDgx",
"product": {
"attribute_set_id": 4,
"uid": "MzQ3",
"name": "Augusta"
}
}
],
"page_info": {
"current_page": 1,
"page_size": 20,
"total_pages": 1
}
}
},
"user_errors": []
}
}
}
```
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,11 @@ The B2B requisition list mutations allow you to perform the following operations
- [Update items in a requisition list](update-items.md)
- [Delete items from a requistion list](delete-items.md)

- Share requisition lists
- [Share requisition list with a token](share-requisition-list-by-token.md)
- [Share requisition list by email](share-requisition-list-by-email.md)
- [Import shared requisition list](import-shared-requisition-list.md)

- Manage the cart
- [Add requisition list items to the cart](add-items-to-cart.md)
- [Clear the cart](clear-customer-cart.md)

Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
title: shareRequisitionListByEmail mutation
edition: saas
keywords:
- B2B
---

import CommerceOnly from '/src/_includes/commerce-only.md'

<CommerceOnly />

# shareRequisitionListByEmail mutation

<InlineAlert variant="info" slots="text1" />

This mutation is part of the B2B Storefront Compatibility Package and is only available on [Adobe Commerce as a Cloud Service](https://experienceleague.adobe.com/en/docs/commerce/cloud-service/overview).

The `shareRequisitionListByEmail` mutation enables B2B customers to share a requisition list with colleagues within the same company in an email. The mutation requires `requisitionListUid` and an array of `customerUids` as input parameters. This mutation returns a `sent_count` which shows the count of emails the list has been shared to, and `user_errors`, if any.

## Syntax

```graphql
{
shareRequisitionListByEmail(
input: ShareRequisitionListByEmailInput!
): ShareRequisitionListByEmailOutput
}
```

## Example usage

The following example shares a requisition list to the specified customer UIDs.

**Request:**

```graphql
mutation ShareRequisitionListByEmail {
shareRequisitionListByEmail(
input: { customerUids: ["MQ==", "Mg=="], requisitionListUid: "OTc5" }
) {
sent_count
user_errors {
code
message
}
}
}
```

**Response:**

```json
{
"data": {
"shareRequisitionListByEmail": {
"sent_count": 2,
"user_errors": []
}
}
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: shareRequisitionListByToken mutation
edition: saas
keywords:
- B2B
---

import CommerceOnly from '/src/_includes/commerce-only.md'

<CommerceOnly />

# shareRequisitionListByToken mutation

<InlineAlert variant="info" slots="text1" />

This mutation is part of the B2B Storefront Compatibility Package and is only available on [Adobe Commerce as a Cloud Service](https://experienceleague.adobe.com/en/docs/commerce/cloud-service/overview).

The `shareRequisitionListByToken` mutation enables B2B customers to share a requisition list with colleagues within the same company using a shareable link generated on the storefront. The mutation requires `requisitionListUid` as an input parameter. This mutation returns the token assigned to the shared requisition list.

## Syntax

```graphql
{
shareRequisitionListByToken(
requisitionListUid: ID!
): ShareRequisitionListByTokenOutput
}
```

## Example usage

The following example provides a token for a shareable requisition list.

**Request:**

```graphql
mutation ShareRequisitionListByToken {
shareRequisitionListByToken(requisitionListUid: "OTc5") {
token
}
}
```

**Response:**

```json
{
"data": {
"shareRequisitionListByToken": {
"token": "qEJD2aUhmYnf1jNoaOtlo7XwBP8BRof5GhF0L5kbdJxYMZ13OlFvy2VFy33NnUCp"
}
}
}
```
16 changes: 16 additions & 0 deletions src/pages/graphql/schema/b2b/requisition-list/queries/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: Requisition list (B2B) queries
keywords:
- B2B
---

import CommerceOnly from '/src/_includes/commerce-only.md'

<CommerceOnly />

# Requisition list (B2B) queries

The following query retrieves a shared requisition list

- [View Shared Requisition List](shared-requisition-list.md)

Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
---
title: sharedRequisitionList query
edition: saas
keywords:
- B2B
---

import CommerceOnly from '/src/_includes/commerce-only.md'

<CommerceOnly />

# sharedRequisitionList query

<InlineAlert variant="info" slots="text1" />

This query is part of the B2B Storefront Compatibility Package and is only available on [Adobe Commerce as a Cloud Service](https://experienceleague.adobe.com/en/docs/commerce/cloud-service/overview).

The `sharedRequisitionList` query uses a token to retrieve a shared requisition list. The response can contain the `sender_name` and `requisition_list` object.

## Syntax

```graphql
{
sharedRequisitionList(
token: String!
): SharedRequisitionListOutput
}
```

## Example usage

The following example opens a shared requisition list by specifying the shared token.

**Request:**

```graphql
query SharedRequisitionList {
sharedRequisitionList(
token: "qEJD2aUhmYnf1jNoaOtlo7XwBP8BRof5GhF0L5kbdJxYMZ13OlFvy2VFy33NnUCp"
) {
sender_name
requisition_list {
description
name
uid
items(currentPage: 1, pageSize: 20) {
total_pages
items {
quantity
sku
uid
product {
attribute_set_id
name
}
}
page_info {
current_page
page_size
total_pages
}
}
}
}
}
```

**Response:**

```json
{
"data": {
"sharedRequisitionList": {
"sender_name": "Jane",
"requisition_list": {
"description": "Test RL sharing",
"name": "Shared RL",
"uid": "OTc5",
"items": {
"total_pages": 1,
"items": [
{
"quantity": 2,
"sku": "Augusta",
"uid": "NDEw",
"product": {
"attribute_set_id": 4,
"name": "Augusta"
}
}
],
"page_info": {
"current_page": 1,
"page_size": 20,
"total_pages": 1
}
}
}
}
}
}
```
Loading