--- title: Mutation - Customer API description: This is the schema's entry point for all mutation operations. api_version: 2025-04 api_name: customer type: object api_type: graphql source_url: html: https://shopify.dev/docs/api/customer/2025-04/objects/mutation md: https://shopify.dev/docs/api/customer/2025-04/objects/mutation.md --- # Mutation object This is the schema's entry point for all mutation operations. ## Fields * company​Location​Assign​Address [Company​Location​Assign​Address​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CompanyLocationAssignAddressPayload) Updates an address on a company location. * location​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the company location to update addresses on. * address [Company​Address​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/CompanyAddressInput) required The input fields to use to update the address. * address​Types [\[Company​Address​Type!\]!](https://shopify.dev/docs/api/customer/2025-04/enums/CompanyAddressType) required The list of address types on the location to update. *** * customer​Address​Create [Customer​Address​Create​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerAddressCreatePayload) Creates a new address for a customer. * address [Customer​Address​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/CustomerAddressInput) required ### Arguments Specifies the fields to use when creating the address. * default​Address [Boolean](https://shopify.dev/docs/api/customer/2025-04/scalars/Boolean) Default:false The flag to set the address as the default address. *** * customer​Address​Delete [Customer​Address​Delete​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerAddressDeletePayload) Deletes a specific address for a customer. * address​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the address to be deleted. *** * customer​Address​Update [Customer​Address​Update​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerAddressUpdatePayload) Updates a specific address for a customer. * address​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the address to be updated. * address [Customer​Address​Input](https://shopify.dev/docs/api/customer/2025-04/input-objects/CustomerAddressInput) Specifies the fields to use when updating the address. * default​Address [Boolean](https://shopify.dev/docs/api/customer/2025-04/scalars/Boolean) Default:null The flag to set the address as the default address. *** * customer​Email​Marketing​Subscribe [Customer​Email​Marketing​Subscribe​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerEmailMarketingSubscribePayload) Subscribes the customer to email marketing. * customer​Email​Marketing​Unsubscribe [Customer​Email​Marketing​Unsubscribe​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerEmailMarketingUnsubscribePayload) Unsubscribes the customer from email marketing. * customer​Update [Customer​Update​Payload](https://shopify.dev/docs/api/customer/2025-04/types/CustomerUpdatePayload) Updates the customer's personal information. * input [Customer​Update​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/CustomerUpdateInput) required ### Arguments Specifies the input fields for the customer update. *** * metafields​Delete [Metafields​Delete​Payload](https://shopify.dev/docs/api/customer/2025-04/types/MetafieldsDeletePayload) Deletes multiple metafields in bulk. * metafields [\[Metafield​Identifier​Input!\]!](https://shopify.dev/docs/api/customer/2025-04/input-objects/MetafieldIdentifierInput) required ### Arguments A list of identifiers specifying metafields to delete. At least one identifier must be specified. *** * metafields​Set [Metafields​Set​Payload](https://shopify.dev/docs/api/customer/2025-04/types/MetafieldsSetPayload) Sets metafield values. Metafield values will be set regardless if they were previously created or not. Allows a maximum of 25 metafields to be set at a time. This operation is atomic, meaning no changes are persisted if an error is encountered. As of `2024-07`, this operation supports compare-and-set functionality to better handle concurrent requests. If `compareDigest` is set for any metafield, the mutation will only set that metafield if the persisted metafield value matches the digest used on `compareDigest`. If the metafield doesn't exist yet, but you want to guarantee that the operation will run in a safe manner, set `compareDigest` to `null`. The `compareDigest` value can be acquired by querying the metafield object and selecting `compareDigest` as a field. If the `compareDigest` value does not match the digest for the persisted value, the mutation will return an error. You can opt out of write guarantees by not sending `compareDigest` in the request. * metafields [\[Metafields​Set​Input!\]!](https://shopify.dev/docs/api/customer/2025-04/input-objects/MetafieldsSetInput) required ### Arguments The list of metafield values to set. Maximum of 25. *** * order​Request​Return [Order​Request​Return​Payload](https://shopify.dev/docs/api/customer/2025-04/types/OrderRequestReturnPayload) Request a new return on behalf of a customer. * order​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the order for which this return is being requested. * requested​Line​Items [\[Requested​Line​Item​Input!\]!](https://shopify.dev/docs/api/customer/2025-04/input-objects/RequestedLineItemInput) required The line items that are requested to be returned. *** * subscription​Billing​Cycle​Skip [Subscription​Billing​Cycle​Skip​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionBillingCycleSkipPayload) Skips a Subscription Billing Cycle. * billing​Cycle​Input [Subscription​Billing​Cycle​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/SubscriptionBillingCycleInput) required ### Arguments The input object for selecting and using billing cycles. *** * subscription​Billing​Cycle​Unskip [Subscription​Billing​Cycle​Unskip​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionBillingCycleUnskipPayload) Unskips a Subscription Billing Cycle. * billing​Cycle​Input [Subscription​Billing​Cycle​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/SubscriptionBillingCycleInput) required ### Arguments The input object for selecting and using billing cycles. *** * subscription​Contract​Activate [Subscription​Contract​Activate​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionContractActivatePayload) Activates a Subscription Contract. Contract status must be either active, paused, or failed. * subscription​Contract​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the subscription contract to activate. *** * subscription​Contract​Cancel [Subscription​Contract​Cancel​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionContractCancelPayload) Cancels a Subscription Contract. * subscription​Contract​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the Subscription Contract to cancel. *** * subscription​Contract​Fetch​Delivery​Options [Subscription​Contract​Fetch​Delivery​Options​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionContractFetchDeliveryOptionsPayload) Fetches the available delivery options for a Subscription Contract. * subscription​Contract​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the subscription contract. * address [Customer​Address​Input](https://shopify.dev/docs/api/customer/2025-04/input-objects/CustomerAddressInput) The address to deliver the subscription contract to. *** * subscription​Contract​Pause [Subscription​Contract​Pause​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionContractPausePayload) Pauses a Subscription Contract. * subscription​Contract​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the subscription contract to pause. *** * subscription​Contract​Select​Delivery​Method [Subscription​Contract​Select​Delivery​Method​Payload](https://shopify.dev/docs/api/customer/2025-04/types/SubscriptionContractSelectDeliveryMethodPayload) Selects an option from a delivery options result and updates the delivery method on a Subscription Contract. * subscription​Contract​Id [ID!](https://shopify.dev/docs/api/customer/2025-04/scalars/ID) required ### Arguments The ID of the subscription contract. * subscription​Delivery​Options​Result​Token [String!](https://shopify.dev/docs/api/customer/2025-04/scalars/String) required The token associated with the successfully fetched delivery options result for the subscription contract. * delivery​Method​Input [Subscription​Delivery​Method​Input!](https://shopify.dev/docs/api/customer/2025-04/input-objects/SubscriptionDeliveryMethodInput) required The delivery method selected for the subscription contract. *** * storefront​Customer​Access​Token​Create [Storefront​Customer​Access​Token​Create​Payload](https://shopify.dev/docs/api/customer/2025-04/types/StorefrontCustomerAccessTokenCreatePayload) Deprecated *** ## Map No referencing types