Adobe Commerce GraphQL API

The Adobe Commerce GraphQL API allows you to quickly and efficiently transfer information between your Commerce store and your storefront. The schema documented here is autogenerated from an instance of Adobe Commerce with B2B. You can find examples of each query and mutation in the main GraphQL documentation.

API Endpoints
https://<your store>/graphql
Version

2.4.6

Queries

availableStores

Description

Get a list of available store views and their config information.

Response

Returns [StoreConfig]

Arguments
Name Description
useCurrentGroup - Boolean Filter store views by the current store group.

Example

Query
query availableStores($useCurrentGroup: Boolean) {
  availableStores(useCurrentGroup: $useCurrentGroup) {
    absolute_footer
    allow_gift_receipt
    allow_gift_wrapping_on_order
    allow_gift_wrapping_on_order_items
    allow_guests_to_write_product_reviews
    allow_items
    allow_order
    allow_printed_card
    autocomplete_on_storefront
    base_currency_code
    base_link_url
    base_media_url
    base_static_url
    base_url
    braintree_cc_vault_active
    cart_gift_wrapping
    cart_printed_card
    catalog_default_sort_by
    category_fixed_product_tax_display_setting
    category_url_suffix
    check_money_order_enable_for_specific_countries
    check_money_order_enabled
    check_money_order_make_check_payable_to
    check_money_order_max_order_total
    check_money_order_min_order_total
    check_money_order_new_order_status
    check_money_order_payment_from_specific_countries
    check_money_order_send_check_to
    check_money_order_sort_order
    check_money_order_title
    cms_home_page
    cms_no_cookies
    cms_no_route
    code
    configurable_thumbnail_source
    copyright
    default_description
    default_display_currency_code
    default_keywords
    default_title
    demonotice
    enable_multiple_wishlists
    front
    grid_per_page
    grid_per_page_values
    head_includes
    head_shortcut_icon
    header_logo_src
    id
    is_default_store
    is_default_store_group
    is_negotiable_quote_active
    is_requisition_list_active
    list_mode
    list_per_page
    list_per_page_values
    locale
    logo_alt
    logo_height
    logo_width
    magento_reward_general_is_enabled
    magento_reward_general_is_enabled_on_front
    magento_reward_general_min_points_balance
    magento_reward_general_publish_history
    magento_reward_points_invitation_customer
    magento_reward_points_invitation_customer_limit
    magento_reward_points_invitation_order
    magento_reward_points_invitation_order_limit
    magento_reward_points_newsletter
    magento_reward_points_order
    magento_reward_points_register
    magento_reward_points_review
    magento_reward_points_review_limit
    magento_wishlist_general_is_enabled
    maximum_number_of_wishlists
    minimum_password_length
    no_route
    payment_payflowpro_cc_vault_active
    printed_card_price
    product_fixed_product_tax_display_setting
    product_reviews_enabled
    product_url_suffix
    required_character_classes_number
    returns_enabled
    root_category_id
    root_category_uid
    sales_fixed_product_tax_display_setting
    sales_gift_wrapping
    sales_printed_card
    secure_base_link_url
    secure_base_media_url
    secure_base_static_url
    secure_base_url
    send_friend {
      ...SendFriendConfigurationFragment
    }
    show_cms_breadcrumbs
    store_code
    store_group_code
    store_group_name
    store_name
    store_sort_order
    timezone
    title_prefix
    title_separator
    title_suffix
    use_store_in_url
    website_code
    website_id
    website_name
    weight_unit
    welcome
    zero_subtotal_enable_for_specific_countries
    zero_subtotal_enabled
    zero_subtotal_new_order_status
    zero_subtotal_payment_action
    zero_subtotal_payment_from_specific_countries
    zero_subtotal_sort_order
    zero_subtotal_title
  }
}
Variables
{"useCurrentGroup": true}
Response
{
  "data": {
    "availableStores": [
      {
        "absolute_footer": "xyz789",
        "allow_gift_receipt": "abc123",
        "allow_gift_wrapping_on_order": "xyz789",
        "allow_gift_wrapping_on_order_items": "xyz789",
        "allow_guests_to_write_product_reviews": "abc123",
        "allow_items": "abc123",
        "allow_order": "xyz789",
        "allow_printed_card": "xyz789",
        "autocomplete_on_storefront": false,
        "base_currency_code": "abc123",
        "base_link_url": "abc123",
        "base_media_url": "abc123",
        "base_static_url": "abc123",
        "base_url": "abc123",
        "braintree_cc_vault_active": "abc123",
        "cart_gift_wrapping": "xyz789",
        "cart_printed_card": "xyz789",
        "catalog_default_sort_by": "xyz789",
        "category_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
        "category_url_suffix": "abc123",
        "check_money_order_enable_for_specific_countries": false,
        "check_money_order_enabled": true,
        "check_money_order_make_check_payable_to": "xyz789",
        "check_money_order_max_order_total": "xyz789",
        "check_money_order_min_order_total": "abc123",
        "check_money_order_new_order_status": "xyz789",
        "check_money_order_payment_from_specific_countries": "xyz789",
        "check_money_order_send_check_to": "xyz789",
        "check_money_order_sort_order": 987,
        "check_money_order_title": "abc123",
        "cms_home_page": "abc123",
        "cms_no_cookies": "xyz789",
        "cms_no_route": "abc123",
        "code": "xyz789",
        "configurable_thumbnail_source": "abc123",
        "copyright": "xyz789",
        "default_description": "xyz789",
        "default_display_currency_code": "abc123",
        "default_keywords": "xyz789",
        "default_title": "abc123",
        "demonotice": 987,
        "enable_multiple_wishlists": "abc123",
        "front": "abc123",
        "grid_per_page": 123,
        "grid_per_page_values": "abc123",
        "head_includes": "xyz789",
        "head_shortcut_icon": "xyz789",
        "header_logo_src": "abc123",
        "id": 123,
        "is_default_store": true,
        "is_default_store_group": false,
        "is_negotiable_quote_active": true,
        "is_requisition_list_active": "abc123",
        "list_mode": "xyz789",
        "list_per_page": 987,
        "list_per_page_values": "abc123",
        "locale": "xyz789",
        "logo_alt": "abc123",
        "logo_height": 123,
        "logo_width": 987,
        "magento_reward_general_is_enabled": "abc123",
        "magento_reward_general_is_enabled_on_front": "abc123",
        "magento_reward_general_min_points_balance": "xyz789",
        "magento_reward_general_publish_history": "xyz789",
        "magento_reward_points_invitation_customer": "abc123",
        "magento_reward_points_invitation_customer_limit": "abc123",
        "magento_reward_points_invitation_order": "abc123",
        "magento_reward_points_invitation_order_limit": "abc123",
        "magento_reward_points_newsletter": "xyz789",
        "magento_reward_points_order": "xyz789",
        "magento_reward_points_register": "xyz789",
        "magento_reward_points_review": "abc123",
        "magento_reward_points_review_limit": "xyz789",
        "magento_wishlist_general_is_enabled": "abc123",
        "maximum_number_of_wishlists": "xyz789",
        "minimum_password_length": "xyz789",
        "no_route": "abc123",
        "payment_payflowpro_cc_vault_active": "abc123",
        "printed_card_price": "abc123",
        "product_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
        "product_reviews_enabled": "abc123",
        "product_url_suffix": "abc123",
        "required_character_classes_number": "xyz789",
        "returns_enabled": "abc123",
        "root_category_id": 987,
        "root_category_uid": "4",
        "sales_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
        "sales_gift_wrapping": "xyz789",
        "sales_printed_card": "abc123",
        "secure_base_link_url": "xyz789",
        "secure_base_media_url": "xyz789",
        "secure_base_static_url": "abc123",
        "secure_base_url": "abc123",
        "send_friend": SendFriendConfiguration,
        "show_cms_breadcrumbs": 123,
        "store_code": "4",
        "store_group_code": "4",
        "store_group_name": "xyz789",
        "store_name": "abc123",
        "store_sort_order": 987,
        "timezone": "xyz789",
        "title_prefix": "abc123",
        "title_separator": "abc123",
        "title_suffix": "abc123",
        "use_store_in_url": true,
        "website_code": 4,
        "website_id": 123,
        "website_name": "abc123",
        "weight_unit": "abc123",
        "welcome": "xyz789",
        "zero_subtotal_enable_for_specific_countries": true,
        "zero_subtotal_enabled": true,
        "zero_subtotal_new_order_status": "xyz789",
        "zero_subtotal_payment_action": "abc123",
        "zero_subtotal_payment_from_specific_countries": "abc123",
        "zero_subtotal_sort_order": 987,
        "zero_subtotal_title": "abc123"
      }
    ]
  }
}

cart

Description

Return information about the specified shopping cart.

Response

Returns a Cart

Arguments
Name Description
cart_id - String! The unique ID of the cart to query.

Example

Query
query cart($cart_id: String!) {
  cart(cart_id: $cart_id) {
    applied_coupon {
      ...AppliedCouponFragment
    }
    applied_coupons {
      ...AppliedCouponFragment
    }
    applied_gift_cards {
      ...AppliedGiftCardFragment
    }
    applied_reward_points {
      ...RewardPointsAmountFragment
    }
    applied_store_credit {
      ...AppliedStoreCreditFragment
    }
    available_gift_wrappings {
      ...GiftWrappingFragment
    }
    available_payment_methods {
      ...AvailablePaymentMethodFragment
    }
    billing_address {
      ...BillingCartAddressFragment
    }
    email
    gift_message {
      ...GiftMessageFragment
    }
    gift_receipt_included
    gift_wrapping {
      ...GiftWrappingFragment
    }
    id
    is_virtual
    items {
      ...CartItemInterfaceFragment
    }
    prices {
      ...CartPricesFragment
    }
    printed_card_included
    selected_payment_method {
      ...SelectedPaymentMethodFragment
    }
    shipping_addresses {
      ...ShippingCartAddressFragment
    }
    total_quantity
  }
}
Variables
{"cart_id": "abc123"}
Response
{
  "data": {
    "cart": {
      "applied_coupon": AppliedCoupon,
      "applied_coupons": [AppliedCoupon],
      "applied_gift_cards": [AppliedGiftCard],
      "applied_reward_points": RewardPointsAmount,
      "applied_store_credit": AppliedStoreCredit,
      "available_gift_wrappings": [GiftWrapping],
      "available_payment_methods": [
        AvailablePaymentMethod
      ],
      "billing_address": BillingCartAddress,
      "email": "abc123",
      "gift_message": GiftMessage,
      "gift_receipt_included": false,
      "gift_wrapping": GiftWrapping,
      "id": 4,
      "is_virtual": true,
      "items": [CartItemInterface],
      "prices": CartPrices,
      "printed_card_included": false,
      "selected_payment_method": SelectedPaymentMethod,
      "shipping_addresses": [ShippingCartAddress],
      "total_quantity": 123.45
    }
  }
}

categories

Description

Return a list of categories that match the specified filter.

Response

Returns a CategoryResult

Arguments
Name Description
filters - CategoryFilterInput Identifies which Category filter inputs to search for and return.
pageSize - Int Specifies the maximum number of results to return at once. The default value is 20. Default = 20
currentPage - Int Specifies which page of results to return. The default value is 1. Default = 1

Example

Query
query categories(
  $filters: CategoryFilterInput,
  $pageSize: Int,
  $currentPage: Int
) {
  categories(
    filters: $filters,
    pageSize: $pageSize,
    currentPage: $currentPage
  ) {
    items {
      ...CategoryTreeFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    total_count
  }
}
Variables
{
  "filters": CategoryFilterInput,
  "pageSize": 20,
  "currentPage": 1
}
Response
{
  "data": {
    "categories": {
      "items": [CategoryTree],
      "page_info": SearchResultPageInfo,
      "total_count": 123
    }
  }
}

category

Use categories instead.
Description

Search for categories that match the criteria specified in the search and filter attributes.

Response

Returns a CategoryTree

Arguments
Name Description
id - Int The category ID to use as the root of the search.

Example

Query
query category($id: Int) {
  category(id: $id) {
    automatic_sorting
    available_sort_by
    breadcrumbs {
      ...BreadcrumbFragment
    }
    canonical_url
    children {
      ...CategoryTreeFragment
    }
    children_count
    cms_block {
      ...CmsBlockFragment
    }
    created_at
    custom_layout_update_file
    default_sort_by
    description
    display_mode
    filter_price_range
    id
    image
    include_in_menu
    is_anchor
    landing_page
    level
    meta_description
    meta_keywords
    meta_title
    name
    path
    path_in_store
    position
    product_count
    products {
      ...CategoryProductsFragment
    }
    redirect_code
    relative_url
    staged
    type
    uid
    updated_at
    url_key
    url_path
    url_suffix
  }
}
Variables
{"id": 123}
Response
{
  "data": {
    "category": {
      "automatic_sorting": "abc123",
      "available_sort_by": ["abc123"],
      "breadcrumbs": [Breadcrumb],
      "canonical_url": "abc123",
      "children": [CategoryTree],
      "children_count": "abc123",
      "cms_block": CmsBlock,
      "created_at": "xyz789",
      "custom_layout_update_file": "abc123",
      "default_sort_by": "xyz789",
      "description": "xyz789",
      "display_mode": "abc123",
      "filter_price_range": 123.45,
      "id": 123,
      "image": "xyz789",
      "include_in_menu": 987,
      "is_anchor": 987,
      "landing_page": 987,
      "level": 987,
      "meta_description": "xyz789",
      "meta_keywords": "xyz789",
      "meta_title": "xyz789",
      "name": "xyz789",
      "path": "xyz789",
      "path_in_store": "abc123",
      "position": 123,
      "product_count": 987,
      "products": CategoryProducts,
      "redirect_code": 987,
      "relative_url": "xyz789",
      "staged": true,
      "type": "CMS_PAGE",
      "uid": 4,
      "updated_at": "abc123",
      "url_key": "xyz789",
      "url_path": "xyz789",
      "url_suffix": "abc123"
    }
  }
}

categoryList

Use categories instead.
Description

Return an array of categories based on the specified filters.

Response

Returns [CategoryTree]

Arguments
Name Description
filters - CategoryFilterInput Identifies which Category filter inputs to search for and return.
pageSize - Int Specifies the maximum number of results to return at once. The default value is 20. Default = 20
currentPage - Int Specifies which page of results to return. The default value is 1. Default = 1

Example

Query
query categoryList(
  $filters: CategoryFilterInput,
  $pageSize: Int,
  $currentPage: Int
) {
  categoryList(
    filters: $filters,
    pageSize: $pageSize,
    currentPage: $currentPage
  ) {
    automatic_sorting
    available_sort_by
    breadcrumbs {
      ...BreadcrumbFragment
    }
    canonical_url
    children {
      ...CategoryTreeFragment
    }
    children_count
    cms_block {
      ...CmsBlockFragment
    }
    created_at
    custom_layout_update_file
    default_sort_by
    description
    display_mode
    filter_price_range
    id
    image
    include_in_menu
    is_anchor
    landing_page
    level
    meta_description
    meta_keywords
    meta_title
    name
    path
    path_in_store
    position
    product_count
    products {
      ...CategoryProductsFragment
    }
    redirect_code
    relative_url
    staged
    type
    uid
    updated_at
    url_key
    url_path
    url_suffix
  }
}
Variables
{
  "filters": CategoryFilterInput,
  "pageSize": 20,
  "currentPage": 1
}
Response
{
  "data": {
    "categoryList": [
      {
        "automatic_sorting": "xyz789",
        "available_sort_by": ["abc123"],
        "breadcrumbs": [Breadcrumb],
        "canonical_url": "abc123",
        "children": [CategoryTree],
        "children_count": "abc123",
        "cms_block": CmsBlock,
        "created_at": "abc123",
        "custom_layout_update_file": "abc123",
        "default_sort_by": "abc123",
        "description": "xyz789",
        "display_mode": "abc123",
        "filter_price_range": 123.45,
        "id": 987,
        "image": "abc123",
        "include_in_menu": 123,
        "is_anchor": 123,
        "landing_page": 123,
        "level": 123,
        "meta_description": "abc123",
        "meta_keywords": "abc123",
        "meta_title": "abc123",
        "name": "abc123",
        "path": "abc123",
        "path_in_store": "xyz789",
        "position": 123,
        "product_count": 123,
        "products": CategoryProducts,
        "redirect_code": 987,
        "relative_url": "xyz789",
        "staged": true,
        "type": "CMS_PAGE",
        "uid": "4",
        "updated_at": "abc123",
        "url_key": "xyz789",
        "url_path": "xyz789",
        "url_suffix": "abc123"
      }
    ]
  }
}

checkoutAgreements

Description

Return Terms and Conditions configuration information.

Response

Returns [CheckoutAgreement]

Example

Query
query checkoutAgreements {
  checkoutAgreements {
    agreement_id
    checkbox_text
    content
    content_height
    is_html
    mode
    name
  }
}
Response
{
  "data": {
    "checkoutAgreements": [
      {
        "agreement_id": 123,
        "checkbox_text": "abc123",
        "content": "abc123",
        "content_height": "abc123",
        "is_html": true,
        "mode": "AUTO",
        "name": "abc123"
      }
    ]
  }
}

cmsBlocks

Description

Return information about CMS blocks.

Response

Returns a CmsBlocks

Arguments
Name Description
identifiers - [String] An array of CMS block IDs.

Example

Query
query cmsBlocks($identifiers: [String]) {
  cmsBlocks(identifiers: $identifiers) {
    items {
      ...CmsBlockFragment
    }
  }
}
Variables
{"identifiers": ["xyz789"]}
Response
{"data": {"cmsBlocks": {"items": [CmsBlock]}}}

cmsPage

Description

Return details about a CMS page.

Response

Returns a CmsPage

Arguments
Name Description
id - Int The ID of the CMS page.
identifier - String The identifier of the CMS page.

Example

Query
query cmsPage(
  $id: Int,
  $identifier: String
) {
  cmsPage(
    id: $id,
    identifier: $identifier
  ) {
    content
    content_heading
    identifier
    meta_description
    meta_keywords
    meta_title
    page_layout
    redirect_code
    relative_url
    title
    type
    url_key
  }
}
Variables
{"id": 987, "identifier": "xyz789"}
Response
{
  "data": {
    "cmsPage": {
      "content": "xyz789",
      "content_heading": "xyz789",
      "identifier": "xyz789",
      "meta_description": "abc123",
      "meta_keywords": "abc123",
      "meta_title": "xyz789",
      "page_layout": "xyz789",
      "redirect_code": 123,
      "relative_url": "abc123",
      "title": "abc123",
      "type": "CMS_PAGE",
      "url_key": "abc123"
    }
  }
}

company

Description

Return detailed information about the authenticated customer's company.

Response

Returns a Company

Example

Query
query company {
  company {
    acl_resources {
      ...CompanyAclResourceFragment
    }
    company_admin {
      ...CustomerFragment
    }
    credit {
      ...CompanyCreditFragment
    }
    credit_history {
      ...CompanyCreditHistoryFragment
    }
    email
    id
    legal_address {
      ...CompanyLegalAddressFragment
    }
    legal_name
    name
    payment_methods
    reseller_id
    role {
      ...CompanyRoleFragment
    }
    roles {
      ...CompanyRolesFragment
    }
    sales_representative {
      ...CompanySalesRepresentativeFragment
    }
    structure {
      ...CompanyStructureFragment
    }
    team {
      ...CompanyTeamFragment
    }
    user {
      ...CustomerFragment
    }
    users {
      ...CompanyUsersFragment
    }
    vat_tax_id
  }
}
Response
{
  "data": {
    "company": {
      "acl_resources": [CompanyAclResource],
      "company_admin": Customer,
      "credit": CompanyCredit,
      "credit_history": CompanyCreditHistory,
      "email": "abc123",
      "id": "4",
      "legal_address": CompanyLegalAddress,
      "legal_name": "abc123",
      "name": "xyz789",
      "payment_methods": ["xyz789"],
      "reseller_id": "abc123",
      "role": CompanyRole,
      "roles": CompanyRoles,
      "sales_representative": CompanySalesRepresentative,
      "structure": CompanyStructure,
      "team": CompanyTeam,
      "user": Customer,
      "users": CompanyUsers,
      "vat_tax_id": "xyz789"
    }
  }
}

compareList

Description

Return products that have been added to the specified compare list.

Response

Returns a CompareList

Arguments
Name Description
uid - ID! The unique ID of the compare list to be queried.

Example

Query
query compareList($uid: ID!) {
  compareList(uid: $uid) {
    attributes {
      ...ComparableAttributeFragment
    }
    item_count
    items {
      ...ComparableItemFragment
    }
    uid
  }
}
Variables
{"uid": "4"}
Response
{
  "data": {
    "compareList": {
      "attributes": [ComparableAttribute],
      "item_count": 987,
      "items": [ComparableItem],
      "uid": "4"
    }
  }
}

countries

Description

The countries query provides information for all countries.

Response

Returns [Country]

Example

Query
query countries {
  countries {
    available_regions {
      ...RegionFragment
    }
    full_name_english
    full_name_locale
    id
    three_letter_abbreviation
    two_letter_abbreviation
  }
}
Response
{
  "data": {
    "countries": [
      {
        "available_regions": [Region],
        "full_name_english": "xyz789",
        "full_name_locale": "abc123",
        "id": "xyz789",
        "three_letter_abbreviation": "xyz789",
        "two_letter_abbreviation": "abc123"
      }
    ]
  }
}

country

Description

The countries query provides information for a single country.

Response

Returns a Country

Arguments
Name Description
id - String

Example

Query
query country($id: String) {
  country(id: $id) {
    available_regions {
      ...RegionFragment
    }
    full_name_english
    full_name_locale
    id
    three_letter_abbreviation
    two_letter_abbreviation
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "country": {
      "available_regions": [Region],
      "full_name_english": "xyz789",
      "full_name_locale": "abc123",
      "id": "abc123",
      "three_letter_abbreviation": "abc123",
      "two_letter_abbreviation": "xyz789"
    }
  }
}

currency

Description

Return information about the store's currency.

Response

Returns a Currency

Example

Query
query currency {
  currency {
    available_currency_codes
    base_currency_code
    base_currency_symbol
    default_display_currecy_code
    default_display_currecy_symbol
    default_display_currency_code
    default_display_currency_symbol
    exchange_rates {
      ...ExchangeRateFragment
    }
  }
}
Response
{
  "data": {
    "currency": {
      "available_currency_codes": [
        "xyz789"
      ],
      "base_currency_code": "xyz789",
      "base_currency_symbol": "xyz789",
      "default_display_currecy_code": "xyz789",
      "default_display_currecy_symbol": "xyz789",
      "default_display_currency_code": "xyz789",
      "default_display_currency_symbol": "abc123",
      "exchange_rates": [ExchangeRate]
    }
  }
}

customAttributeMetadata

Description

Return the attribute type, given an attribute code and entity type.

Response

Returns a CustomAttributeMetadata

Arguments
Name Description
attributes - [AttributeInput!]! An input object that specifies the attribute code and entity type to search.

Example

Query
query customAttributeMetadata($attributes: [AttributeInput!]!) {
  customAttributeMetadata(attributes: $attributes) {
    items {
      ...AttributeFragment
    }
  }
}
Variables
{"attributes": [AttributeInput]}
Response
{
  "data": {
    "customAttributeMetadata": {"items": [Attribute]}
  }
}

customer

Description

Return detailed information about a customer account.

Response

Returns a Customer

Example

Query
query customer {
  customer {
    addresses {
      ...CustomerAddressFragment
    }
    allow_remote_shopping_assistance
    compare_list {
      ...CompareListFragment
    }
    created_at
    date_of_birth
    default_billing
    default_shipping
    dob
    email
    firstname
    gender
    gift_registries {
      ...GiftRegistryFragment
    }
    gift_registry {
      ...GiftRegistryFragment
    }
    group_id
    id
    is_subscribed
    job_title
    lastname
    middlename
    orders {
      ...CustomerOrdersFragment
    }
    prefix
    purchase_order {
      ...PurchaseOrderFragment
    }
    purchase_order_approval_rule {
      ...PurchaseOrderApprovalRuleFragment
    }
    purchase_order_approval_rule_metadata {
      ...PurchaseOrderApprovalRuleMetadataFragment
    }
    purchase_order_approval_rules {
      ...PurchaseOrderApprovalRulesFragment
    }
    purchase_orders {
      ...PurchaseOrdersFragment
    }
    purchase_orders_enabled
    requisition_lists {
      ...RequisitionListsFragment
    }
    return {
      ...ReturnFragment
    }
    returns {
      ...ReturnsFragment
    }
    reviews {
      ...ProductReviewsFragment
    }
    reward_points {
      ...RewardPointsFragment
    }
    role {
      ...CompanyRoleFragment
    }
    status
    store_credit {
      ...CustomerStoreCreditFragment
    }
    structure_id
    suffix
    taxvat
    team {
      ...CompanyTeamFragment
    }
    telephone
    wishlist {
      ...WishlistFragment
    }
    wishlist_v2 {
      ...WishlistFragment
    }
    wishlists {
      ...WishlistFragment
    }
  }
}
Response
{
  "data": {
    "customer": {
      "addresses": [CustomerAddress],
      "allow_remote_shopping_assistance": false,
      "compare_list": CompareList,
      "created_at": "xyz789",
      "date_of_birth": "xyz789",
      "default_billing": "xyz789",
      "default_shipping": "xyz789",
      "dob": "abc123",
      "email": "abc123",
      "firstname": "xyz789",
      "gender": 987,
      "gift_registries": [GiftRegistry],
      "gift_registry": GiftRegistry,
      "group_id": 123,
      "id": 987,
      "is_subscribed": false,
      "job_title": "xyz789",
      "lastname": "abc123",
      "middlename": "abc123",
      "orders": CustomerOrders,
      "prefix": "abc123",
      "purchase_order": PurchaseOrder,
      "purchase_order_approval_rule": PurchaseOrderApprovalRule,
      "purchase_order_approval_rule_metadata": PurchaseOrderApprovalRuleMetadata,
      "purchase_order_approval_rules": PurchaseOrderApprovalRules,
      "purchase_orders": PurchaseOrders,
      "purchase_orders_enabled": true,
      "requisition_lists": RequisitionLists,
      "return": Return,
      "returns": Returns,
      "reviews": ProductReviews,
      "reward_points": RewardPoints,
      "role": CompanyRole,
      "status": "ACTIVE",
      "store_credit": CustomerStoreCredit,
      "structure_id": "4",
      "suffix": "abc123",
      "taxvat": "xyz789",
      "team": CompanyTeam,
      "telephone": "abc123",
      "wishlist": Wishlist,
      "wishlist_v2": Wishlist,
      "wishlists": [Wishlist]
    }
  }
}

customerCart

Description

Return information about the customer's shopping cart.

Response

Returns a Cart!

Example

Query
query customerCart {
  customerCart {
    applied_coupon {
      ...AppliedCouponFragment
    }
    applied_coupons {
      ...AppliedCouponFragment
    }
    applied_gift_cards {
      ...AppliedGiftCardFragment
    }
    applied_reward_points {
      ...RewardPointsAmountFragment
    }
    applied_store_credit {
      ...AppliedStoreCreditFragment
    }
    available_gift_wrappings {
      ...GiftWrappingFragment
    }
    available_payment_methods {
      ...AvailablePaymentMethodFragment
    }
    billing_address {
      ...BillingCartAddressFragment
    }
    email
    gift_message {
      ...GiftMessageFragment
    }
    gift_receipt_included
    gift_wrapping {
      ...GiftWrappingFragment
    }
    id
    is_virtual
    items {
      ...CartItemInterfaceFragment
    }
    prices {
      ...CartPricesFragment
    }
    printed_card_included
    selected_payment_method {
      ...SelectedPaymentMethodFragment
    }
    shipping_addresses {
      ...ShippingCartAddressFragment
    }
    total_quantity
  }
}
Response
{
  "data": {
    "customerCart": {
      "applied_coupon": AppliedCoupon,
      "applied_coupons": [AppliedCoupon],
      "applied_gift_cards": [AppliedGiftCard],
      "applied_reward_points": RewardPointsAmount,
      "applied_store_credit": AppliedStoreCredit,
      "available_gift_wrappings": [GiftWrapping],
      "available_payment_methods": [
        AvailablePaymentMethod
      ],
      "billing_address": BillingCartAddress,
      "email": "xyz789",
      "gift_message": GiftMessage,
      "gift_receipt_included": true,
      "gift_wrapping": GiftWrapping,
      "id": "4",
      "is_virtual": false,
      "items": [CartItemInterface],
      "prices": CartPrices,
      "printed_card_included": false,
      "selected_payment_method": SelectedPaymentMethod,
      "shipping_addresses": [ShippingCartAddress],
      "total_quantity": 987.65
    }
  }
}

customerDownloadableProducts

Description

Return a list of downloadable products the customer has purchased.

Response

Returns a CustomerDownloadableProducts

Example

Query
query customerDownloadableProducts {
  customerDownloadableProducts {
    items {
      ...CustomerDownloadableProductFragment
    }
  }
}
Response
{
  "data": {
    "customerDownloadableProducts": {
      "items": [CustomerDownloadableProduct]
    }
  }
}

customerOrders

Use the customer query instead.
Response

Returns a CustomerOrders

Example

Query
query customerOrders {
  customerOrders {
    items {
      ...CustomerOrderFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    total_count
  }
}
Response
{
  "data": {
    "customerOrders": {
      "items": [CustomerOrder],
      "page_info": SearchResultPageInfo,
      "total_count": 123
    }
  }
}

customerPaymentTokens

Description

Return a list of customer payment tokens stored in the vault.

Response

Returns a CustomerPaymentTokens

Example

Query
query customerPaymentTokens {
  customerPaymentTokens {
    items {
      ...PaymentTokenFragment
    }
  }
}
Response
{
  "data": {
    "customerPaymentTokens": {"items": [PaymentToken]}
  }
}

dynamicBlocks

Description

Return a list of dynamic blocks filtered by type, location, or UIDs.

Response

Returns a DynamicBlocks!

Arguments
Name Description
input - DynamicBlocksFilterInput Defines the filter for returning matching dynamic blocks.
pageSize - Int The maximum number of results to return at once. The default is 20. Default = 20
currentPage - Int The page of results to return. The default is 1. Default = 1

Example

Query
query dynamicBlocks(
  $input: DynamicBlocksFilterInput,
  $pageSize: Int,
  $currentPage: Int
) {
  dynamicBlocks(
    input: $input,
    pageSize: $pageSize,
    currentPage: $currentPage
  ) {
    items {
      ...DynamicBlockFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    total_count
  }
}
Variables
{
  "input": DynamicBlocksFilterInput,
  "pageSize": 20,
  "currentPage": 1
}
Response
{
  "data": {
    "dynamicBlocks": {
      "items": [DynamicBlock],
      "page_info": SearchResultPageInfo,
      "total_count": 123
    }
  }
}

getHostedProUrl

Description

Retrieve the secure PayPal URL for a Payments Pro Hosted Solution transaction.

Response

Returns a HostedProUrl

Arguments
Name Description
input - HostedProUrlInput! An input object that specifies the cart ID.

Example

Query
query getHostedProUrl($input: HostedProUrlInput!) {
  getHostedProUrl(input: $input) {
    secure_form_url
  }
}
Variables
{"input": HostedProUrlInput}
Response
{
  "data": {
    "getHostedProUrl": {
      "secure_form_url": "xyz789"
    }
  }
}

getPayflowLinkToken

Description

Retrieve payment credentials for a transaction. Use this query for Payflow Link and Payments Advanced payment methods.

Response

Returns a PayflowLinkToken

Arguments
Name Description
input - PayflowLinkTokenInput! An input object that defines the requirements to receive a payment token.

Example

Query
query getPayflowLinkToken($input: PayflowLinkTokenInput!) {
  getPayflowLinkToken(input: $input) {
    mode
    paypal_url
    secure_token
    secure_token_id
  }
}
Variables
{"input": PayflowLinkTokenInput}
Response
{
  "data": {
    "getPayflowLinkToken": {
      "mode": "TEST",
      "paypal_url": "abc123",
      "secure_token": "abc123",
      "secure_token_id": "xyz789"
    }
  }
}

giftCardAccount

Description

Return details about a specific gift card.

Response

Returns a GiftCardAccount

Arguments
Name Description
input - GiftCardAccountInput! An input object that specifies the gift card code.

Example

Query
query giftCardAccount($input: GiftCardAccountInput!) {
  giftCardAccount(input: $input) {
    balance {
      ...MoneyFragment
    }
    code
    expiration_date
  }
}
Variables
{"input": GiftCardAccountInput}
Response
{
  "data": {
    "giftCardAccount": {
      "balance": Money,
      "code": "xyz789",
      "expiration_date": "xyz789"
    }
  }
}

giftRegistry

Description

Return the specified gift registry. Some details will not be available to guests.

Response

Returns a GiftRegistry

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the registry to search for.

Example

Query
query giftRegistry($giftRegistryUid: ID!) {
  giftRegistry(giftRegistryUid: $giftRegistryUid) {
    created_at
    dynamic_attributes {
      ...GiftRegistryDynamicAttributeFragment
    }
    event_name
    items {
      ...GiftRegistryItemInterfaceFragment
    }
    message
    owner_name
    privacy_settings
    registrants {
      ...GiftRegistryRegistrantFragment
    }
    shipping_address {
      ...CustomerAddressFragment
    }
    status
    type {
      ...GiftRegistryTypeFragment
    }
    uid
  }
}
Variables
{"giftRegistryUid": "4"}
Response
{
  "data": {
    "giftRegistry": {
      "created_at": "xyz789",
      "dynamic_attributes": [
        GiftRegistryDynamicAttribute
      ],
      "event_name": "abc123",
      "items": [GiftRegistryItemInterface],
      "message": "abc123",
      "owner_name": "abc123",
      "privacy_settings": "PRIVATE",
      "registrants": [GiftRegistryRegistrant],
      "shipping_address": CustomerAddress,
      "status": "ACTIVE",
      "type": GiftRegistryType,
      "uid": 4
    }
  }
}

giftRegistryEmailSearch

Description

Search for gift registries by specifying a registrant email address.

Response

Returns [GiftRegistrySearchResult]

Arguments
Name Description
email - String! The registrant's email.

Example

Query
query giftRegistryEmailSearch($email: String!) {
  giftRegistryEmailSearch(email: $email) {
    event_date
    event_title
    gift_registry_uid
    location
    name
    type
  }
}
Variables
{"email": "xyz789"}
Response
{
  "data": {
    "giftRegistryEmailSearch": [
      {
        "event_date": "xyz789",
        "event_title": "abc123",
        "gift_registry_uid": 4,
        "location": "abc123",
        "name": "xyz789",
        "type": "abc123"
      }
    ]
  }
}

giftRegistryIdSearch

Description

Search for gift registries by specifying a registry URL key.

Response

Returns [GiftRegistrySearchResult]

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.

Example

Query
query giftRegistryIdSearch($giftRegistryUid: ID!) {
  giftRegistryIdSearch(giftRegistryUid: $giftRegistryUid) {
    event_date
    event_title
    gift_registry_uid
    location
    name
    type
  }
}
Variables
{"giftRegistryUid": 4}
Response
{
  "data": {
    "giftRegistryIdSearch": [
      {
        "event_date": "xyz789",
        "event_title": "abc123",
        "gift_registry_uid": 4,
        "location": "abc123",
        "name": "abc123",
        "type": "abc123"
      }
    ]
  }
}

giftRegistryTypeSearch

Description

Search for gift registries by specifying the registrant name and registry type ID.

Response

Returns [GiftRegistrySearchResult]

Arguments
Name Description
firstName - String! The first name of the registrant.
lastName - String! The last name of the registrant.
giftRegistryTypeUid - ID The type UID of the registry.

Example

Query
query giftRegistryTypeSearch(
  $firstName: String!,
  $lastName: String!,
  $giftRegistryTypeUid: ID
) {
  giftRegistryTypeSearch(
    firstName: $firstName,
    lastName: $lastName,
    giftRegistryTypeUid: $giftRegistryTypeUid
  ) {
    event_date
    event_title
    gift_registry_uid
    location
    name
    type
  }
}
Variables
{
  "firstName": "xyz789",
  "lastName": "abc123",
  "giftRegistryTypeUid": 4
}
Response
{
  "data": {
    "giftRegistryTypeSearch": [
      {
        "event_date": "abc123",
        "event_title": "xyz789",
        "gift_registry_uid": "4",
        "location": "xyz789",
        "name": "abc123",
        "type": "xyz789"
      }
    ]
  }
}

giftRegistryTypes

Description

Get a list of available gift registry types.

Response

Returns [GiftRegistryType]

Example

Query
query giftRegistryTypes {
  giftRegistryTypes {
    dynamic_attributes_metadata {
      ...GiftRegistryDynamicAttributeMetadataInterfaceFragment
    }
    label
    uid
  }
}
Response
{
  "data": {
    "giftRegistryTypes": [
      {
        "dynamic_attributes_metadata": [
          GiftRegistryDynamicAttributeMetadataInterface
        ],
        "label": "abc123",
        "uid": 4
      }
    ]
  }
}

isCompanyAdminEmailAvailable

Description

Check whether the specified email can be used to register a company admin.

Arguments
Name Description
email - String!

Example

Query
query isCompanyAdminEmailAvailable($email: String!) {
  isCompanyAdminEmailAvailable(email: $email) {
    is_email_available
  }
}
Variables
{"email": "abc123"}
Response
{"data": {"isCompanyAdminEmailAvailable": {"is_email_available": false}}}

isCompanyEmailAvailable

Description

Check whether the specified email can be used to register a new company.

Response

Returns an IsCompanyEmailAvailableOutput

Arguments
Name Description
email - String!

Example

Query
query isCompanyEmailAvailable($email: String!) {
  isCompanyEmailAvailable(email: $email) {
    is_email_available
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"isCompanyEmailAvailable": {"is_email_available": true}}}

isCompanyRoleNameAvailable

Description

Check whether the specified role name is valid for the company.

Response

Returns an IsCompanyRoleNameAvailableOutput

Arguments
Name Description
name - String!

Example

Query
query isCompanyRoleNameAvailable($name: String!) {
  isCompanyRoleNameAvailable(name: $name) {
    is_role_name_available
  }
}
Variables
{"name": "xyz789"}
Response
{"data": {"isCompanyRoleNameAvailable": {"is_role_name_available": false}}}

isCompanyUserEmailAvailable

Description

Check whether the specified email can be used to register a company user.

Response

Returns an IsCompanyUserEmailAvailableOutput

Arguments
Name Description
email - String!

Example

Query
query isCompanyUserEmailAvailable($email: String!) {
  isCompanyUserEmailAvailable(email: $email) {
    is_email_available
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"isCompanyUserEmailAvailable": {"is_email_available": true}}}

isEmailAvailable

Description

Check whether the specified email has already been used to create a customer account.

Response

Returns an IsEmailAvailableOutput

Arguments
Name Description
email - String! The email address to check.

Example

Query
query isEmailAvailable($email: String!) {
  isEmailAvailable(email: $email) {
    is_email_available
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"isEmailAvailable": {"is_email_available": false}}}

negotiableQuote

Description

Retrieve the specified negotiable quote.

Response

Returns a NegotiableQuote

Arguments
Name Description
uid - ID!

Example

Query
query negotiableQuote($uid: ID!) {
  negotiableQuote(uid: $uid) {
    available_payment_methods {
      ...AvailablePaymentMethodFragment
    }
    billing_address {
      ...NegotiableQuoteBillingAddressFragment
    }
    buyer {
      ...NegotiableQuoteUserFragment
    }
    comments {
      ...NegotiableQuoteCommentFragment
    }
    created_at
    email
    history {
      ...NegotiableQuoteHistoryEntryFragment
    }
    is_virtual
    items {
      ...CartItemInterfaceFragment
    }
    name
    prices {
      ...CartPricesFragment
    }
    selected_payment_method {
      ...SelectedPaymentMethodFragment
    }
    shipping_addresses {
      ...NegotiableQuoteShippingAddressFragment
    }
    status
    total_quantity
    uid
    updated_at
  }
}
Variables
{"uid": 4}
Response
{
  "data": {
    "negotiableQuote": {
      "available_payment_methods": [
        AvailablePaymentMethod
      ],
      "billing_address": NegotiableQuoteBillingAddress,
      "buyer": NegotiableQuoteUser,
      "comments": [NegotiableQuoteComment],
      "created_at": "abc123",
      "email": "xyz789",
      "history": [NegotiableQuoteHistoryEntry],
      "is_virtual": false,
      "items": [CartItemInterface],
      "name": "abc123",
      "prices": CartPrices,
      "selected_payment_method": SelectedPaymentMethod,
      "shipping_addresses": [
        NegotiableQuoteShippingAddress
      ],
      "status": "SUBMITTED",
      "total_quantity": 123.45,
      "uid": "4",
      "updated_at": "xyz789"
    }
  }
}

negotiableQuotes

Description

Return a list of negotiable quotes that can be viewed by the logged-in customer.

Response

Returns a NegotiableQuotesOutput

Arguments
Name Description
filter - NegotiableQuoteFilterInput The filter to use to determine which negotiable quotes to return.
pageSize - Int The maximum number of results to return at once. The default value is 20. Default = 20
currentPage - Int The page of results to return. The default value is 1. Default = 1
sort - NegotiableQuoteSortInput The field to use for sorting results.

Example

Query
query negotiableQuotes(
  $filter: NegotiableQuoteFilterInput,
  $pageSize: Int,
  $currentPage: Int,
  $sort: NegotiableQuoteSortInput
) {
  negotiableQuotes(
    filter: $filter,
    pageSize: $pageSize,
    currentPage: $currentPage,
    sort: $sort
  ) {
    items {
      ...NegotiableQuoteFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    sort_fields {
      ...SortFieldsFragment
    }
    total_count
  }
}
Variables
{
  "filter": NegotiableQuoteFilterInput,
  "pageSize": 20,
  "currentPage": 1,
  "sort": NegotiableQuoteSortInput
}
Response
{
  "data": {
    "negotiableQuotes": {
      "items": [NegotiableQuote],
      "page_info": SearchResultPageInfo,
      "sort_fields": SortFields,
      "total_count": 123
    }
  }
}

pickupLocations

Description

The pickup locations query searches for locations that match the search request requirements.

Response

Returns a PickupLocations

Arguments
Name Description
area - AreaInput Perform search by location using radius and search term.
filters - PickupLocationFilterInput Apply filters by attributes.
sort - PickupLocationSortInput Specifies which attribute to sort on, and whether to return the results in ascending or descending order.
pageSize - Int The maximum number of pickup locations to return at once. The attribute is optional. Default = 20
currentPage - Int Specifies which page of results to return. The default value is 1. Default = 1
productsInfo - [ProductInfoInput] Information about products which should be delivered.

Example

Query
query pickupLocations(
  $area: AreaInput,
  $filters: PickupLocationFilterInput,
  $sort: PickupLocationSortInput,
  $pageSize: Int,
  $currentPage: Int,
  $productsInfo: [ProductInfoInput]
) {
  pickupLocations(
    area: $area,
    filters: $filters,
    sort: $sort,
    pageSize: $pageSize,
    currentPage: $currentPage,
    productsInfo: $productsInfo
  ) {
    items {
      ...PickupLocationFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    total_count
  }
}
Variables
{
  "area": AreaInput,
  "filters": PickupLocationFilterInput,
  "sort": PickupLocationSortInput,
  "pageSize": 20,
  "currentPage": 1,
  "productsInfo": [ProductInfoInput]
}
Response
{
  "data": {
    "pickupLocations": {
      "items": [PickupLocation],
      "page_info": SearchResultPageInfo,
      "total_count": 123
    }
  }
}

productReviewRatingsMetadata

Description

Return the active ratings attributes and the values each rating can have.

Response

Returns a ProductReviewRatingsMetadata!

Example

Query
query productReviewRatingsMetadata {
  productReviewRatingsMetadata {
    items {
      ...ProductReviewRatingMetadataFragment
    }
  }
}
Response
{
  "data": {
    "productReviewRatingsMetadata": {
      "items": [ProductReviewRatingMetadata]
    }
  }
}

products

Description

Search for products that match the criteria specified in the search and filter attributes.

Response

Returns a Products

Arguments
Name Description
search - String One or more keywords to use in a full-text search.
filter - ProductAttributeFilterInput The product attributes to search for and return.
pageSize - Int The maximum number of results to return at once. The default value is 20. Default = 20
currentPage - Int The page of results to return. The default value is 1. Default = 1
sort - ProductAttributeSortInput Specifies which attributes to sort on, and whether to return the results in ascending or descending order.

Example

Query
query products(
  $search: String,
  $filter: ProductAttributeFilterInput,
  $pageSize: Int,
  $currentPage: Int,
  $sort: ProductAttributeSortInput
) {
  products(
    search: $search,
    filter: $filter,
    pageSize: $pageSize,
    currentPage: $currentPage,
    sort: $sort
  ) {
    aggregations {
      ...AggregationFragment
    }
    filters {
      ...LayerFilterFragment
    }
    items {
      ...ProductInterfaceFragment
    }
    page_info {
      ...SearchResultPageInfoFragment
    }
    sort_fields {
      ...SortFieldsFragment
    }
    suggestions {
      ...SearchSuggestionFragment
    }
    total_count
  }
}
Variables
{
  "search": "xyz789",
  "filter": ProductAttributeFilterInput,
  "pageSize": 20,
  "currentPage": 1,
  "sort": ProductAttributeSortInput
}
Response
{
  "data": {
    "products": {
      "aggregations": [Aggregation],
      "filters": [LayerFilter],
      "items": [ProductInterface],
      "page_info": SearchResultPageInfo,
      "sort_fields": SortFields,
      "suggestions": [SearchSuggestion],
      "total_count": 987
    }
  }
}

route

Description

Return the full details for a specified product, category, or CMS page.

Response

Returns a RoutableInterface

Arguments
Name Description
url - String! A url_key appended by the `url_suffix, if one exists.

Example

Query
query route($url: String!) {
  route(url: $url) {
    redirect_code
    relative_url
    type
  }
}
Variables
{"url": "xyz789"}
Response
{
  "data": {
    "route": {
      "redirect_code": 987,
      "relative_url": "abc123",
      "type": "CMS_PAGE"
    }
  }
}

storeConfig

Description

Return details about the store's configuration.

Response

Returns a StoreConfig

Example

Query
query storeConfig {
  storeConfig {
    absolute_footer
    allow_gift_receipt
    allow_gift_wrapping_on_order
    allow_gift_wrapping_on_order_items
    allow_guests_to_write_product_reviews
    allow_items
    allow_order
    allow_printed_card
    autocomplete_on_storefront
    base_currency_code
    base_link_url
    base_media_url
    base_static_url
    base_url
    braintree_cc_vault_active
    cart_gift_wrapping
    cart_printed_card
    catalog_default_sort_by
    category_fixed_product_tax_display_setting
    category_url_suffix
    check_money_order_enable_for_specific_countries
    check_money_order_enabled
    check_money_order_make_check_payable_to
    check_money_order_max_order_total
    check_money_order_min_order_total
    check_money_order_new_order_status
    check_money_order_payment_from_specific_countries
    check_money_order_send_check_to
    check_money_order_sort_order
    check_money_order_title
    cms_home_page
    cms_no_cookies
    cms_no_route
    code
    configurable_thumbnail_source
    copyright
    default_description
    default_display_currency_code
    default_keywords
    default_title
    demonotice
    enable_multiple_wishlists
    front
    grid_per_page
    grid_per_page_values
    head_includes
    head_shortcut_icon
    header_logo_src
    id
    is_default_store
    is_default_store_group
    is_negotiable_quote_active
    is_requisition_list_active
    list_mode
    list_per_page
    list_per_page_values
    locale
    logo_alt
    logo_height
    logo_width
    magento_reward_general_is_enabled
    magento_reward_general_is_enabled_on_front
    magento_reward_general_min_points_balance
    magento_reward_general_publish_history
    magento_reward_points_invitation_customer
    magento_reward_points_invitation_customer_limit
    magento_reward_points_invitation_order
    magento_reward_points_invitation_order_limit
    magento_reward_points_newsletter
    magento_reward_points_order
    magento_reward_points_register
    magento_reward_points_review
    magento_reward_points_review_limit
    magento_wishlist_general_is_enabled
    maximum_number_of_wishlists
    minimum_password_length
    no_route
    payment_payflowpro_cc_vault_active
    printed_card_price
    product_fixed_product_tax_display_setting
    product_reviews_enabled
    product_url_suffix
    required_character_classes_number
    returns_enabled
    root_category_id
    root_category_uid
    sales_fixed_product_tax_display_setting
    sales_gift_wrapping
    sales_printed_card
    secure_base_link_url
    secure_base_media_url
    secure_base_static_url
    secure_base_url
    send_friend {
      ...SendFriendConfigurationFragment
    }
    show_cms_breadcrumbs
    store_code
    store_group_code
    store_group_name
    store_name
    store_sort_order
    timezone
    title_prefix
    title_separator
    title_suffix
    use_store_in_url
    website_code
    website_id
    website_name
    weight_unit
    welcome
    zero_subtotal_enable_for_specific_countries
    zero_subtotal_enabled
    zero_subtotal_new_order_status
    zero_subtotal_payment_action
    zero_subtotal_payment_from_specific_countries
    zero_subtotal_sort_order
    zero_subtotal_title
  }
}
Response
{
  "data": {
    "storeConfig": {
      "absolute_footer": "xyz789",
      "allow_gift_receipt": "abc123",
      "allow_gift_wrapping_on_order": "abc123",
      "allow_gift_wrapping_on_order_items": "abc123",
      "allow_guests_to_write_product_reviews": "xyz789",
      "allow_items": "xyz789",
      "allow_order": "xyz789",
      "allow_printed_card": "abc123",
      "autocomplete_on_storefront": true,
      "base_currency_code": "abc123",
      "base_link_url": "abc123",
      "base_media_url": "abc123",
      "base_static_url": "abc123",
      "base_url": "abc123",
      "braintree_cc_vault_active": "abc123",
      "cart_gift_wrapping": "xyz789",
      "cart_printed_card": "abc123",
      "catalog_default_sort_by": "abc123",
      "category_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
      "category_url_suffix": "abc123",
      "check_money_order_enable_for_specific_countries": false,
      "check_money_order_enabled": false,
      "check_money_order_make_check_payable_to": "abc123",
      "check_money_order_max_order_total": "xyz789",
      "check_money_order_min_order_total": "abc123",
      "check_money_order_new_order_status": "abc123",
      "check_money_order_payment_from_specific_countries": "xyz789",
      "check_money_order_send_check_to": "abc123",
      "check_money_order_sort_order": 123,
      "check_money_order_title": "xyz789",
      "cms_home_page": "xyz789",
      "cms_no_cookies": "abc123",
      "cms_no_route": "xyz789",
      "code": "abc123",
      "configurable_thumbnail_source": "xyz789",
      "copyright": "xyz789",
      "default_description": "xyz789",
      "default_display_currency_code": "xyz789",
      "default_keywords": "abc123",
      "default_title": "xyz789",
      "demonotice": 987,
      "enable_multiple_wishlists": "xyz789",
      "front": "xyz789",
      "grid_per_page": 123,
      "grid_per_page_values": "abc123",
      "head_includes": "xyz789",
      "head_shortcut_icon": "xyz789",
      "header_logo_src": "xyz789",
      "id": 987,
      "is_default_store": true,
      "is_default_store_group": false,
      "is_negotiable_quote_active": true,
      "is_requisition_list_active": "xyz789",
      "list_mode": "xyz789",
      "list_per_page": 123,
      "list_per_page_values": "xyz789",
      "locale": "xyz789",
      "logo_alt": "xyz789",
      "logo_height": 123,
      "logo_width": 123,
      "magento_reward_general_is_enabled": "xyz789",
      "magento_reward_general_is_enabled_on_front": "abc123",
      "magento_reward_general_min_points_balance": "xyz789",
      "magento_reward_general_publish_history": "xyz789",
      "magento_reward_points_invitation_customer": "abc123",
      "magento_reward_points_invitation_customer_limit": "xyz789",
      "magento_reward_points_invitation_order": "abc123",
      "magento_reward_points_invitation_order_limit": "abc123",
      "magento_reward_points_newsletter": "xyz789",
      "magento_reward_points_order": "abc123",
      "magento_reward_points_register": "abc123",
      "magento_reward_points_review": "xyz789",
      "magento_reward_points_review_limit": "abc123",
      "magento_wishlist_general_is_enabled": "abc123",
      "maximum_number_of_wishlists": "abc123",
      "minimum_password_length": "abc123",
      "no_route": "xyz789",
      "payment_payflowpro_cc_vault_active": "xyz789",
      "printed_card_price": "xyz789",
      "product_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
      "product_reviews_enabled": "abc123",
      "product_url_suffix": "xyz789",
      "required_character_classes_number": "abc123",
      "returns_enabled": "abc123",
      "root_category_id": 987,
      "root_category_uid": 4,
      "sales_fixed_product_tax_display_setting": "INCLUDE_FPT_WITHOUT_DETAILS",
      "sales_gift_wrapping": "xyz789",
      "sales_printed_card": "xyz789",
      "secure_base_link_url": "xyz789",
      "secure_base_media_url": "xyz789",
      "secure_base_static_url": "abc123",
      "secure_base_url": "xyz789",
      "send_friend": SendFriendConfiguration,
      "show_cms_breadcrumbs": 123,
      "store_code": "4",
      "store_group_code": 4,
      "store_group_name": "abc123",
      "store_name": "abc123",
      "store_sort_order": 987,
      "timezone": "xyz789",
      "title_prefix": "xyz789",
      "title_separator": "abc123",
      "title_suffix": "abc123",
      "use_store_in_url": false,
      "website_code": 4,
      "website_id": 987,
      "website_name": "xyz789",
      "weight_unit": "abc123",
      "welcome": "abc123",
      "zero_subtotal_enable_for_specific_countries": true,
      "zero_subtotal_enabled": true,
      "zero_subtotal_new_order_status": "abc123",
      "zero_subtotal_payment_action": "abc123",
      "zero_subtotal_payment_from_specific_countries": "xyz789",
      "zero_subtotal_sort_order": 987,
      "zero_subtotal_title": "xyz789"
    }
  }
}

urlResolver

Use the route query instead.
Description

Return the relative URL for a specified product, category or CMS page.

Response

Returns an EntityUrl

Arguments
Name Description
url - String! A url_key appended by the `url_suffix, if one exists.

Example

Query
query urlResolver($url: String!) {
  urlResolver(url: $url) {
    canonical_url
    entity_uid
    id
    redirectCode
    relative_url
    type
  }
}
Variables
{"url": "abc123"}
Response
{
  "data": {
    "urlResolver": {
      "canonical_url": "abc123",
      "entity_uid": 4,
      "id": 123,
      "redirectCode": 987,
      "relative_url": "xyz789",
      "type": "CMS_PAGE"
    }
  }
}

wishlist

Moved under Customer.wishlist.
Description

Return the contents of a customer's wish list.

Response

Returns a WishlistOutput

Example

Query
query wishlist {
  wishlist {
    items {
      ...WishlistItemFragment
    }
    items_count
    name
    sharing_code
    updated_at
  }
}
Response
{
  "data": {
    "wishlist": {
      "items": [WishlistItem],
      "items_count": 987,
      "name": "xyz789",
      "sharing_code": "abc123",
      "updated_at": "abc123"
    }
  }
}

Mutations

addBundleProductsToCart

Description

Add one or more bundle products to the specified cart. We recommend using addProductsToCart instead.

Response

Returns an AddBundleProductsToCartOutput

Arguments
Name Description
input - AddBundleProductsToCartInput An input object that defines which bundle products to add to the cart.

Example

Query
mutation addBundleProductsToCart($input: AddBundleProductsToCartInput) {
  addBundleProductsToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": AddBundleProductsToCartInput}
Response
{"data": {"addBundleProductsToCart": {"cart": Cart}}}

addConfigurableProductsToCart

Description

Add one or more configurable products to the specified cart. We recommend using addProductsToCart instead.

Arguments
Name Description
input - AddConfigurableProductsToCartInput An input object that defines which configurable products to add to the cart.

Example

Query
mutation addConfigurableProductsToCart($input: AddConfigurableProductsToCartInput) {
  addConfigurableProductsToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": AddConfigurableProductsToCartInput}
Response
{
  "data": {
    "addConfigurableProductsToCart": {"cart": Cart}
  }
}

addDownloadableProductsToCart

Description

Add one or more downloadable products to the specified cart. We recommend using addProductsToCart instead.

Arguments
Name Description
input - AddDownloadableProductsToCartInput An input object that defines which downloadable products to add to the cart.

Example

Query
mutation addDownloadableProductsToCart($input: AddDownloadableProductsToCartInput) {
  addDownloadableProductsToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": AddDownloadableProductsToCartInput}
Response
{
  "data": {
    "addDownloadableProductsToCart": {"cart": Cart}
  }
}

addGiftRegistryRegistrants

Description

Add registrants to the specified gift registry.

Response

Returns an AddGiftRegistryRegistrantsOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
registrants - [AddGiftRegistryRegistrantInput!]! An array registrants to add.

Example

Query
mutation addGiftRegistryRegistrants(
  $giftRegistryUid: ID!,
  $registrants: [AddGiftRegistryRegistrantInput!]!
) {
  addGiftRegistryRegistrants(
    giftRegistryUid: $giftRegistryUid,
    registrants: $registrants
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": "4",
  "registrants": [AddGiftRegistryRegistrantInput]
}
Response
{
  "data": {
    "addGiftRegistryRegistrants": {
      "gift_registry": GiftRegistry
    }
  }
}

addProductsToCart

Description

Add any type of product to the cart.

Response

Returns an AddProductsToCartOutput

Arguments
Name Description
cartId - String! The cart ID of the shopper.
cartItems - [CartItemInput!]! An array that defines the products to add to the cart.

Example

Query
mutation addProductsToCart(
  $cartId: String!,
  $cartItems: [CartItemInput!]!
) {
  addProductsToCart(
    cartId: $cartId,
    cartItems: $cartItems
  ) {
    cart {
      ...CartFragment
    }
    user_errors {
      ...CartUserInputErrorFragment
    }
  }
}
Variables
{
  "cartId": "abc123",
  "cartItems": [CartItemInput]
}
Response
{
  "data": {
    "addProductsToCart": {
      "cart": Cart,
      "user_errors": [CartUserInputError]
    }
  }
}

addProductsToCompareList

Description

Add products to the specified compare list.

Response

Returns a CompareList

Arguments
Name Description
input - AddProductsToCompareListInput An input object that defines which products to add to an existing compare list.

Example

Query
mutation addProductsToCompareList($input: AddProductsToCompareListInput) {
  addProductsToCompareList(input: $input) {
    attributes {
      ...ComparableAttributeFragment
    }
    item_count
    items {
      ...ComparableItemFragment
    }
    uid
  }
}
Variables
{"input": AddProductsToCompareListInput}
Response
{
  "data": {
    "addProductsToCompareList": {
      "attributes": [ComparableAttribute],
      "item_count": 987,
      "items": [ComparableItem],
      "uid": 4
    }
  }
}

addProductsToRequisitionList

Description

Add items to the specified requisition list.

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.
requisitionListItems - [RequisitionListItemsInput!]! An array of products to be added to the requisition list.

Example

Query
mutation addProductsToRequisitionList(
  $requisitionListUid: ID!,
  $requisitionListItems: [RequisitionListItemsInput!]!
) {
  addProductsToRequisitionList(
    requisitionListUid: $requisitionListUid,
    requisitionListItems: $requisitionListItems
  ) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "requisitionListUid": 4,
  "requisitionListItems": [RequisitionListItemsInput]
}
Response
{
  "data": {
    "addProductsToRequisitionList": {
      "requisition_list": RequisitionList
    }
  }
}

addProductsToWishlist

Description

Add one or more products to the specified wish list. This mutation supports all product types.

Response

Returns an AddProductsToWishlistOutput

Arguments
Name Description
wishlistId - ID! The ID of a wish list.
wishlistItems - [WishlistItemInput!]! An array of products to add to the wish list.

Example

Query
mutation addProductsToWishlist(
  $wishlistId: ID!,
  $wishlistItems: [WishlistItemInput!]!
) {
  addProductsToWishlist(
    wishlistId: $wishlistId,
    wishlistItems: $wishlistItems
  ) {
    user_errors {
      ...WishListUserInputErrorFragment
    }
    wishlist {
      ...WishlistFragment
    }
  }
}
Variables
{
  "wishlistId": "4",
  "wishlistItems": [WishlistItemInput]
}
Response
{
  "data": {
    "addProductsToWishlist": {
      "user_errors": [WishListUserInputError],
      "wishlist": Wishlist
    }
  }
}

addPurchaseOrderComment

Description

Add a comment to an existing purchase order.

Response

Returns an AddPurchaseOrderCommentOutput

Arguments
Name Description
input - AddPurchaseOrderCommentInput!

Example

Query
mutation addPurchaseOrderComment($input: AddPurchaseOrderCommentInput!) {
  addPurchaseOrderComment(input: $input) {
    comment {
      ...PurchaseOrderCommentFragment
    }
  }
}
Variables
{"input": AddPurchaseOrderCommentInput}
Response
{
  "data": {
    "addPurchaseOrderComment": {
      "comment": PurchaseOrderComment
    }
  }
}

addPurchaseOrderItemsToCart

Description

Add purchase order items to the shopping cart.

Response

Returns an AddProductsToCartOutput

Arguments
Name Description
input - AddPurchaseOrderItemsToCartInput!

Example

Query
mutation addPurchaseOrderItemsToCart($input: AddPurchaseOrderItemsToCartInput!) {
  addPurchaseOrderItemsToCart(input: $input) {
    cart {
      ...CartFragment
    }
    user_errors {
      ...CartUserInputErrorFragment
    }
  }
}
Variables
{"input": AddPurchaseOrderItemsToCartInput}
Response
{
  "data": {
    "addPurchaseOrderItemsToCart": {
      "cart": Cart,
      "user_errors": [CartUserInputError]
    }
  }
}

addRequisitionListItemsToCart

Description

Add items in the requisition list to the customer's cart.

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.
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.

Example

Query
mutation addRequisitionListItemsToCart(
  $requisitionListUid: ID!,
  $requisitionListItemUids: [ID!]
) {
  addRequisitionListItemsToCart(
    requisitionListUid: $requisitionListUid,
    requisitionListItemUids: $requisitionListItemUids
  ) {
    add_requisition_list_items_to_cart_user_errors {
      ...AddRequisitionListItemToCartUserErrorFragment
    }
    cart {
      ...CartFragment
    }
    status
  }
}
Variables
{"requisitionListUid": 4, "requisitionListItemUids": [4]}
Response
{
  "data": {
    "addRequisitionListItemsToCart": {
      "add_requisition_list_items_to_cart_user_errors": [
        AddRequisitionListItemToCartUserError
      ],
      "cart": Cart,
      "status": false
    }
  }
}

addReturnComment

Description

Add a comment to an existing return.

Response

Returns an AddReturnCommentOutput

Arguments
Name Description
input - AddReturnCommentInput! An input object that defines a return comment.

Example

Query
mutation addReturnComment($input: AddReturnCommentInput!) {
  addReturnComment(input: $input) {
    return {
      ...ReturnFragment
    }
  }
}
Variables
{"input": AddReturnCommentInput}
Response
{"data": {"addReturnComment": {"return": Return}}}

addReturnTracking

Description

Add tracking information to the return.

Response

Returns an AddReturnTrackingOutput

Arguments
Name Description
input - AddReturnTrackingInput! An input object that defines tracking information.

Example

Query
mutation addReturnTracking($input: AddReturnTrackingInput!) {
  addReturnTracking(input: $input) {
    return {
      ...ReturnFragment
    }
    return_shipping_tracking {
      ...ReturnShippingTrackingFragment
    }
  }
}
Variables
{"input": AddReturnTrackingInput}
Response
{
  "data": {
    "addReturnTracking": {
      "return": Return,
      "return_shipping_tracking": ReturnShippingTracking
    }
  }
}

addSimpleProductsToCart

Description

Add one or more simple products to the specified cart. We recommend using addProductsToCart instead.

Response

Returns an AddSimpleProductsToCartOutput

Arguments
Name Description
input - AddSimpleProductsToCartInput An input object that defines which simple products to add to the cart.

Example

Query
mutation addSimpleProductsToCart($input: AddSimpleProductsToCartInput) {
  addSimpleProductsToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": AddSimpleProductsToCartInput}
Response
{"data": {"addSimpleProductsToCart": {"cart": Cart}}}

addVirtualProductsToCart

Description

Add one or more virtual products to the specified cart. We recommend using addProductsToCart instead.

Response

Returns an AddVirtualProductsToCartOutput

Arguments
Name Description
input - AddVirtualProductsToCartInput An input object that defines which virtual products to add to the cart.

Example

Query
mutation addVirtualProductsToCart($input: AddVirtualProductsToCartInput) {
  addVirtualProductsToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": AddVirtualProductsToCartInput}
Response
{"data": {"addVirtualProductsToCart": {"cart": Cart}}}

addWishlistItemsToCart

Description

Add items in the specified wishlist to the customer's cart.

Response

Returns an AddWishlistItemsToCartOutput

Arguments
Name Description
wishlistId - ID! The unique ID of the wish list
wishlistItemIds - [ID!] An array of IDs representing products to be added to the cart. If no IDs are specified, all items in the wishlist will be added to the cart

Example

Query
mutation addWishlistItemsToCart(
  $wishlistId: ID!,
  $wishlistItemIds: [ID!]
) {
  addWishlistItemsToCart(
    wishlistId: $wishlistId,
    wishlistItemIds: $wishlistItemIds
  ) {
    add_wishlist_items_to_cart_user_errors {
      ...WishlistCartUserInputErrorFragment
    }
    status
    wishlist {
      ...WishlistFragment
    }
  }
}
Variables
{"wishlistId": 4, "wishlistItemIds": ["4"]}
Response
{
  "data": {
    "addWishlistItemsToCart": {
      "add_wishlist_items_to_cart_user_errors": [
        WishlistCartUserInputError
      ],
      "status": false,
      "wishlist": Wishlist
    }
  }
}

applyCouponToCart

Description

Apply a pre-defined coupon code to the specified cart.

Response

Returns an ApplyCouponToCartOutput

Arguments
Name Description
input - ApplyCouponToCartInput An input object that defines the coupon code to apply to the cart.

Example

Query
mutation applyCouponToCart($input: ApplyCouponToCartInput) {
  applyCouponToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": ApplyCouponToCartInput}
Response
{"data": {"applyCouponToCart": {"cart": Cart}}}

applyGiftCardToCart

Description

Apply a pre-defined gift card code to the specified cart.

Response

Returns an ApplyGiftCardToCartOutput

Arguments
Name Description
input - ApplyGiftCardToCartInput An input object that specifies the gift card code and cart.

Example

Query
mutation applyGiftCardToCart($input: ApplyGiftCardToCartInput) {
  applyGiftCardToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": ApplyGiftCardToCartInput}
Response
{"data": {"applyGiftCardToCart": {"cart": Cart}}}

applyRewardPointsToCart

Description

Apply all available points, up to the cart total. Partial redemption is not available.

Response

Returns an ApplyRewardPointsToCartOutput

Arguments
Name Description
cartId - ID!

Example

Query
mutation applyRewardPointsToCart($cartId: ID!) {
  applyRewardPointsToCart(cartId: $cartId) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"cartId": 4}
Response
{"data": {"applyRewardPointsToCart": {"cart": Cart}}}

applyStoreCreditToCart

Description

Apply store credit to the specified cart.

Response

Returns an ApplyStoreCreditToCartOutput

Arguments
Name Description
input - ApplyStoreCreditToCartInput! An input object that specifies the cart ID.

Example

Query
mutation applyStoreCreditToCart($input: ApplyStoreCreditToCartInput!) {
  applyStoreCreditToCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": ApplyStoreCreditToCartInput}
Response
{"data": {"applyStoreCreditToCart": {"cart": Cart}}}

approvePurchaseOrders

Description

Approve purchase orders.

Response

Returns a PurchaseOrdersActionOutput

Arguments
Name Description
input - PurchaseOrdersActionInput!

Example

Query
mutation approvePurchaseOrders($input: PurchaseOrdersActionInput!) {
  approvePurchaseOrders(input: $input) {
    errors {
      ...PurchaseOrderActionErrorFragment
    }
    purchase_orders {
      ...PurchaseOrderFragment
    }
  }
}
Variables
{"input": PurchaseOrdersActionInput}
Response
{
  "data": {
    "approvePurchaseOrders": {
      "errors": [PurchaseOrderActionError],
      "purchase_orders": [PurchaseOrder]
    }
  }
}

assignCompareListToCustomer

Description

Assign the specified compare list to the logged in customer.

Response

Returns an AssignCompareListToCustomerOutput

Arguments
Name Description
uid - ID! The unique ID of the compare list to be assigned.

Example

Query
mutation assignCompareListToCustomer($uid: ID!) {
  assignCompareListToCustomer(uid: $uid) {
    compare_list {
      ...CompareListFragment
    }
    result
  }
}
Variables
{"uid": 4}
Response
{
  "data": {
    "assignCompareListToCustomer": {
      "compare_list": CompareList,
      "result": true
    }
  }
}

assignCustomerToGuestCart

Description

Assign a logged-in customer to the specified guest shopping cart.

Response

Returns a Cart!

Arguments
Name Description
cart_id - String!

Example

Query
mutation assignCustomerToGuestCart($cart_id: String!) {
  assignCustomerToGuestCart(cart_id: $cart_id) {
    applied_coupon {
      ...AppliedCouponFragment
    }
    applied_coupons {
      ...AppliedCouponFragment
    }
    applied_gift_cards {
      ...AppliedGiftCardFragment
    }
    applied_reward_points {
      ...RewardPointsAmountFragment
    }
    applied_store_credit {
      ...AppliedStoreCreditFragment
    }
    available_gift_wrappings {
      ...GiftWrappingFragment
    }
    available_payment_methods {
      ...AvailablePaymentMethodFragment
    }
    billing_address {
      ...BillingCartAddressFragment
    }
    email
    gift_message {
      ...GiftMessageFragment
    }
    gift_receipt_included
    gift_wrapping {
      ...GiftWrappingFragment
    }
    id
    is_virtual
    items {
      ...CartItemInterfaceFragment
    }
    prices {
      ...CartPricesFragment
    }
    printed_card_included
    selected_payment_method {
      ...SelectedPaymentMethodFragment
    }
    shipping_addresses {
      ...ShippingCartAddressFragment
    }
    total_quantity
  }
}
Variables
{"cart_id": "abc123"}
Response
{
  "data": {
    "assignCustomerToGuestCart": {
      "applied_coupon": AppliedCoupon,
      "applied_coupons": [AppliedCoupon],
      "applied_gift_cards": [AppliedGiftCard],
      "applied_reward_points": RewardPointsAmount,
      "applied_store_credit": AppliedStoreCredit,
      "available_gift_wrappings": [GiftWrapping],
      "available_payment_methods": [
        AvailablePaymentMethod
      ],
      "billing_address": BillingCartAddress,
      "email": "xyz789",
      "gift_message": GiftMessage,
      "gift_receipt_included": false,
      "gift_wrapping": GiftWrapping,
      "id": 4,
      "is_virtual": false,
      "items": [CartItemInterface],
      "prices": CartPrices,
      "printed_card_included": false,
      "selected_payment_method": SelectedPaymentMethod,
      "shipping_addresses": [ShippingCartAddress],
      "total_quantity": 123.45
    }
  }
}

cancelPurchaseOrders

Description

Cancel purchase orders.

Response

Returns a PurchaseOrdersActionOutput

Arguments
Name Description
input - PurchaseOrdersActionInput!

Example

Query
mutation cancelPurchaseOrders($input: PurchaseOrdersActionInput!) {
  cancelPurchaseOrders(input: $input) {
    errors {
      ...PurchaseOrderActionErrorFragment
    }
    purchase_orders {
      ...PurchaseOrderFragment
    }
  }
}
Variables
{"input": PurchaseOrdersActionInput}
Response
{
  "data": {
    "cancelPurchaseOrders": {
      "errors": [PurchaseOrderActionError],
      "purchase_orders": [PurchaseOrder]
    }
  }
}

changeCustomerPassword

Description

Change the password for the logged-in customer.

Response

Returns a Customer

Arguments
Name Description
currentPassword - String! The customer's original password.
newPassword - String! The customer's updated password.

Example

Query
mutation changeCustomerPassword(
  $currentPassword: String!,
  $newPassword: String!
) {
  changeCustomerPassword(
    currentPassword: $currentPassword,
    newPassword: $newPassword
  ) {
    addresses {
      ...CustomerAddressFragment
    }
    allow_remote_shopping_assistance
    compare_list {
      ...CompareListFragment
    }
    created_at
    date_of_birth
    default_billing
    default_shipping
    dob
    email
    firstname
    gender
    gift_registries {
      ...GiftRegistryFragment
    }
    gift_registry {
      ...GiftRegistryFragment
    }
    group_id
    id
    is_subscribed
    job_title
    lastname
    middlename
    orders {
      ...CustomerOrdersFragment
    }
    prefix
    purchase_order {
      ...PurchaseOrderFragment
    }
    purchase_order_approval_rule {
      ...PurchaseOrderApprovalRuleFragment
    }
    purchase_order_approval_rule_metadata {
      ...PurchaseOrderApprovalRuleMetadataFragment
    }
    purchase_order_approval_rules {
      ...PurchaseOrderApprovalRulesFragment
    }
    purchase_orders {
      ...PurchaseOrdersFragment
    }
    purchase_orders_enabled
    requisition_lists {
      ...RequisitionListsFragment
    }
    return {
      ...ReturnFragment
    }
    returns {
      ...ReturnsFragment
    }
    reviews {
      ...ProductReviewsFragment
    }
    reward_points {
      ...RewardPointsFragment
    }
    role {
      ...CompanyRoleFragment
    }
    status
    store_credit {
      ...CustomerStoreCreditFragment
    }
    structure_id
    suffix
    taxvat
    team {
      ...CompanyTeamFragment
    }
    telephone
    wishlist {
      ...WishlistFragment
    }
    wishlist_v2 {
      ...WishlistFragment
    }
    wishlists {
      ...WishlistFragment
    }
  }
}
Variables
{
  "currentPassword": "abc123",
  "newPassword": "xyz789"
}
Response
{
  "data": {
    "changeCustomerPassword": {
      "addresses": [CustomerAddress],
      "allow_remote_shopping_assistance": false,
      "compare_list": CompareList,
      "created_at": "abc123",
      "date_of_birth": "abc123",
      "default_billing": "xyz789",
      "default_shipping": "abc123",
      "dob": "abc123",
      "email": "abc123",
      "firstname": "xyz789",
      "gender": 123,
      "gift_registries": [GiftRegistry],
      "gift_registry": GiftRegistry,
      "group_id": 123,
      "id": 123,
      "is_subscribed": true,
      "job_title": "xyz789",
      "lastname": "abc123",
      "middlename": "abc123",
      "orders": CustomerOrders,
      "prefix": "xyz789",
      "purchase_order": PurchaseOrder,
      "purchase_order_approval_rule": PurchaseOrderApprovalRule,
      "purchase_order_approval_rule_metadata": PurchaseOrderApprovalRuleMetadata,
      "purchase_order_approval_rules": PurchaseOrderApprovalRules,
      "purchase_orders": PurchaseOrders,
      "purchase_orders_enabled": false,
      "requisition_lists": RequisitionLists,
      "return": Return,
      "returns": Returns,
      "reviews": ProductReviews,
      "reward_points": RewardPoints,
      "role": CompanyRole,
      "status": "ACTIVE",
      "store_credit": CustomerStoreCredit,
      "structure_id": 4,
      "suffix": "abc123",
      "taxvat": "abc123",
      "team": CompanyTeam,
      "telephone": "abc123",
      "wishlist": Wishlist,
      "wishlist_v2": Wishlist,
      "wishlists": [Wishlist]
    }
  }
}

clearCustomerCart

Description

Remove all items from the specified cart.

Response

Returns a ClearCustomerCartOutput

Arguments
Name Description
cartUid - String! The masked ID of the cart.

Example

Query
mutation clearCustomerCart($cartUid: String!) {
  clearCustomerCart(cartUid: $cartUid) {
    cart {
      ...CartFragment
    }
    status
  }
}
Variables
{"cartUid": "abc123"}
Response
{
  "data": {
    "clearCustomerCart": {"cart": Cart, "status": true}
  }
}

closeNegotiableQuotes

Description

Mark a negotiable quote as closed. The negotiable quote is still visible on the storefront.

Response

Returns a CloseNegotiableQuotesOutput

Arguments
Name Description
input - CloseNegotiableQuotesInput! An input object that closes a negotiable quote.

Example

Query
mutation closeNegotiableQuotes($input: CloseNegotiableQuotesInput!) {
  closeNegotiableQuotes(input: $input) {
    closed_quotes {
      ...NegotiableQuoteFragment
    }
    negotiable_quotes {
      ...NegotiableQuotesOutputFragment
    }
    operation_results {
      ... on NegotiableQuoteUidOperationSuccess {
        ...NegotiableQuoteUidOperationSuccessFragment
      }
      ... on CloseNegotiableQuoteOperationFailure {
        ...CloseNegotiableQuoteOperationFailureFragment
      }
    }
    result_status
  }
}
Variables
{"input": CloseNegotiableQuotesInput}
Response
{
  "data": {
    "closeNegotiableQuotes": {
      "closed_quotes": [NegotiableQuote],
      "negotiable_quotes": NegotiableQuotesOutput,
      "operation_results": [
        NegotiableQuoteUidOperationSuccess
      ],
      "result_status": "SUCCESS"
    }
  }
}

copyItemsBetweenRequisitionLists

Description

Copy items from one requisition list to another.

Arguments
Name Description
sourceRequisitionListUid - ID! The unique ID of the source requisition list.
destinationRequisitionListUid - ID The unique ID of the destination requisition list. If null, a new requisition list will be created.
requisitionListItem - CopyItemsBetweenRequisitionListsInput The list of products to copy.

Example

Query
mutation copyItemsBetweenRequisitionLists(
  $sourceRequisitionListUid: ID!,
  $destinationRequisitionListUid: ID,
  $requisitionListItem: CopyItemsBetweenRequisitionListsInput
) {
  copyItemsBetweenRequisitionLists(
    sourceRequisitionListUid: $sourceRequisitionListUid,
    destinationRequisitionListUid: $destinationRequisitionListUid,
    requisitionListItem: $requisitionListItem
  ) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "sourceRequisitionListUid": "4",
  "destinationRequisitionListUid": 4,
  "requisitionListItem": CopyItemsBetweenRequisitionListsInput
}
Response
{
  "data": {
    "copyItemsBetweenRequisitionLists": {
      "requisition_list": RequisitionList
    }
  }
}

copyProductsBetweenWishlists

Description

Copy products from one wish list to another. The original wish list is unchanged.

Arguments
Name Description
sourceWishlistUid - ID! The ID of the original wish list.
destinationWishlistUid - ID! The ID of the target wish list.
wishlistItems - [WishlistItemCopyInput!]! An array of items to copy.

Example

Query
mutation copyProductsBetweenWishlists(
  $sourceWishlistUid: ID!,
  $destinationWishlistUid: ID!,
  $wishlistItems: [WishlistItemCopyInput!]!
) {
  copyProductsBetweenWishlists(
    sourceWishlistUid: $sourceWishlistUid,
    destinationWishlistUid: $destinationWishlistUid,
    wishlistItems: $wishlistItems
  ) {
    destination_wishlist {
      ...WishlistFragment
    }
    source_wishlist {
      ...WishlistFragment
    }
    user_errors {
      ...WishListUserInputErrorFragment
    }
  }
}
Variables
{
  "sourceWishlistUid": 4,
  "destinationWishlistUid": 4,
  "wishlistItems": [WishlistItemCopyInput]
}
Response
{
  "data": {
    "copyProductsBetweenWishlists": {
      "destination_wishlist": Wishlist,
      "source_wishlist": Wishlist,
      "user_errors": [WishListUserInputError]
    }
  }
}

createBraintreeClientToken

Description

Creates Client Token for Braintree Javascript SDK initialization.

Response

Returns a String!

Example

Query
mutation createBraintreeClientToken {
  createBraintreeClientToken
}
Response
{
  "data": {
    "createBraintreeClientToken": "xyz789"
  }
}

createCompany

Description

Create a company at the request of either a customer or a guest.

Response

Returns a CreateCompanyOutput

Arguments
Name Description
input - CompanyCreateInput!

Example

Query
mutation createCompany($input: CompanyCreateInput!) {
  createCompany(input: $input) {
    company {
      ...CompanyFragment
    }
  }
}
Variables
{"input": CompanyCreateInput}
Response
{"data": {"createCompany": {"company": Company}}}

createCompanyRole

Description

Create a new company role.

Response

Returns a CreateCompanyRoleOutput

Arguments
Name Description
input - CompanyRoleCreateInput!

Example

Query
mutation createCompanyRole($input: CompanyRoleCreateInput!) {
  createCompanyRole(input: $input) {
    role {
      ...CompanyRoleFragment
    }
  }
}
Variables
{"input": CompanyRoleCreateInput}
Response
{"data": {"createCompanyRole": {"role": CompanyRole}}}

createCompanyTeam

Description

Create a new team for the authenticated customer's company.

Response

Returns a CreateCompanyTeamOutput

Arguments
Name Description
input - CompanyTeamCreateInput!

Example

Query
mutation createCompanyTeam($input: CompanyTeamCreateInput!) {
  createCompanyTeam(input: $input) {
    team {
      ...CompanyTeamFragment
    }
  }
}
Variables
{"input": CompanyTeamCreateInput}
Response
{"data": {"createCompanyTeam": {"team": CompanyTeam}}}

createCompanyUser

Description

Create a new company user at the request of an existing customer.

Response

Returns a CreateCompanyUserOutput

Arguments
Name Description
input - CompanyUserCreateInput!

Example

Query
mutation createCompanyUser($input: CompanyUserCreateInput!) {
  createCompanyUser(input: $input) {
    user {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CompanyUserCreateInput}
Response
{"data": {"createCompanyUser": {"user": Customer}}}

createCompareList

Description

Create a new compare list. The compare list is saved for logged in customers.

Response

Returns a CompareList

Arguments
Name Description
input - CreateCompareListInput

Example

Query
mutation createCompareList($input: CreateCompareListInput) {
  createCompareList(input: $input) {
    attributes {
      ...ComparableAttributeFragment
    }
    item_count
    items {
      ...ComparableItemFragment
    }
    uid
  }
}
Variables
{"input": CreateCompareListInput}
Response
{
  "data": {
    "createCompareList": {
      "attributes": [ComparableAttribute],
      "item_count": 123,
      "items": [ComparableItem],
      "uid": "4"
    }
  }
}

createCustomer

Description

Use createCustomerV2 instead.

Response

Returns a CustomerOutput

Arguments
Name Description
input - CustomerInput! An input object that defines the customer to be created.

Example

Query
mutation createCustomer($input: CustomerInput!) {
  createCustomer(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CustomerInput}
Response
{"data": {"createCustomer": {"customer": Customer}}}

createCustomerAddress

Description

Create a billing or shipping address for a customer or guest.

Response

Returns a CustomerAddress

Arguments
Name Description
input - CustomerAddressInput!

Example

Query
mutation createCustomerAddress($input: CustomerAddressInput!) {
  createCustomerAddress(input: $input) {
    city
    company
    country_code
    country_id
    custom_attributes {
      ...CustomerAddressAttributeFragment
    }
    customer_id
    default_billing
    default_shipping
    extension_attributes {
      ...CustomerAddressAttributeFragment
    }
    fax
    firstname
    id
    lastname
    middlename
    postcode
    prefix
    region {
      ...CustomerAddressRegionFragment
    }
    region_id
    street
    suffix
    telephone
    vat_id
  }
}
Variables
{"input": CustomerAddressInput}
Response
{
  "data": {
    "createCustomerAddress": {
      "city": "abc123",
      "company": "xyz789",
      "country_code": "AF",
      "country_id": "xyz789",
      "custom_attributes": [CustomerAddressAttribute],
      "customer_id": 987,
      "default_billing": true,
      "default_shipping": true,
      "extension_attributes": [CustomerAddressAttribute],
      "fax": "abc123",
      "firstname": "abc123",
      "id": 987,
      "lastname": "abc123",
      "middlename": "xyz789",
      "postcode": "xyz789",
      "prefix": "xyz789",
      "region": CustomerAddressRegion,
      "region_id": 123,
      "street": ["xyz789"],
      "suffix": "xyz789",
      "telephone": "xyz789",
      "vat_id": "abc123"
    }
  }
}

createCustomerV2

Description

Create a customer account.

Response

Returns a CustomerOutput

Arguments
Name Description
input - CustomerCreateInput! An input object that defines the customer to be created.

Example

Query
mutation createCustomerV2($input: CustomerCreateInput!) {
  createCustomerV2(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CustomerCreateInput}
Response
{"data": {"createCustomerV2": {"customer": Customer}}}

createEmptyCart

Description

Create an empty shopping cart for a guest or logged in user

Response

Returns a String

Arguments
Name Description
input - createEmptyCartInput An optional input object that assigns the specified ID to the cart.

Example

Query
mutation createEmptyCart($input: createEmptyCartInput) {
  createEmptyCart(input: $input)
}
Variables
{"input": createEmptyCartInput}
Response
{"data": {"createEmptyCart": "abc123"}}

createGiftRegistry

Description

Create a gift registry on behalf of the customer.

Response

Returns a CreateGiftRegistryOutput

Arguments
Name Description
giftRegistry - CreateGiftRegistryInput! An input object that defines a new gift registry.

Example

Query
mutation createGiftRegistry($giftRegistry: CreateGiftRegistryInput!) {
  createGiftRegistry(giftRegistry: $giftRegistry) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{"giftRegistry": CreateGiftRegistryInput}
Response
{
  "data": {
    "createGiftRegistry": {"gift_registry": GiftRegistry}
  }
}

createPayflowProToken

Description

Initiate a transaction and receive a token. Use this mutation for Payflow Pro and Payments Pro payment methods

Response

Returns a CreatePayflowProTokenOutput

Arguments
Name Description
input - PayflowProTokenInput! An input object that defines the requirements to fetch payment token information.

Example

Query
mutation createPayflowProToken($input: PayflowProTokenInput!) {
  createPayflowProToken(input: $input) {
    response_message
    result
    result_code
    secure_token
    secure_token_id
  }
}
Variables
{"input": PayflowProTokenInput}
Response
{
  "data": {
    "createPayflowProToken": {
      "response_message": "xyz789",
      "result": 987,
      "result_code": 987,
      "secure_token": "abc123",
      "secure_token_id": "xyz789"
    }
  }
}

createPaypalExpressToken

Description

Initiate an Express Checkout transaction and receive a token. Use this mutation for Express Checkout and Payments Standard payment methods.

Response

Returns a PaypalExpressTokenOutput

Arguments
Name Description
input - PaypalExpressTokenInput! An input object that defines the requirements to receive a payment token.

Example

Query
mutation createPaypalExpressToken($input: PaypalExpressTokenInput!) {
  createPaypalExpressToken(input: $input) {
    paypal_urls {
      ...PaypalExpressUrlListFragment
    }
    token
  }
}
Variables
{"input": PaypalExpressTokenInput}
Response
{
  "data": {
    "createPaypalExpressToken": {
      "paypal_urls": PaypalExpressUrlList,
      "token": "abc123"
    }
  }
}

createProductReview

Description

Create a product review for the specified product.

Response

Returns a CreateProductReviewOutput!

Arguments
Name Description
input - CreateProductReviewInput! An input object that contains the details necessary to create a product review.

Example

Query
mutation createProductReview($input: CreateProductReviewInput!) {
  createProductReview(input: $input) {
    review {
      ...ProductReviewFragment
    }
  }
}
Variables
{"input": CreateProductReviewInput}
Response
{
  "data": {
    "createProductReview": {"review": ProductReview}
  }
}

createPurchaseOrderApprovalRule

Description

Create a purchase order approval rule.

Response

Returns a PurchaseOrderApprovalRule

Arguments
Name Description
input - PurchaseOrderApprovalRuleInput!

Example

Query
mutation createPurchaseOrderApprovalRule($input: PurchaseOrderApprovalRuleInput!) {
  createPurchaseOrderApprovalRule(input: $input) {
    applies_to_roles {
      ...CompanyRoleFragment
    }
    approver_roles {
      ...CompanyRoleFragment
    }
    condition {
      ...PurchaseOrderApprovalRuleConditionInterfaceFragment
    }
    created_at
    created_by
    description
    name
    status
    uid
    updated_at
  }
}
Variables
{"input": PurchaseOrderApprovalRuleInput}
Response
{
  "data": {
    "createPurchaseOrderApprovalRule": {
      "applies_to_roles": [CompanyRole],
      "approver_roles": [CompanyRole],
      "condition": PurchaseOrderApprovalRuleConditionInterface,
      "created_at": "xyz789",
      "created_by": "abc123",
      "description": "abc123",
      "name": "abc123",
      "status": "ENABLED",
      "uid": 4,
      "updated_at": "abc123"
    }
  }
}

createRequisitionList

Description

Create an empty requisition list.

Response

Returns a CreateRequisitionListOutput

Arguments
Name Description
input - CreateRequisitionListInput

Example

Query
mutation createRequisitionList($input: CreateRequisitionListInput) {
  createRequisitionList(input: $input) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{"input": CreateRequisitionListInput}
Response
{
  "data": {
    "createRequisitionList": {
      "requisition_list": RequisitionList
    }
  }
}

createWishlist

Description

Create a new wish list.

Response

Returns a CreateWishlistOutput

Arguments
Name Description
input - CreateWishlistInput! An input object that defines a new wish list.

Example

Query
mutation createWishlist($input: CreateWishlistInput!) {
  createWishlist(input: $input) {
    wishlist {
      ...WishlistFragment
    }
  }
}
Variables
{"input": CreateWishlistInput}
Response
{"data": {"createWishlist": {"wishlist": Wishlist}}}

deleteCompanyRole

Description

Delete the specified company role.

Response

Returns a DeleteCompanyRoleOutput

Arguments
Name Description
id - ID!

Example

Query
mutation deleteCompanyRole($id: ID!) {
  deleteCompanyRole(id: $id) {
    success
  }
}
Variables
{"id": 4}
Response
{"data": {"deleteCompanyRole": {"success": false}}}

deleteCompanyTeam

Description

Delete the specified company team.

Response

Returns a DeleteCompanyTeamOutput

Arguments
Name Description
id - ID!

Example

Query
mutation deleteCompanyTeam($id: ID!) {
  deleteCompanyTeam(id: $id) {
    success
  }
}
Variables
{"id": "4"}
Response
{"data": {"deleteCompanyTeam": {"success": false}}}

deleteCompanyUser

Description

Delete the specified company user.

Response

Returns a DeleteCompanyUserOutput

Arguments
Name Description
id - ID!

Example

Query
mutation deleteCompanyUser($id: ID!) {
  deleteCompanyUser(id: $id) {
    success
  }
}
Variables
{"id": 4}
Response
{"data": {"deleteCompanyUser": {"success": true}}}

deleteCompareList

Description

Delete the specified compare list.

Response

Returns a DeleteCompareListOutput

Arguments
Name Description
uid - ID! The unique ID of the compare list to be deleted.

Example

Query
mutation deleteCompareList($uid: ID!) {
  deleteCompareList(uid: $uid) {
    result
  }
}
Variables
{"uid": "4"}
Response
{"data": {"deleteCompareList": {"result": true}}}

deleteCustomer

Description

Delete customer account

Response

Returns a Boolean

Example

Query
mutation deleteCustomer {
  deleteCustomer
}
Response
{"data": {"deleteCustomer": false}}

deleteCustomerAddress

Description

Delete the billing or shipping address of a customer.

Response

Returns a Boolean

Arguments
Name Description
id - Int! The ID of the customer address to be deleted.

Example

Query
mutation deleteCustomerAddress($id: Int!) {
  deleteCustomerAddress(id: $id)
}
Variables
{"id": 987}
Response
{"data": {"deleteCustomerAddress": false}}

deleteNegotiableQuotes

Description

Delete a negotiable quote. The negotiable quote will not be displayed on the storefront.

Response

Returns a DeleteNegotiableQuotesOutput

Arguments
Name Description
input - DeleteNegotiableQuotesInput! An input object that deletes a negotiable quote.

Example

Query
mutation deleteNegotiableQuotes($input: DeleteNegotiableQuotesInput!) {
  deleteNegotiableQuotes(input: $input) {
    negotiable_quotes {
      ...NegotiableQuotesOutputFragment
    }
    operation_results {
      ... on NegotiableQuoteUidOperationSuccess {
        ...NegotiableQuoteUidOperationSuccessFragment
      }
      ... on DeleteNegotiableQuoteOperationFailure {
        ...DeleteNegotiableQuoteOperationFailureFragment
      }
    }
    result_status
  }
}
Variables
{"input": DeleteNegotiableQuotesInput}
Response
{
  "data": {
    "deleteNegotiableQuotes": {
      "negotiable_quotes": NegotiableQuotesOutput,
      "operation_results": [
        NegotiableQuoteUidOperationSuccess
      ],
      "result_status": "SUCCESS"
    }
  }
}

deletePaymentToken

Description

Delete a customer's payment token.

Response

Returns a DeletePaymentTokenOutput

Arguments
Name Description
public_hash - String! The reusable payment token securely stored in the vault.

Example

Query
mutation deletePaymentToken($public_hash: String!) {
  deletePaymentToken(public_hash: $public_hash) {
    customerPaymentTokens {
      ...CustomerPaymentTokensFragment
    }
    result
  }
}
Variables
{"public_hash": "xyz789"}
Response
{
  "data": {
    "deletePaymentToken": {
      "customerPaymentTokens": CustomerPaymentTokens,
      "result": false
    }
  }
}

deletePurchaseOrderApprovalRule

Description

Delete existing purchase order approval rules.

Arguments
Name Description
input - DeletePurchaseOrderApprovalRuleInput!

Example

Query
mutation deletePurchaseOrderApprovalRule($input: DeletePurchaseOrderApprovalRuleInput!) {
  deletePurchaseOrderApprovalRule(input: $input) {
    errors {
      ...DeletePurchaseOrderApprovalRuleErrorFragment
    }
  }
}
Variables
{"input": DeletePurchaseOrderApprovalRuleInput}
Response
{
  "data": {
    "deletePurchaseOrderApprovalRule": {
      "errors": [DeletePurchaseOrderApprovalRuleError]
    }
  }
}

deleteRequisitionList

Description

Delete a requisition list.

Response

Returns a DeleteRequisitionListOutput

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.

Example

Query
mutation deleteRequisitionList($requisitionListUid: ID!) {
  deleteRequisitionList(requisitionListUid: $requisitionListUid) {
    requisition_lists {
      ...RequisitionListsFragment
    }
    status
  }
}
Variables
{"requisitionListUid": 4}
Response
{
  "data": {
    "deleteRequisitionList": {
      "requisition_lists": RequisitionLists,
      "status": true
    }
  }
}

deleteRequisitionListItems

Description

Delete items from a requisition list.

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.
requisitionListItemUids - [ID!]! An array of UIDs representing products to be removed from the requisition list.

Example

Query
mutation deleteRequisitionListItems(
  $requisitionListUid: ID!,
  $requisitionListItemUids: [ID!]!
) {
  deleteRequisitionListItems(
    requisitionListUid: $requisitionListUid,
    requisitionListItemUids: $requisitionListItemUids
  ) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "requisitionListUid": "4",
  "requisitionListItemUids": [4]
}
Response
{
  "data": {
    "deleteRequisitionListItems": {
      "requisition_list": RequisitionList
    }
  }
}

deleteWishlist

Description

Delete the specified wish list. You cannot delete the customer's default (first) wish list.

Response

Returns a DeleteWishlistOutput

Arguments
Name Description
wishlistId - ID! The ID of the wish list to delete.

Example

Query
mutation deleteWishlist($wishlistId: ID!) {
  deleteWishlist(wishlistId: $wishlistId) {
    status
    wishlists {
      ...WishlistFragment
    }
  }
}
Variables
{"wishlistId": "4"}
Response
{
  "data": {
    "deleteWishlist": {
      "status": false,
      "wishlists": [Wishlist]
    }
  }
}

generateCustomerToken

Description

Generate a token for specified customer.

Response

Returns a CustomerToken

Arguments
Name Description
email - String! The customer's email address.
password - String! The customer's password.

Example

Query
mutation generateCustomerToken(
  $email: String!,
  $password: String!
) {
  generateCustomerToken(
    email: $email,
    password: $password
  ) {
    token
  }
}
Variables
{
  "email": "xyz789",
  "password": "abc123"
}
Response
{
  "data": {
    "generateCustomerToken": {
      "token": "abc123"
    }
  }
}

generateCustomerTokenAsAdmin

Description

Request a customer token so that an administrator can perform remote shopping assistance.

Arguments
Name Description
input - GenerateCustomerTokenAsAdminInput! An input object that defines the customer email address.

Example

Query
mutation generateCustomerTokenAsAdmin($input: GenerateCustomerTokenAsAdminInput!) {
  generateCustomerTokenAsAdmin(input: $input) {
    customer_token
  }
}
Variables
{"input": GenerateCustomerTokenAsAdminInput}
Response
{
  "data": {
    "generateCustomerTokenAsAdmin": {
      "customer_token": "abc123"
    }
  }
}

handlePayflowProResponse

Description

Handle a payment response and save the payment in Quote. Use this mutation for Payflow Pro and Payments Pro payment methods.

Response

Returns a PayflowProResponseOutput

Arguments
Name Description
input - PayflowProResponseInput! An input object that includes the payload returned by PayPal and the cart ID.

Example

Query
mutation handlePayflowProResponse($input: PayflowProResponseInput!) {
  handlePayflowProResponse(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": PayflowProResponseInput}
Response
{"data": {"handlePayflowProResponse": {"cart": Cart}}}

mergeCarts

Description

Transfer the contents of a guest cart into the cart of a logged-in customer.

Response

Returns a Cart!

Arguments
Name Description
source_cart_id - String! The guest's cart ID before they login.
destination_cart_id - String The cart ID after the guest logs in.

Example

Query
mutation mergeCarts(
  $source_cart_id: String!,
  $destination_cart_id: String
) {
  mergeCarts(
    source_cart_id: $source_cart_id,
    destination_cart_id: $destination_cart_id
  ) {
    applied_coupon {
      ...AppliedCouponFragment
    }
    applied_coupons {
      ...AppliedCouponFragment
    }
    applied_gift_cards {
      ...AppliedGiftCardFragment
    }
    applied_reward_points {
      ...RewardPointsAmountFragment
    }
    applied_store_credit {
      ...AppliedStoreCreditFragment
    }
    available_gift_wrappings {
      ...GiftWrappingFragment
    }
    available_payment_methods {
      ...AvailablePaymentMethodFragment
    }
    billing_address {
      ...BillingCartAddressFragment
    }
    email
    gift_message {
      ...GiftMessageFragment
    }
    gift_receipt_included
    gift_wrapping {
      ...GiftWrappingFragment
    }
    id
    is_virtual
    items {
      ...CartItemInterfaceFragment
    }
    prices {
      ...CartPricesFragment
    }
    printed_card_included
    selected_payment_method {
      ...SelectedPaymentMethodFragment
    }
    shipping_addresses {
      ...ShippingCartAddressFragment
    }
    total_quantity
  }
}
Variables
{
  "source_cart_id": "xyz789",
  "destination_cart_id": "abc123"
}
Response
{
  "data": {
    "mergeCarts": {
      "applied_coupon": AppliedCoupon,
      "applied_coupons": [AppliedCoupon],
      "applied_gift_cards": [AppliedGiftCard],
      "applied_reward_points": RewardPointsAmount,
      "applied_store_credit": AppliedStoreCredit,
      "available_gift_wrappings": [GiftWrapping],
      "available_payment_methods": [
        AvailablePaymentMethod
      ],
      "billing_address": BillingCartAddress,
      "email": "abc123",
      "gift_message": GiftMessage,
      "gift_receipt_included": false,
      "gift_wrapping": GiftWrapping,
      "id": 4,
      "is_virtual": true,
      "items": [CartItemInterface],
      "prices": CartPrices,
      "printed_card_included": false,
      "selected_payment_method": SelectedPaymentMethod,
      "shipping_addresses": [ShippingCartAddress],
      "total_quantity": 123.45
    }
  }
}

moveCartItemsToGiftRegistry

Description

Move all items from the cart to a gift registry.

Arguments
Name Description
cartUid - ID! The unique ID of the cart containing items to be moved to a gift registry.
giftRegistryUid - ID! The unique ID of the target gift registry.

Example

Query
mutation moveCartItemsToGiftRegistry(
  $cartUid: ID!,
  $giftRegistryUid: ID!
) {
  moveCartItemsToGiftRegistry(
    cartUid: $cartUid,
    giftRegistryUid: $giftRegistryUid
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
    status
    user_errors {
      ...GiftRegistryItemsUserErrorFragment
    }
  }
}
Variables
{"cartUid": 4, "giftRegistryUid": 4}
Response
{
  "data": {
    "moveCartItemsToGiftRegistry": {
      "gift_registry": GiftRegistry,
      "status": true,
      "user_errors": [GiftRegistryItemsUserError]
    }
  }
}

moveItemsBetweenRequisitionLists

Description

Move Items from one requisition list to another.

Arguments
Name Description
sourceRequisitionListUid - ID! The unique ID of the source requisition list.
destinationRequisitionListUid - ID The unique ID of the destination requisition list. If null, a new requisition list will be created.
requisitionListItem - MoveItemsBetweenRequisitionListsInput The list of products to move.

Example

Query
mutation moveItemsBetweenRequisitionLists(
  $sourceRequisitionListUid: ID!,
  $destinationRequisitionListUid: ID,
  $requisitionListItem: MoveItemsBetweenRequisitionListsInput
) {
  moveItemsBetweenRequisitionLists(
    sourceRequisitionListUid: $sourceRequisitionListUid,
    destinationRequisitionListUid: $destinationRequisitionListUid,
    requisitionListItem: $requisitionListItem
  ) {
    destination_requisition_list {
      ...RequisitionListFragment
    }
    source_requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "sourceRequisitionListUid": 4,
  "destinationRequisitionListUid": 4,
  "requisitionListItem": MoveItemsBetweenRequisitionListsInput
}
Response
{
  "data": {
    "moveItemsBetweenRequisitionLists": {
      "destination_requisition_list": RequisitionList,
      "source_requisition_list": RequisitionList
    }
  }
}

moveProductsBetweenWishlists

Description

Move products from one wish list to another.

Arguments
Name Description
sourceWishlistUid - ID! The ID of the original wish list.
destinationWishlistUid - ID! The ID of the target wish list.
wishlistItems - [WishlistItemMoveInput!]! An array of items to move.

Example

Query
mutation moveProductsBetweenWishlists(
  $sourceWishlistUid: ID!,
  $destinationWishlistUid: ID!,
  $wishlistItems: [WishlistItemMoveInput!]!
) {
  moveProductsBetweenWishlists(
    sourceWishlistUid: $sourceWishlistUid,
    destinationWishlistUid: $destinationWishlistUid,
    wishlistItems: $wishlistItems
  ) {
    destination_wishlist {
      ...WishlistFragment
    }
    source_wishlist {
      ...WishlistFragment
    }
    user_errors {
      ...WishListUserInputErrorFragment
    }
  }
}
Variables
{
  "sourceWishlistUid": 4,
  "destinationWishlistUid": "4",
  "wishlistItems": [WishlistItemMoveInput]
}
Response
{
  "data": {
    "moveProductsBetweenWishlists": {
      "destination_wishlist": Wishlist,
      "source_wishlist": Wishlist,
      "user_errors": [WishListUserInputError]
    }
  }
}

placeNegotiableQuoteOrder

Description

Convert a negotiable quote into an order.

Response

Returns a PlaceNegotiableQuoteOrderOutput

Arguments
Name Description
input - PlaceNegotiableQuoteOrderInput! An input object that specifies the negotiable quote.

Example

Query
mutation placeNegotiableQuoteOrder($input: PlaceNegotiableQuoteOrderInput!) {
  placeNegotiableQuoteOrder(input: $input) {
    order {
      ...OrderFragment
    }
  }
}
Variables
{"input": PlaceNegotiableQuoteOrderInput}
Response
{"data": {"placeNegotiableQuoteOrder": {"order": Order}}}

placeOrder

Description

Convert the quote into an order.

Response

Returns a PlaceOrderOutput

Arguments
Name Description
input - PlaceOrderInput An input object that defines the shopper's cart ID.

Example

Query
mutation placeOrder($input: PlaceOrderInput) {
  placeOrder(input: $input) {
    order {
      ...OrderFragment
    }
  }
}
Variables
{"input": PlaceOrderInput}
Response
{"data": {"placeOrder": {"order": Order}}}

placeOrderForPurchaseOrder

Description

Convert the purchase order into an order.

Arguments
Name Description
input - PlaceOrderForPurchaseOrderInput!

Example

Query
mutation placeOrderForPurchaseOrder($input: PlaceOrderForPurchaseOrderInput!) {
  placeOrderForPurchaseOrder(input: $input) {
    order {
      ...CustomerOrderFragment
    }
  }
}
Variables
{"input": PlaceOrderForPurchaseOrderInput}
Response
{
  "data": {
    "placeOrderForPurchaseOrder": {"order": CustomerOrder}
  }
}

placePurchaseOrder

Description

Place a purchase order.

Response

Returns a PlacePurchaseOrderOutput

Arguments
Name Description
input - PlacePurchaseOrderInput!

Example

Query
mutation placePurchaseOrder($input: PlacePurchaseOrderInput!) {
  placePurchaseOrder(input: $input) {
    purchase_order {
      ...PurchaseOrderFragment
    }
  }
}
Variables
{"input": PlacePurchaseOrderInput}
Response
{
  "data": {
    "placePurchaseOrder": {
      "purchase_order": PurchaseOrder
    }
  }
}

redeemGiftCardBalanceAsStoreCredit

Description

Redeem a gift card for store credit.

Response

Returns a GiftCardAccount

Arguments
Name Description
input - GiftCardAccountInput! An input object that specifies the gift card code to redeem.

Example

Query
mutation redeemGiftCardBalanceAsStoreCredit($input: GiftCardAccountInput!) {
  redeemGiftCardBalanceAsStoreCredit(input: $input) {
    balance {
      ...MoneyFragment
    }
    code
    expiration_date
  }
}
Variables
{"input": GiftCardAccountInput}
Response
{
  "data": {
    "redeemGiftCardBalanceAsStoreCredit": {
      "balance": Money,
      "code": "xyz789",
      "expiration_date": "xyz789"
    }
  }
}

rejectPurchaseOrders

Description

Reject purchase orders.

Response

Returns a PurchaseOrdersActionOutput

Arguments
Name Description
input - PurchaseOrdersActionInput!

Example

Query
mutation rejectPurchaseOrders($input: PurchaseOrdersActionInput!) {
  rejectPurchaseOrders(input: $input) {
    errors {
      ...PurchaseOrderActionErrorFragment
    }
    purchase_orders {
      ...PurchaseOrderFragment
    }
  }
}
Variables
{"input": PurchaseOrdersActionInput}
Response
{
  "data": {
    "rejectPurchaseOrders": {
      "errors": [PurchaseOrderActionError],
      "purchase_orders": [PurchaseOrder]
    }
  }
}

removeCouponFromCart

Description

Remove a previously-applied coupon from the cart. The cart must contain at least one item in order to remove the coupon.

Response

Returns a RemoveCouponFromCartOutput

Arguments
Name Description
input - RemoveCouponFromCartInput An input object that defines which coupon code to remove from the cart.

Example

Query
mutation removeCouponFromCart($input: RemoveCouponFromCartInput) {
  removeCouponFromCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": RemoveCouponFromCartInput}
Response
{"data": {"removeCouponFromCart": {"cart": Cart}}}

removeGiftCardFromCart

Description

Removes a gift card from the cart.

Response

Returns a RemoveGiftCardFromCartOutput

Arguments
Name Description
input - RemoveGiftCardFromCartInput An input object that specifies which gift card code to remove from the cart.

Example

Query
mutation removeGiftCardFromCart($input: RemoveGiftCardFromCartInput) {
  removeGiftCardFromCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": RemoveGiftCardFromCartInput}
Response
{"data": {"removeGiftCardFromCart": {"cart": Cart}}}

removeGiftRegistry

Description

Delete the specified gift registry.

Response

Returns a RemoveGiftRegistryOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry to delete.

Example

Query
mutation removeGiftRegistry($giftRegistryUid: ID!) {
  removeGiftRegistry(giftRegistryUid: $giftRegistryUid) {
    success
  }
}
Variables
{"giftRegistryUid": "4"}
Response
{"data": {"removeGiftRegistry": {"success": false}}}

removeGiftRegistryItems

Description

Delete the specified items from a gift registry.

Response

Returns a RemoveGiftRegistryItemsOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
itemsUid - [ID!]! An array of item IDs to remove from the gift registry.

Example

Query
mutation removeGiftRegistryItems(
  $giftRegistryUid: ID!,
  $itemsUid: [ID!]!
) {
  removeGiftRegistryItems(
    giftRegistryUid: $giftRegistryUid,
    itemsUid: $itemsUid
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": "4",
  "itemsUid": ["4"]
}
Response
{
  "data": {
    "removeGiftRegistryItems": {
      "gift_registry": GiftRegistry
    }
  }
}

removeGiftRegistryRegistrants

Description

Removes registrants from a gift registry.

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
registrantsUid - [ID!]! An array of registrant IDs to remove.

Example

Query
mutation removeGiftRegistryRegistrants(
  $giftRegistryUid: ID!,
  $registrantsUid: [ID!]!
) {
  removeGiftRegistryRegistrants(
    giftRegistryUid: $giftRegistryUid,
    registrantsUid: $registrantsUid
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": "4",
  "registrantsUid": ["4"]
}
Response
{
  "data": {
    "removeGiftRegistryRegistrants": {
      "gift_registry": GiftRegistry
    }
  }
}

removeItemFromCart

Description

Delete the entire quantity of a specified item from the cart. If you remove all items from the cart, the cart continues to exist.

Response

Returns a RemoveItemFromCartOutput

Arguments
Name Description
input - RemoveItemFromCartInput An input object that defines which products to remove from the cart.

Example

Query
mutation removeItemFromCart($input: RemoveItemFromCartInput) {
  removeItemFromCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": RemoveItemFromCartInput}
Response
{"data": {"removeItemFromCart": {"cart": Cart}}}

removeNegotiableQuoteItems

Description

Remove one or more products from a negotiable quote.

Arguments
Name Description
input - RemoveNegotiableQuoteItemsInput! An input object that removes one or more items from a negotiable quote.

Example

Query
mutation removeNegotiableQuoteItems($input: RemoveNegotiableQuoteItemsInput!) {
  removeNegotiableQuoteItems(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": RemoveNegotiableQuoteItemsInput}
Response
{
  "data": {
    "removeNegotiableQuoteItems": {
      "quote": NegotiableQuote
    }
  }
}

removeProductsFromCompareList

Description

Remove products from the specified compare list.

Response

Returns a CompareList

Arguments
Name Description
input - RemoveProductsFromCompareListInput An input object that defines which products to remove from a compare list.

Example

Query
mutation removeProductsFromCompareList($input: RemoveProductsFromCompareListInput) {
  removeProductsFromCompareList(input: $input) {
    attributes {
      ...ComparableAttributeFragment
    }
    item_count
    items {
      ...ComparableItemFragment
    }
    uid
  }
}
Variables
{"input": RemoveProductsFromCompareListInput}
Response
{
  "data": {
    "removeProductsFromCompareList": {
      "attributes": [ComparableAttribute],
      "item_count": 987,
      "items": [ComparableItem],
      "uid": 4
    }
  }
}

removeProductsFromWishlist

Description

Remove one or more products from the specified wish list.

Arguments
Name Description
wishlistId - ID! The ID of a wish list.
wishlistItemsIds - [ID!]! An array of item IDs representing products to be removed.

Example

Query
mutation removeProductsFromWishlist(
  $wishlistId: ID!,
  $wishlistItemsIds: [ID!]!
) {
  removeProductsFromWishlist(
    wishlistId: $wishlistId,
    wishlistItemsIds: $wishlistItemsIds
  ) {
    user_errors {
      ...WishListUserInputErrorFragment
    }
    wishlist {
      ...WishlistFragment
    }
  }
}
Variables
{"wishlistId": "4", "wishlistItemsIds": [4]}
Response
{
  "data": {
    "removeProductsFromWishlist": {
      "user_errors": [WishListUserInputError],
      "wishlist": Wishlist
    }
  }
}

removeReturnTracking

Description

Remove a tracked shipment from a return.

Response

Returns a RemoveReturnTrackingOutput

Arguments
Name Description
input - RemoveReturnTrackingInput! An input object that removes tracking information.

Example

Query
mutation removeReturnTracking($input: RemoveReturnTrackingInput!) {
  removeReturnTracking(input: $input) {
    return {
      ...ReturnFragment
    }
  }
}
Variables
{"input": RemoveReturnTrackingInput}
Response
{"data": {"removeReturnTracking": {"return": Return}}}

removeRewardPointsFromCart

Description

Cancel the application of reward points to the cart.

Arguments
Name Description
cartId - ID!

Example

Query
mutation removeRewardPointsFromCart($cartId: ID!) {
  removeRewardPointsFromCart(cartId: $cartId) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"cartId": 4}
Response
{"data": {"removeRewardPointsFromCart": {"cart": Cart}}}

removeStoreCreditFromCart

Description

Remove store credit that has been applied to the specified cart.

Response

Returns a RemoveStoreCreditFromCartOutput

Arguments
Name Description
input - RemoveStoreCreditFromCartInput! An input object that specifies the cart ID.

Example

Query
mutation removeStoreCreditFromCart($input: RemoveStoreCreditFromCartInput!) {
  removeStoreCreditFromCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": RemoveStoreCreditFromCartInput}
Response
{"data": {"removeStoreCreditFromCart": {"cart": Cart}}}

reorderItems

Description

Add all products from a customer's previous order to the cart.

Response

Returns a ReorderItemsOutput

Arguments
Name Description
orderNumber - String!

Example

Query
mutation reorderItems($orderNumber: String!) {
  reorderItems(orderNumber: $orderNumber) {
    cart {
      ...CartFragment
    }
    userInputErrors {
      ...CheckoutUserInputErrorFragment
    }
  }
}
Variables
{"orderNumber": "xyz789"}
Response
{
  "data": {
    "reorderItems": {
      "cart": Cart,
      "userInputErrors": [CheckoutUserInputError]
    }
  }
}

requestNegotiableQuote

Description

Request a new negotiable quote on behalf of the buyer.

Response

Returns a RequestNegotiableQuoteOutput

Arguments
Name Description
input - RequestNegotiableQuoteInput! An input object that contains a request to initiate a negotiable quote.

Example

Query
mutation requestNegotiableQuote($input: RequestNegotiableQuoteInput!) {
  requestNegotiableQuote(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": RequestNegotiableQuoteInput}
Response
{
  "data": {
    "requestNegotiableQuote": {"quote": NegotiableQuote}
  }
}

requestPasswordResetEmail

Description

Request an email with a reset password token for the registered customer identified by the specified email.

Response

Returns a Boolean

Arguments
Name Description
email - String! The customer's email address.

Example

Query
mutation requestPasswordResetEmail($email: String!) {
  requestPasswordResetEmail(email: $email)
}
Variables
{"email": "xyz789"}
Response
{"data": {"requestPasswordResetEmail": true}}

requestReturn

Description

Initiates a buyer's request to return items for replacement or refund.

Response

Returns a RequestReturnOutput

Arguments
Name Description
input - RequestReturnInput! An input object that contains the fields needed to start a return request.

Example

Query
mutation requestReturn($input: RequestReturnInput!) {
  requestReturn(input: $input) {
    return {
      ...ReturnFragment
    }
    returns {
      ...ReturnsFragment
    }
  }
}
Variables
{"input": RequestReturnInput}
Response
{
  "data": {
    "requestReturn": {
      "return": Return,
      "returns": Returns
    }
  }
}

resetPassword

Description

Reset a customer's password using the reset password token that the customer received in an email after requesting it using requestPasswordResetEmail.

Response

Returns a Boolean

Arguments
Name Description
email - String! The customer's email address.
resetPasswordToken - String! A runtime token generated by the requestPasswordResetEmail mutation.
newPassword - String! The customer's new password.

Example

Query
mutation resetPassword(
  $email: String!,
  $resetPasswordToken: String!,
  $newPassword: String!
) {
  resetPassword(
    email: $email,
    resetPasswordToken: $resetPasswordToken,
    newPassword: $newPassword
  )
}
Variables
{
  "email": "xyz789",
  "resetPasswordToken": "xyz789",
  "newPassword": "xyz789"
}
Response
{"data": {"resetPassword": true}}

revokeCustomerToken

Description

Revoke the customer token.

Response

Returns a RevokeCustomerTokenOutput

Example

Query
mutation revokeCustomerToken {
  revokeCustomerToken {
    result
  }
}
Response
{"data": {"revokeCustomerToken": {"result": false}}}

sendEmailToFriend

Description

Send a message on behalf of a customer to the specified email addresses.

Response

Returns a SendEmailToFriendOutput

Arguments
Name Description
input - SendEmailToFriendInput An input object that defines sender, recipients, and product.

Example

Query
mutation sendEmailToFriend($input: SendEmailToFriendInput) {
  sendEmailToFriend(input: $input) {
    recipients {
      ...SendEmailToFriendRecipientFragment
    }
    sender {
      ...SendEmailToFriendSenderFragment
    }
  }
}
Variables
{"input": SendEmailToFriendInput}
Response
{
  "data": {
    "sendEmailToFriend": {
      "recipients": [SendEmailToFriendRecipient],
      "sender": SendEmailToFriendSender
    }
  }
}

sendNegotiableQuoteForReview

Description

Send the negotiable quote to the seller for review.

Arguments
Name Description
input - SendNegotiableQuoteForReviewInput! An input object that sends a request for the merchant to review a negotiable quote.

Example

Query
mutation sendNegotiableQuoteForReview($input: SendNegotiableQuoteForReviewInput!) {
  sendNegotiableQuoteForReview(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": SendNegotiableQuoteForReviewInput}
Response
{
  "data": {
    "sendNegotiableQuoteForReview": {
      "quote": NegotiableQuote
    }
  }
}

setBillingAddressOnCart

Description

Set the billing address on a specific cart.

Response

Returns a SetBillingAddressOnCartOutput

Arguments
Name Description
input - SetBillingAddressOnCartInput An input object that defines the billing address to be assigned to the cart.

Example

Query
mutation setBillingAddressOnCart($input: SetBillingAddressOnCartInput) {
  setBillingAddressOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetBillingAddressOnCartInput}
Response
{"data": {"setBillingAddressOnCart": {"cart": Cart}}}

setGiftOptionsOnCart

Description

Set gift options, including gift messages, gift wrapping, gift receipts, and printed cards.

Response

Returns a SetGiftOptionsOnCartOutput

Arguments
Name Description
input - SetGiftOptionsOnCartInput An input object that defines the selected gift options.

Example

Query
mutation setGiftOptionsOnCart($input: SetGiftOptionsOnCartInput) {
  setGiftOptionsOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetGiftOptionsOnCartInput}
Response
{"data": {"setGiftOptionsOnCart": {"cart": Cart}}}

setGuestEmailOnCart

Description

Assign the email address of a guest to the cart.

Response

Returns a SetGuestEmailOnCartOutput

Arguments
Name Description
input - SetGuestEmailOnCartInput An input object that defines a guest email address.

Example

Query
mutation setGuestEmailOnCart($input: SetGuestEmailOnCartInput) {
  setGuestEmailOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetGuestEmailOnCartInput}
Response
{"data": {"setGuestEmailOnCart": {"cart": Cart}}}

setNegotiableQuoteBillingAddress

Description

Assign a billing address to a negotiable quote.

Arguments
Name Description
input - SetNegotiableQuoteBillingAddressInput! An input object that defines the billing address to be assigned to a negotiable quote.

Example

Query
mutation setNegotiableQuoteBillingAddress($input: SetNegotiableQuoteBillingAddressInput!) {
  setNegotiableQuoteBillingAddress(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": SetNegotiableQuoteBillingAddressInput}
Response
{
  "data": {
    "setNegotiableQuoteBillingAddress": {
      "quote": NegotiableQuote
    }
  }
}

setNegotiableQuotePaymentMethod

Description

Set the payment method on a negotiable quote.

Arguments
Name Description
input - SetNegotiableQuotePaymentMethodInput! An input object that defines the payment method for the specified negotiable quote.

Example

Query
mutation setNegotiableQuotePaymentMethod($input: SetNegotiableQuotePaymentMethodInput!) {
  setNegotiableQuotePaymentMethod(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": SetNegotiableQuotePaymentMethodInput}
Response
{
  "data": {
    "setNegotiableQuotePaymentMethod": {
      "quote": NegotiableQuote
    }
  }
}

setNegotiableQuoteShippingAddress

Description

Assign a previously-defined address as the shipping address for a negotiable quote.

Arguments
Name Description
input - SetNegotiableQuoteShippingAddressInput! An input object that defines the shipping address to be assigned to a negotiable quote.

Example

Query
mutation setNegotiableQuoteShippingAddress($input: SetNegotiableQuoteShippingAddressInput!) {
  setNegotiableQuoteShippingAddress(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": SetNegotiableQuoteShippingAddressInput}
Response
{
  "data": {
    "setNegotiableQuoteShippingAddress": {
      "quote": NegotiableQuote
    }
  }
}

setNegotiableQuoteShippingMethods

Description

Assign the shipping methods on the negotiable quote.

Arguments
Name Description
input - SetNegotiableQuoteShippingMethodsInput! An input object that defines the shipping methods to be assigned to a negotiable quote.

Example

Query
mutation setNegotiableQuoteShippingMethods($input: SetNegotiableQuoteShippingMethodsInput!) {
  setNegotiableQuoteShippingMethods(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": SetNegotiableQuoteShippingMethodsInput}
Response
{
  "data": {
    "setNegotiableQuoteShippingMethods": {
      "quote": NegotiableQuote
    }
  }
}

setPaymentMethodAndPlaceOrder

Should use setPaymentMethodOnCart and placeOrder mutations in single request.
Description

Set the cart payment method and convert the cart into an order.

Response

Returns a PlaceOrderOutput

Arguments
Name Description
input - SetPaymentMethodAndPlaceOrderInput

Example

Query
mutation setPaymentMethodAndPlaceOrder($input: SetPaymentMethodAndPlaceOrderInput) {
  setPaymentMethodAndPlaceOrder(input: $input) {
    order {
      ...OrderFragment
    }
  }
}
Variables
{"input": SetPaymentMethodAndPlaceOrderInput}
Response
{
  "data": {
    "setPaymentMethodAndPlaceOrder": {"order": Order}
  }
}

setPaymentMethodOnCart

Description

Apply a payment method to the cart.

Response

Returns a SetPaymentMethodOnCartOutput

Arguments
Name Description
input - SetPaymentMethodOnCartInput An input object that defines which payment method to apply to the cart.

Example

Query
mutation setPaymentMethodOnCart($input: SetPaymentMethodOnCartInput) {
  setPaymentMethodOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetPaymentMethodOnCartInput}
Response
{"data": {"setPaymentMethodOnCart": {"cart": Cart}}}

setShippingAddressesOnCart

Description

Set one or more shipping addresses on a specific cart.

Arguments
Name Description
input - SetShippingAddressesOnCartInput An input object that defines one or more shipping addresses to be assigned to the cart.

Example

Query
mutation setShippingAddressesOnCart($input: SetShippingAddressesOnCartInput) {
  setShippingAddressesOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetShippingAddressesOnCartInput}
Response
{"data": {"setShippingAddressesOnCart": {"cart": Cart}}}

setShippingMethodsOnCart

Description

Set one or more delivery methods on a cart.

Response

Returns a SetShippingMethodsOnCartOutput

Arguments
Name Description
input - SetShippingMethodsOnCartInput An input object that applies one or more shipping methods to the cart.

Example

Query
mutation setShippingMethodsOnCart($input: SetShippingMethodsOnCartInput) {
  setShippingMethodsOnCart(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": SetShippingMethodsOnCartInput}
Response
{"data": {"setShippingMethodsOnCart": {"cart": Cart}}}

shareGiftRegistry

Description

Send an email about the gift registry to a list of invitees.

Response

Returns a ShareGiftRegistryOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
sender - ShareGiftRegistrySenderInput! The sender's email address and gift message.
invitees - [ShareGiftRegistryInviteeInput!]! An array containing invitee names and email addresses.

Example

Query
mutation shareGiftRegistry(
  $giftRegistryUid: ID!,
  $sender: ShareGiftRegistrySenderInput!,
  $invitees: [ShareGiftRegistryInviteeInput!]!
) {
  shareGiftRegistry(
    giftRegistryUid: $giftRegistryUid,
    sender: $sender,
    invitees: $invitees
  ) {
    is_shared
  }
}
Variables
{
  "giftRegistryUid": "4",
  "sender": ShareGiftRegistrySenderInput,
  "invitees": [ShareGiftRegistryInviteeInput]
}
Response
{"data": {"shareGiftRegistry": {"is_shared": true}}}

subscribeEmailToNewsletter

Description

Subscribe the specified email to the store's newsletter.

Arguments
Name Description
email - String! The email address that will receive the store's newsletter.

Example

Query
mutation subscribeEmailToNewsletter($email: String!) {
  subscribeEmailToNewsletter(email: $email) {
    status
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"subscribeEmailToNewsletter": {"status": "NOT_ACTIVE"}}}

updateCartItems

Description

Modify items in the cart.

Response

Returns an UpdateCartItemsOutput

Arguments
Name Description
input - UpdateCartItemsInput An input object that defines products to be updated.

Example

Query
mutation updateCartItems($input: UpdateCartItemsInput) {
  updateCartItems(input: $input) {
    cart {
      ...CartFragment
    }
  }
}
Variables
{"input": UpdateCartItemsInput}
Response
{"data": {"updateCartItems": {"cart": Cart}}}

updateCompany

Description

Update company information.

Response

Returns an UpdateCompanyOutput

Arguments
Name Description
input - CompanyUpdateInput!

Example

Query
mutation updateCompany($input: CompanyUpdateInput!) {
  updateCompany(input: $input) {
    company {
      ...CompanyFragment
    }
  }
}
Variables
{"input": CompanyUpdateInput}
Response
{"data": {"updateCompany": {"company": Company}}}

updateCompanyRole

Description

Update company role information.

Response

Returns an UpdateCompanyRoleOutput

Arguments
Name Description
input - CompanyRoleUpdateInput!

Example

Query
mutation updateCompanyRole($input: CompanyRoleUpdateInput!) {
  updateCompanyRole(input: $input) {
    role {
      ...CompanyRoleFragment
    }
  }
}
Variables
{"input": CompanyRoleUpdateInput}
Response
{"data": {"updateCompanyRole": {"role": CompanyRole}}}

updateCompanyStructure

Description

Change the parent node of a company team.

Response

Returns an UpdateCompanyStructureOutput

Arguments
Name Description
input - CompanyStructureUpdateInput!

Example

Query
mutation updateCompanyStructure($input: CompanyStructureUpdateInput!) {
  updateCompanyStructure(input: $input) {
    company {
      ...CompanyFragment
    }
  }
}
Variables
{"input": CompanyStructureUpdateInput}
Response
{"data": {"updateCompanyStructure": {"company": Company}}}

updateCompanyTeam

Description

Update company team data.

Response

Returns an UpdateCompanyTeamOutput

Arguments
Name Description
input - CompanyTeamUpdateInput!

Example

Query
mutation updateCompanyTeam($input: CompanyTeamUpdateInput!) {
  updateCompanyTeam(input: $input) {
    team {
      ...CompanyTeamFragment
    }
  }
}
Variables
{"input": CompanyTeamUpdateInput}
Response
{"data": {"updateCompanyTeam": {"team": CompanyTeam}}}

updateCompanyUser

Description

Update an existing company user.

Response

Returns an UpdateCompanyUserOutput

Arguments
Name Description
input - CompanyUserUpdateInput!

Example

Query
mutation updateCompanyUser($input: CompanyUserUpdateInput!) {
  updateCompanyUser(input: $input) {
    user {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CompanyUserUpdateInput}
Response
{"data": {"updateCompanyUser": {"user": Customer}}}

updateCustomer

Description

Use updateCustomerV2 instead.

Response

Returns a CustomerOutput

Arguments
Name Description
input - CustomerInput! An input object that defines the customer characteristics to update.

Example

Query
mutation updateCustomer($input: CustomerInput!) {
  updateCustomer(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CustomerInput}
Response
{"data": {"updateCustomer": {"customer": Customer}}}

updateCustomerAddress

Description

Update the billing or shipping address of a customer or guest.

Response

Returns a CustomerAddress

Arguments
Name Description
id - Int! The ID assigned to the customer address.
input - CustomerAddressInput An input object that contains changes to the customer address.

Example

Query
mutation updateCustomerAddress(
  $id: Int!,
  $input: CustomerAddressInput
) {
  updateCustomerAddress(
    id: $id,
    input: $input
  ) {
    city
    company
    country_code
    country_id
    custom_attributes {
      ...CustomerAddressAttributeFragment
    }
    customer_id
    default_billing
    default_shipping
    extension_attributes {
      ...CustomerAddressAttributeFragment
    }
    fax
    firstname
    id
    lastname
    middlename
    postcode
    prefix
    region {
      ...CustomerAddressRegionFragment
    }
    region_id
    street
    suffix
    telephone
    vat_id
  }
}
Variables
{"id": 123, "input": CustomerAddressInput}
Response
{
  "data": {
    "updateCustomerAddress": {
      "city": "xyz789",
      "company": "abc123",
      "country_code": "AF",
      "country_id": "abc123",
      "custom_attributes": [CustomerAddressAttribute],
      "customer_id": 123,
      "default_billing": false,
      "default_shipping": false,
      "extension_attributes": [CustomerAddressAttribute],
      "fax": "xyz789",
      "firstname": "xyz789",
      "id": 987,
      "lastname": "abc123",
      "middlename": "xyz789",
      "postcode": "abc123",
      "prefix": "xyz789",
      "region": CustomerAddressRegion,
      "region_id": 123,
      "street": ["xyz789"],
      "suffix": "xyz789",
      "telephone": "xyz789",
      "vat_id": "abc123"
    }
  }
}

updateCustomerEmail

Description

Change the email address for the logged-in customer.

Response

Returns a CustomerOutput

Arguments
Name Description
email - String! The customer's email address.
password - String! The customer's password.

Example

Query
mutation updateCustomerEmail(
  $email: String!,
  $password: String!
) {
  updateCustomerEmail(
    email: $email,
    password: $password
  ) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{
  "email": "abc123",
  "password": "abc123"
}
Response
{"data": {"updateCustomerEmail": {"customer": Customer}}}

updateCustomerV2

Description

Update the customer's personal information.

Response

Returns a CustomerOutput

Arguments
Name Description
input - CustomerUpdateInput! An input object that defines the customer characteristics to update.

Example

Query
mutation updateCustomerV2($input: CustomerUpdateInput!) {
  updateCustomerV2(input: $input) {
    customer {
      ...CustomerFragment
    }
  }
}
Variables
{"input": CustomerUpdateInput}
Response
{"data": {"updateCustomerV2": {"customer": Customer}}}

updateGiftRegistry

Description

Update the specified gift registry.

Response

Returns an UpdateGiftRegistryOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of an existing gift registry.
giftRegistry - UpdateGiftRegistryInput! An input object that defines which fields to update.

Example

Query
mutation updateGiftRegistry(
  $giftRegistryUid: ID!,
  $giftRegistry: UpdateGiftRegistryInput!
) {
  updateGiftRegistry(
    giftRegistryUid: $giftRegistryUid,
    giftRegistry: $giftRegistry
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": "4",
  "giftRegistry": UpdateGiftRegistryInput
}
Response
{
  "data": {
    "updateGiftRegistry": {"gift_registry": GiftRegistry}
  }
}

updateGiftRegistryItems

Description

Update the specified items in the gift registry.

Response

Returns an UpdateGiftRegistryItemsOutput

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
items - [UpdateGiftRegistryItemInput!]! An array of items to be updated.

Example

Query
mutation updateGiftRegistryItems(
  $giftRegistryUid: ID!,
  $items: [UpdateGiftRegistryItemInput!]!
) {
  updateGiftRegistryItems(
    giftRegistryUid: $giftRegistryUid,
    items: $items
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": "4",
  "items": [UpdateGiftRegistryItemInput]
}
Response
{
  "data": {
    "updateGiftRegistryItems": {
      "gift_registry": GiftRegistry
    }
  }
}

updateGiftRegistryRegistrants

Description

Modify the properties of one or more gift registry registrants.

Arguments
Name Description
giftRegistryUid - ID! The unique ID of the gift registry.
registrants - [UpdateGiftRegistryRegistrantInput!]! An array of registrants to update.

Example

Query
mutation updateGiftRegistryRegistrants(
  $giftRegistryUid: ID!,
  $registrants: [UpdateGiftRegistryRegistrantInput!]!
) {
  updateGiftRegistryRegistrants(
    giftRegistryUid: $giftRegistryUid,
    registrants: $registrants
  ) {
    gift_registry {
      ...GiftRegistryFragment
    }
  }
}
Variables
{
  "giftRegistryUid": 4,
  "registrants": [UpdateGiftRegistryRegistrantInput]
}
Response
{
  "data": {
    "updateGiftRegistryRegistrants": {
      "gift_registry": GiftRegistry
    }
  }
}

updateNegotiableQuoteQuantities

Description

Change the quantity of one or more items in an existing negotiable quote.

Arguments
Name Description
input - UpdateNegotiableQuoteQuantitiesInput! An input object that changes the quantity of one or more items in a negotiable quote.

Example

Query
mutation updateNegotiableQuoteQuantities($input: UpdateNegotiableQuoteQuantitiesInput!) {
  updateNegotiableQuoteQuantities(input: $input) {
    quote {
      ...NegotiableQuoteFragment
    }
  }
}
Variables
{"input": UpdateNegotiableQuoteQuantitiesInput}
Response
{
  "data": {
    "updateNegotiableQuoteQuantities": {
      "quote": NegotiableQuote
    }
  }
}

updateProductsInWishlist

Description

Update one or more products in the specified wish list.

Response

Returns an UpdateProductsInWishlistOutput

Arguments
Name Description
wishlistId - ID! The ID of a wish list.
wishlistItems - [WishlistItemUpdateInput!]! An array of items to be updated.

Example

Query
mutation updateProductsInWishlist(
  $wishlistId: ID!,
  $wishlistItems: [WishlistItemUpdateInput!]!
) {
  updateProductsInWishlist(
    wishlistId: $wishlistId,
    wishlistItems: $wishlistItems
  ) {
    user_errors {
      ...WishListUserInputErrorFragment
    }
    wishlist {
      ...WishlistFragment
    }
  }
}
Variables
{
  "wishlistId": "4",
  "wishlistItems": [WishlistItemUpdateInput]
}
Response
{
  "data": {
    "updateProductsInWishlist": {
      "user_errors": [WishListUserInputError],
      "wishlist": Wishlist
    }
  }
}

updatePurchaseOrderApprovalRule

Description

Update existing purchase order approval rules.

Response

Returns a PurchaseOrderApprovalRule

Arguments
Name Description
input - UpdatePurchaseOrderApprovalRuleInput!

Example

Query
mutation updatePurchaseOrderApprovalRule($input: UpdatePurchaseOrderApprovalRuleInput!) {
  updatePurchaseOrderApprovalRule(input: $input) {
    applies_to_roles {
      ...CompanyRoleFragment
    }
    approver_roles {
      ...CompanyRoleFragment
    }
    condition {
      ...PurchaseOrderApprovalRuleConditionInterfaceFragment
    }
    created_at
    created_by
    description
    name
    status
    uid
    updated_at
  }
}
Variables
{"input": UpdatePurchaseOrderApprovalRuleInput}
Response
{
  "data": {
    "updatePurchaseOrderApprovalRule": {
      "applies_to_roles": [CompanyRole],
      "approver_roles": [CompanyRole],
      "condition": PurchaseOrderApprovalRuleConditionInterface,
      "created_at": "abc123",
      "created_by": "abc123",
      "description": "xyz789",
      "name": "xyz789",
      "status": "ENABLED",
      "uid": "4",
      "updated_at": "abc123"
    }
  }
}

updateRequisitionList

Description

Rename a requisition list and change its description.

Response

Returns an UpdateRequisitionListOutput

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.
input - UpdateRequisitionListInput

Example

Query
mutation updateRequisitionList(
  $requisitionListUid: ID!,
  $input: UpdateRequisitionListInput
) {
  updateRequisitionList(
    requisitionListUid: $requisitionListUid,
    input: $input
  ) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "requisitionListUid": "4",
  "input": UpdateRequisitionListInput
}
Response
{
  "data": {
    "updateRequisitionList": {
      "requisition_list": RequisitionList
    }
  }
}

updateRequisitionListItems

Description

Update items in a requisition list.

Response

Returns an UpdateRequisitionListItemsOutput

Arguments
Name Description
requisitionListUid - ID! The unique ID of the requisition list.
requisitionListItems - [UpdateRequisitionListItemsInput!]! Items to be updated in the requisition list.

Example

Query
mutation updateRequisitionListItems(
  $requisitionListUid: ID!,
  $requisitionListItems: [UpdateRequisitionListItemsInput!]!
) {
  updateRequisitionListItems(
    requisitionListUid: $requisitionListUid,
    requisitionListItems: $requisitionListItems
  ) {
    requisition_list {
      ...RequisitionListFragment
    }
  }
}
Variables
{
  "requisitionListUid": "4",
  "requisitionListItems": [
    UpdateRequisitionListItemsInput
  ]
}
Response
{
  "data": {
    "updateRequisitionListItems": {
      "requisition_list": RequisitionList
    }
  }
}

updateWishlist

Description

Change the name and visibility of the specified wish list.

Response

Returns an UpdateWishlistOutput

Arguments
Name Description
wishlistId - ID! The ID of the wish list to update.
name - String The name assigned to the wish list.
visibility - WishlistVisibilityEnum Indicates the visibility of the wish list.

Example

Query
mutation updateWishlist(
  $wishlistId: ID!,
  $name: String,
  $visibility: WishlistVisibilityEnum
) {
  updateWishlist(
    wishlistId: $wishlistId,
    name: $name,
    visibility: $visibility
  ) {
    name
    uid
    visibility
  }
}
Variables
{
  "wishlistId": 4,
  "name": "abc123",
  "visibility": "PUBLIC"
}
Response
{
  "data": {
    "updateWishlist": {
      "name": "abc123",
      "uid": "4",
      "visibility": "PUBLIC"
    }
  }
}

validatePurchaseOrders

Description

Validate purchase orders.

Response

Returns a ValidatePurchaseOrdersOutput

Arguments
Name Description
input - ValidatePurchaseOrdersInput!

Example

Query
mutation validatePurchaseOrders($input: ValidatePurchaseOrdersInput!) {
  validatePurchaseOrders(input: $input) {
    errors {
      ...ValidatePurchaseOrderErrorFragment
    }
    purchase_orders {
      ...PurchaseOrderFragment
    }
  }
}
Variables
{"input": ValidatePurchaseOrdersInput}
Response
{
  "data": {
    "validatePurchaseOrders": {
      "errors": [ValidatePurchaseOrderError],
      "purchase_orders": [PurchaseOrder]
    }
  }
}

Ty