Menu
subscriptionContractCreate
Creates a subscription contract draft, which is an intention to create a new subscription.
Use it in a workflow
- Add a step and choose the Shopify connector.
- Pick the subscriptionContractCreate action (under Subscription).
- Fill in the fields below, then reference the result from later steps as
{{subscriptioncontractcreate.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.
mutation SubscriptionContractCreate($input: SubscriptionContractCreateInput!) {
subscriptionContractCreate(input: $input) {
draft {
billingCycle {
billingAttemptExpectedDate
cycleEndAt
cycleIndex
cycleStartAt
edited
editedContract
skipped
sourceContract
status
}
billingPolicy {
anchors
interval
intervalCount
maxCycles
minCycles
}
currencyCode
customAttributes {
key
value
}
customer {
amountSpent
canDelete
companyContactProfiles
createdAt
dataSaleOptOut
defaultAddress
defaultEmailAddress
defaultPhoneNumber
displayName
email
emailMarketingConsent
firstName
hasTimelineComment
id
identityProviderSubjects
lastName
lastOrder
legacyResourceId
lifetimeDuration
locale
market
mergeable
multipassIdentifier
note
numberOfOrders
phone
productSubscriberStatus
smsMarketingConsent
state
statistics
tags
taxExempt
taxExemptions
taxSettings
unsubscribeUrl
updatedAt
validEmailAddress
verifiedEmail
}
deliveryMethod
deliveryPolicy {
anchors
interval
intervalCount
}
deliveryPrice {
amount
currencyCode
}
id
nextBillingDate
note
originalContract {
app
appAdminUrl
billingPolicy
createdAt
currencyCode
customAttributes
customer
deliveryMethod
deliveryPolicy
deliveryPrice
id
lastBillingAttemptErrorType
lastPaymentStatus
lineCount
linesCount
nextBillingDate
note
originOrder
revisionId
status
updatedAt
}
status
}
userErrors {
code
field
message
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"input": {
"customerId": "string",
"nextBillingDate": "string",
"currencyCode": "USD",
"contract": {
"status": "ACTIVE",
"paymentMethodId": "string",
"nextBillingDate": "string",
"billingPolicy": {
"interval": "string",
"intervalCount": "string",
"minCycles": "string",
"maxCycles": "string",
"anchors": "string"
},
"deliveryPolicy": {
"interval": "string",
"intervalCount": "string",
"anchors": "string"
},
"deliveryPrice": "string",
"deliveryMethod": {
"shipping": "string",
"localDelivery": "string",
"pickup": "string"
},
"note": "string",
"customAttributes": [
"string"
]
},
"actor": "CUSTOMER"
}
}
Response
Read the result with {{subscriptioncontractcreate.response.data.data.subscriptionContractCreate}}. If the API returns errors, the step fails and they are at {{subscriptioncontractcreate.response.data.errors}}.
Need more? See the Shopify guide for connection setup and behaviour shared by every action.
Was this page helpful?