Cart
A cart represents the merchandise that a buyer intends to purchase, and the estimated cost associated with the cart. Learn how to interact with a cart during a customer's session.
Anchor to FieldsFields
- Anchor to appliedGiftCardsapplied•[Applied
Gift Cards Gift Card!]! non-null The gift cards that have been applied to the cart.
- Anchor to attributeattribute•Attribute
An attribute associated with the cart.
- •String!required
The key of the attribute.
Arguments
- •String!
- Anchor to attributesattributes•[Attribute!]!non-null
The attributes associated with the cart. Attributes are represented as key-value pairs.
- Anchor to buyerIdentitybuyer•Cart
Identity Buyer Identity! non-null Information about the buyer that's interacting with the cart.
- Anchor to checkoutUrlcheckout•URL!
Url non-null The URL of the checkout for the cart.
- Anchor to costcost•Cart
Cost! non-null The estimated costs that the buyer will pay at checkout. The costs are subject to change and changes will be reflected at checkout. The
costfield uses thefield to determine international pricing.- Anchor to createdAtcreated•Date
At Time! non-null The date and time when the cart was created.
- Anchor to deliverydelivery•Cart
Delivery! non-null The delivery properties of the cart.
- Anchor to deliveryGroupsdelivery•Cart
Groups Delivery Group Connection! non-null The delivery groups available for the cart, based on the buyer identity default delivery address preference or the default address of the logged-in customer.
- Anchor to firstfirst•Int
Returns up to the first
nelements from the list.- Anchor to afterafter•String
Returns the elements that come after the specified cursor.
- Anchor to lastlast•Int
Returns up to the last
nelements from the list.- Anchor to beforebefore•String
Returns the elements that come before the specified cursor.
- Anchor to reversereverse•BooleanDefault:false
Reverse the order of the underlying list.
- Anchor to withCarrierRateswith•Boolean
Carrier Rates Default:false Whether to include carrier-calculated delivery rates in the response.
By default, only static shipping rates are returned. This argument requires mandatory usage of the
@deferdirective.For more information, refer to fetching carrier-calculated rates for the cart using
@defer.
Arguments
- Anchor to discountAllocationsdiscount•[Cart
Allocations Discount Allocation!]! non-null The discounts that have been applied to the entire cart.
- Anchor to discountCodesdiscount•[Cart
Codes Discount Code!]! non-null The case-insensitive discount codes that the customer added at checkout.
- •ID!non-null
A globally-unique ID.
- Anchor to lineslines•Base
Cart Line Connection! non-null A list of lines containing information about the items the customer intends to purchase.
- Anchor to firstfirst•Int
Returns up to the first
nelements from the list.- Anchor to afterafter•String
Returns the elements that come after the specified cursor.
- Anchor to lastlast•Int
Returns up to the last
nelements from the list.- Anchor to beforebefore•String
Returns the elements that come before the specified cursor.
- Anchor to reversereverse•BooleanDefault:false
Reverse the order of the underlying list.
Arguments
- Anchor to metafieldmetafield•MetafieldToken access required
A custom field, including its
namespaceandkey, that's associated with a Shopify resource for the purposes of adding and storing additional information.- Anchor to namespacenamespace•String
The container the metafield belongs to. If omitted, the app-reserved namespace will be used.
- •String!required
The identifier for the metafield.
Arguments
- Anchor to metafieldsmetafields•[Metafield]!non-null Token access required
A list of custom fields that a merchant associates with a Shopify resource.
- Anchor to identifiersidentifiers•[Has
Metafields Identifier!]! required The list of metafields to retrieve by namespace and key.
The input must not contain more than
250values.
Arguments
- Anchor to notenote•String
A note that's associated with the cart. For example, the note can be a personalized message to the buyer.
- Anchor to totalQuantitytotal•Int!
Quantity non-null The total number of items in the cart.
- Anchor to updatedAtupdated•Date
At Time! non-null The date and time when the cart was updated.
- Anchor to estimatedCostestimated•Cart
Cost Estimated Cost! non-nullDeprecated
Anchor to QueriesQueries
- •query
Retrieve a cart by its ID. For more information, refer to Manage a cart with the Storefront API.
- •ID!required
The ID of the cart.
Arguments
- •ID!
Anchor to MutationsMutations
- •mutation
Updates the attributes on a cart.
- Anchor to attributesattributes•[Attribute
Input!]! required An array of key-value pairs that contains additional information about the cart.
The input must not contain more than
250values.- Anchor to cartIdcart•ID!
Id required The ID of the cart.
Arguments
- •mutation
Updates customer information associated with a cart. Buyer identity is used to determine international pricing and should match the customer's shipping address.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to buyerIdentitybuyer•Cart
Identity Buyer Identity Input! required The customer associated with the cart. Used to determine international pricing. Buyer identity should match the customer's shipping address.
Arguments
- •mutation
Creates a new cart.
- Anchor to inputinput•Cart
Input The fields used to create a cart.
Arguments
- •mutation
Adds delivery addresses to the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to addressesaddresses•[Cart
Selectable Address Input!]! required A list of delivery addresses to add to the cart.
The input must not contain more than
250values.
Arguments
- •mutation
Removes delivery addresses from the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to addressIdsaddress•[ID!]!
Ids required A list of delivery addresses by handle to remove from the cart.
The input must not contain more than
250values.
Arguments
- •mutation
Replaces delivery addresses on the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to addressesaddresses•[Cart
Selectable Address Input!]! required A list of delivery addresses to replace on the cart.
The input must not contain more than
250values.
Arguments
- •mutation
Updates one or more delivery addresses on a cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to addressesaddresses•[Cart
Selectable Address Update Input!]! required The delivery addresses to update.
The input must not contain more than
250values.
Arguments
- •mutation
Updates the discount codes applied to the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to discountCodesdiscount•[String!]!
Codes required The case-insensitive discount codes that the customer added at checkout.
The input must not contain more than
250values.
Arguments
- •mutation
Adds gift card codes to the cart without replacing existing ones.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to giftCardCodesgift•[String!]!
Card Codes required The case-insensitive gift card codes to add.
The input must not contain more than
250values.
Arguments
- •mutation
Removes the gift card codes applied to the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to appliedGiftCardIdsapplied•[ID!]!
Gift Card Ids required The gift cards to remove.
The input must not contain more than
250values.
Arguments
- •mutation
Updates the gift card codes applied to the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to giftCardCodesgift•[String!]!
Card Codes required The case-insensitive gift card codes.
The input must not contain more than
250values.
Arguments
- •mutation
Adds a merchandise line to the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to lineslines•[Cart
Line Input!]! required A list of merchandise lines to add to the cart.
The input must not contain more than
250values.
Arguments
- •mutation
Removes one or more merchandise lines from the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to lineIdsline•[ID!]!
Ids required The merchandise line IDs to remove.
The input must not contain more than
250values.
Arguments
- •mutation
Updates one or more merchandise lines on a cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to lineslines•[Cart
Line Update Input!]! required The merchandise lines to update.
The input must not contain more than
250values.
Arguments
- •mutation
Updates the note on the cart.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to notenote•String!required
The note on the cart.
Arguments
- •mutation
Update the selected delivery options for a delivery group.
- Anchor to cartIdcart•ID!
Id required The ID of the cart.
- Anchor to selectedDeliveryOptionsselected•[Cart
Delivery Options Selected Delivery Option Input!]! required The selected delivery options.
The input must not contain more than
250values.
Arguments