younifyd
Menu

customerSmsMarketingConsentUpdate

Updates a customer's SMS marketing consent information. The customer must have a phone number on their account to receive SMS marketing.

Use it in a workflow

  1. Add a step and choose the Shopify connector.
  2. Pick the customerSmsMarketingConsentUpdate action (under Customer).
  3. Fill in the fields below, then reference the result from later steps as {{customersmsmarketingconsentupdate.response.data}}.

Query

This is the mutation the action sends by default. Edit it in the step's Query field to change which fields come back.

graphql
mutation CustomerSmsMarketingConsentUpdate($input: CustomerSmsMarketingConsentUpdateInput!) {
  customerSmsMarketingConsentUpdate(input: $input) {
    customer {
      amountSpent {
        amount
        currencyCode
      }
      canDelete
      companyContactProfiles {
        company
        createdAt
        customer
        id
        isMainContact
        lifetimeDuration
        locale
        title
        updatedAt
      }
      createdAt
      dataSaleOptOut
      defaultAddress {
        address1
        address2
        city
        company
        coordinatesValidated
        country
        countryCode
        countryCodeV2
        firstName
        formattedArea
        id
        lastName
        latitude
        longitude
        name
        phone
        province
        provinceCode
        timeZone
        validationResultSummary
        zip
      }
      defaultEmailAddress {
        emailAddress
        marketingOptInLevel
        marketingState
        marketingUnsubscribeUrl
        marketingUpdatedAt
        openTrackingLevel
        openTrackingUrl
        sourceLocation
        validFormat
      }
      defaultPhoneNumber {
        marketingCollectedFrom
        marketingOptInLevel
        marketingState
        marketingUpdatedAt
        phoneNumber
        sourceLocation
        whatsAppMarketingConsent
      }
      displayName
      email
      emailMarketingConsent {
        consentUpdatedAt
        marketingOptInLevel
        marketingState
        sourceLocation
      }
      firstName
      hasTimelineComment
      id
      identityProviderSubjects {
        createdAt
        id
        providerName
        subject
        updatedAt
      }
      lastName
      lastOrder {
        additionalFees
        alerts
        app
        attribution
        billingAddress
        billingAddressMatchesShippingAddress
        canMarkAsPaid
        canNotifyCustomer
        cancelReason
        cancellation
        cancelledAt
        capturable
        cartDiscountAmount
        cartDiscountAmountSet
        cartToken
        channel
        channelInformation
        checkoutToken
        clientIp
        closed
        closedAt
        confirmationNumber
        confirmed
        createdAt
        currencyCode
        currentCartDiscountAmountSet
        currentShippingPriceSet
        currentSubtotalLineItemsQuantity
        currentSubtotalPriceSet
        currentTaxLines
        currentTotalAdditionalFeesSet
        currentTotalDiscountsSet
        currentTotalDutiesSet
        currentTotalPriceSet
        currentTotalTaxSet
        currentTotalWeight
        customAttributes
        customer
        customerAcceptsMarketing
        customerJourney
        customerJourneySummary
        customerLocale
        discountCode
        discountCodes
        displayAddress
        displayFinancialStatus
        displayFulfillmentStatus
        disputes
        dutiesIncluded
        edited
        email
        estimatedTaxes
        fulfillable
        fulfillmentsCount
        fullyPaid
        hasTimelineComment
        id
        landingPageDisplayText
        landingPageUrl
        legacyResourceId
        merchantBusinessEntity
        merchantEditable
        merchantEditableErrors
        merchantOfRecordApp
        name
        netPayment
        netPaymentSet
        note
        number
        originalTotalAdditionalFeesSet
        originalTotalDutiesSet
        originalTotalPriceSet
        paymentCollectionDetails
        paymentGatewayNames
        paymentTerms
        phone
        physicalLocation
        poNumber
        presentmentCurrencyCode
        processedAt
        productNetwork
        publication
        purchasingEntity
        referralCode
        referrerDisplayText
        referrerUrl
        refundDiscrepancySet
        refundable
        registeredSourceUrl
        requiresShipping
        restockable
        retailLocation
        returnStatus
        risk
        riskLevel
        shippingAddress
        shippingLine
        shopifyProtect
        sourceIdentifier
        sourceName
        staffMember
        subtotalLineItemsQuantity
        subtotalPrice
        subtotalPriceSet
        tags
        taxExempt
        taxLines
        taxesIncluded
        test
        totalCapturable
        totalCapturableSet
        totalCashRoundingAdjustment
        totalDiscounts
        totalDiscountsSet
        totalOutstandingSet
        totalPrice
        totalPriceSet
        totalReceived
        totalReceivedSet
        totalRefunded
        totalRefundedSet
        totalRefundedShippingSet
        totalShippingPrice
        totalShippingPriceSet
        totalTax
        totalTaxSet
        totalTipReceived
        totalTipReceivedSet
        totalWeight
        transactionsCount
        unpaid
        updatedAt
      }
      legacyResourceId
      lifetimeDuration
      locale
      market {
        catalogsCount
        conditions
        currencySettings
        delivery
        discountsCount
        enabled
        handle
        id
        name
        priceInclusions
        priceList
        primary
        status
        type
        webPresence
      }
      mergeable {
        errorFields
        isMergeable
        mergeInProgress
        reason
      }
      multipassIdentifier
      note
      numberOfOrders
      phone
      productSubscriberStatus
      smsMarketingConsent {
        consentCollectedFrom
        consentUpdatedAt
        marketingOptInLevel
        marketingState
        sourceLocation
      }
      state
      statistics {
        predictedSpendTier
        rfmGroup
      }
      tags
      taxExempt
      taxExemptions
      taxSettings {
        taxId
      }
      unsubscribeUrl
      updatedAt
      validEmailAddress
      verifiedEmail
    }
    userErrors {
      code
      field
      message
    }
  }
}

Variables

Pass these as a JSON object in the step's Variables field.

inputobjectrequired

Specifies the input fields to update a customer's SMS marketing consent information.

customerIdstringrequired
smsMarketingConsentobjectrequired4 fields
json
{
  "input": {
    "customerId": "string",
    "smsMarketingConsent": {
      "marketingState": "NOT_SUBSCRIBED",
      "marketingOptInLevel": "SINGLE_OPT_IN",
      "consentUpdatedAt": "string",
      "sourceLocationId": "string"
    }
  }
}

Response

Read the result with {{customersmsmarketingconsentupdate.response.data.data.customerSmsMarketingConsentUpdate}}. If the API returns errors, the step fails and they are at {{customersmsmarketingconsentupdate.response.data.errors}}.

customerobject
amountSpentobject2 fields
canDeleteboolean
companyContactProfilesarray<object>
createdAtstring
dataSaleOptOutboolean
defaultAddressobject21 fields
defaultEmailAddressobject9 fields
defaultPhoneNumberobject7 fields
displayNamestring
emailstring
emailMarketingConsentobject4 fields
firstNamestring
hasTimelineCommentboolean
idstring
identityProviderSubjectsarray<object>
lastNamestring
lastOrderobject40 fields
legacyResourceIdstring
lifetimeDurationstring
localestring
marketobject15 fields
mergeableobject4 fields
multipassIdentifierstring
notestring
numberOfOrdersstring
phonestring
productSubscriberStatusstring

One ofACTIVECANCELLEDEXPIREDFAILEDNEVER_SUBSCRIBEDPAUSED

smsMarketingConsentobject5 fields
statestring

One ofDECLINEDDISABLEDENABLEDINVITED

statisticsobject2 fields
tagsarray<object>
taxExemptboolean
taxExemptionsarray<object>
taxSettingsobject1 fields
unsubscribeUrlstring
updatedAtstring
validEmailAddressboolean
verifiedEmailboolean
userErrorsarray<object>
codeobject
fieldobject
messageobject

Need more? See the Shopify guide for connection setup and behaviour shared by every action.

Was this page helpful?