12 March 2025
B2BCustomersCartsGraphQL
You can now link a Shopping List to a Business Unit. Additionally, you can define permissions related to Shopping List for Associates assigned to the Business Unit and validate them using the new Associate Shopping Lists endpoints. This enhancement helps you, as merchants, to build flows that allows your B2B customers to create and collaborate on shopping lists.
This feature is only available as part of Composable Commerce for B2B and will be subject to additional terms and pricing. To get access to Composable Commerce for B2B, contact the Composable Commerce support team.
Changes:
- [API] Added 
businessUnitfield to ShoppingList and ShoppingListDraft. - [API] Added the Set Business Unit update action to the Shopping Lists API.
 - [API] Added Associate Shopping Lists endpoints.
 - [API] Added Shopping List Permissions.
 - [GraphQL API] Added the 
businessUnitandbusinessUnitRefinput fields to theShoppingListtype. - [GraphQL API] Added the 
businessUnitinput field to theShoppingListDrafttype. - [GraphQL API] Added the 
setBusinessUnitinput field to theShoppingListUpdateActiontype. - [GraphQL API] Added the 
SetShoppingListBusinessUnittype to the GraphQL schema. - [GraphQL API] Added the 
shoppingListandshoppingListsfields to theAsAssociatetype. - [GraphQL API] 
AsAssociateobject type now implementsShoppingListQueryInterfaceinterface. - [GraphQL API] Added the 
asAssociateargument to theMutation.createShoppingListfield. - [GraphQL API] Added the 
asAssociateargument to theMutation.updateShoppingListfield. - [GraphQL API] Added the 
asAssociateargument to theMutation.deleteShoppingListfield. - [GraphQL API] Added the 
CreateMyShoppingLists,CreateOthersShoppingLists,DeleteMyShoppingLists,DeleteOthersShoppingLists,UpdateMyShoppingLists,UpdateOthersShoppingLists,ViewMyShoppingLists, andViewOthersShoppingListsenum values to thePermissionenum. 
The following changes were introduced in terms of GraphQL SDL:
extend type AsAssociate {
  shoppingList(
    "Queries with specified ID"
    id: String
    "Queries with specified key"
    key: String
  ): ShoppingList
  shoppingLists(
    where: String
    sort: [String!]
    limit: Int
    offset: Int
  ): ShoppingListQueryResult!
}
extend enum Permission {
  CreateMyShoppingLists
  CreateOthersShoppingLists
  DeleteMyShoppingLists
  DeleteOthersShoppingLists
  UpdateMyShoppingLists
  UpdateOthersShoppingLists
  ViewMyShoppingLists
  ViewOthersShoppingLists
}
input SetShoppingListBusinessUnit {
  businessUnit: ResourceIdentifierInput!
}
extend type ShoppingList {
  businessUnit: BusinessUnit
  businessUnitRef: KeyReference
}
extend input ShoppingListDraft {
  businessUnit: ResourceIdentifierInput
}
extend input ShoppingListUpdateAction {
  setBusinessUnit: SetShoppingListBusinessUnit
}