API version: unstable
API version: 2021-07 Release candidate
API version: 2021-04 Latest
API version: 2021-01
API version: 2020-10
API version: 2020-07
API version: 2020-04
API version: 2020-01 Unsupported
API version: 2019-10 Unsupported

Customer object

Version unstable

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • A list of the customer's payment methods.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    showRevoked ( Boolean )

    Whether to show the customer's revoked payment method.
    Default value: false

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • subscriptionContracts (SubscriptionContractConnection!)

    A list of the customer's subscription contracts.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • productSubscriberStatus (CustomerProductSubscriberStatus!)

    Possible subscriber states of a customer defined by their subscription contracts.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version unstable

An auto-generated type for paginating through multiple Customers.

Fields

Types that return Customer

Mutations for Customer

Version unstable

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return Customer

Mutations for Customer

Version 2021-07 (Release candidate)

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • A list of the customer's payment methods.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    showRevoked ( Boolean )

    Whether to show the customer's revoked payment method.
    Default value: false

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • subscriptionContracts (SubscriptionContractConnection!)

    A list of the customer's subscription contracts.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • productSubscriberStatus (CustomerProductSubscriberStatus!)

    Possible subscriber states of a customer defined by their subscription contracts.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2021-07 (Release candidate)

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2021-07 (Release candidate)

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2021-04 (Latest)

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • A list of the customer's payment methods.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    showRevoked ( Boolean )

    Whether to show the customer's revoked payment method.
    Default value: false

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • subscriptionContracts (SubscriptionContractConnection!)

    A list of the customer's subscription contracts.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • productSubscriberStatus (CustomerProductSubscriberStatus!)

    Possible subscriber states of a customer defined by their subscription contracts.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2021-04 (Latest)

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2021-04 (Latest)

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2021-01

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • A list of the customer's payment methods.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    showRevoked ( Boolean )

    Whether to show the customer's revoked payment method.
    Default value: false

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • subscriptionContracts (SubscriptionContractConnection!)

    A list of the customer's subscription contracts.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • productSubscriberStatus (CustomerProductSubscriberStatus!)

    Possible subscriber states of a customer defined by their subscription contracts.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2021-01

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2021-01

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2020-10

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2020-10

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2020-10

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2020-07

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • multipassIdentifier (String)

    A unique identifier for the customer that's used with Multipass login.

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2020-07

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2020-07

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2020-04

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements

Deprecated fields

  • averageOrderAmount (Money) deprecated

    The average amount that the customer spent per order.

    Deprecation warning

    Use averageOrderAmountV2 instead

Version 2020-04

An auto-generated type for paginating through multiple Customers.

On this page

Fields

Version 2020-04

An auto-generated type which holds one Customer and a cursor during pagination.

Fields

  • cursor (String!)

    A cursor for use in pagination.

  • node (Customer!)

    The item at the end of CustomerEdge.

Types that return CustomerEdge

Version 2020-01 (Unsupported)

Represents information about a customer of the shop, such as the customer's contact details, their order history, and whether they've agreed to receive email marketing.

Required access

read_customers access scope.

Connections

  • events (EventConnection!)

    A list of events associated with the customer.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • comments
    • created_at
    • subject_type
    • verb

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( EventSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • metafields (MetafieldConnection!)

    A paginated list of metafields associated with the resource.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Finds all metafields with a specific namespace under the resource.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

  • orders (OrderConnection!)

    A list of the customer's orders.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    query ( String )

    Supported filter parameters:

    • cart_token
    • channel_id
    • chargeback_status
    • checkout_token
    • created_at
    • credit_card_last4
    • customer_id
    • delivery_method
    • discount_code
    • email
    • financial_status
    • fraud_protection_level
    • fulfillment_location_id
    • fulfillment_status
    • location_id
    • name
    • processed_at
    • reference_location_id
    • return_status
    • risk_level
    • sales_channel
    • source_identifier
    • source_name
    • status
    • tag
    • test
    • updated_at

    See the detailed search syntax for more information about using filters.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

    sortKey ( OrderSortKeys )

    Sort the underlying list by the given key.
    Default value: ID

  • privateMetafields (PrivateMetafieldConnection!)

    List of private metafields.

    Argument Description
    after ( String )

    Returns the elements that come after the specified cursor.

    before ( String )

    Returns the elements that come before the specified cursor.

    first ( Int )

    Returns up to the first n elements from the list.

    last ( Int )

    Returns up to the last n elements from the list.

    namespace ( String )

    Filter the private metafields by namespace.

    reverse ( Boolean )

    Reverse the order of the underlying list.
    Default value: false

Fields

  • acceptsMarketing (Boolean!)

    Whether the customer has agreed to receive marketing materials.

  • acceptsMarketingUpdatedAt (DateTime!)

    The date and time when the customer consented or objected to receiving marketing material by email.

  • addresses ([MailingAddress!]!)

    A list of addresses associated with the customer.

    Argument Description
    first ( Int )

    Truncate the array result to this size.

  • averageOrderAmountV2 (MoneyV2)

    The average amount that the customer spent per order.

  • canDelete (Boolean!)

    Whether the merchant can delete the customer from their store.

    A customer can be deleted from a store only if they have not yet made an order. After a customer makes an order, they can't be deleted from a store.

  • createdAt (DateTime!)

    The date and time when the customer was added to the store.

  • defaultAddress (MailingAddress)

    The default address associated with the customer.

  • displayName (String!)

    The full name of the customer, based on the values for first_name and last_name. If the first_name and last_name are not available, then this falls back to the customer's email address, and if that is not available, the customer's phone number.

  • email (String)

    The customer's email address.

  • firstName (String)

    The customer's first name.

  • hasNote (Boolean!)

    Whether the customer has a note associated with them.

  • hasTimelineComment (Boolean!)

    Whether the merchant has added timeline comments about the customer on the customer's page.

  • id (ID!)

    Globally unique identifier.

  • image (Image!)

    The image associated with the customer.

    Argument Description
    size ( Int )

    Image width and height (1 - 2048 pixels) This argument is deprecated: Use maxWidth or maxHeight on Image.transformedSrc instead.

  • lastName (String)

    The customer's last name.

  • lastOrder (Order)

    The customer's last order.

  • legacyResourceId (UnsignedInt64!)

    The ID of the corresponding resource in the REST Admin API.

  • lifetimeDuration (String!)

    The amount of time since the customer was first added to the store.

    Example: 'about 12 years'.

  • locale (String!)

    The customer's locale.

  • marketingOptInLevel (CustomerMarketingOptInLevel)

    The marketing subscription opt-in level (as described by the M3AAWG best practices guideline) that the customer gave when they consented to receive marketing material by email.

    If the customer does not accept email marketing, then this property will be null.

  • metafield (Metafield)

    The metafield associated with the resource.

    Argument Description
    key ( String! ) required

    Identifier for the metafield (maximum of 30 characters).

    namespace ( String! ) required

    Container for a set of metafields (maximum of 20 characters).

  • note (String)

    A note about the customer.

  • ordersCount (UnsignedInt64!)

    The number of orders that the customer has made at the store in their lifetime.

  • phone (String)

    The customer's phone number.

  • privateMetafield (PrivateMetafield)

    Returns a private metafield found by namespace and key.

    Argument Description
    key ( String! ) required

    The key for the private metafield.

    namespace ( String! ) required

    The namespace for the private metafield.

  • state (CustomerState!)

    The state of the customer's account with the shop.

  • tags ([String!]!)

    A comma separated list of tags that have been added to the customer.

  • taxExempt (Boolean!)

    Whether the customer is exempt from being charged taxes on their orders.

  • taxExemptions ([TaxExemption!]!)

    The list of tax exemptions applied to the customer.

  • totalSpent (Money!)

    The total amount that the customer has spent on orders in their lifetime.

  • totalSpentV2 (MoneyV2!)

    The total amount that the customer has spent on orders in their lifetime.

  • updatedAt (DateTime!)

    The date and time when the customer was last updated.

  • validEmailAddress (Boolean!)

    Whether the email address is formatted correctly. This does not guarantee that the email address actually exists.

  • verifiedEmail (Boolean!)

    Whether the customer has verified their email address. Defaults to true if the customer is created through the Shopify admin or API.

Types that return Customer

Mutations for Customer

Implements