Skio API
Skio API Reference
Use the Skio API to read and manage your store's subscriptions, customers, orders and products. Build custom customer experiences, sync subscription data to your systems, and automate subscription changes.
The API uses GraphQL: you send one POST request to a single endpoint and ask for exactly the fields you need. Each operation below works like a REST endpoint, with its inputs, what it returns, and copy-paste examples in cURL, Node.js and Python.
New here? Create a token in Authentication, then try List subscriptions.
POST https://graphql.skio.com/v1/graphql
Content-Type: application/json
Authorization: API <your-api-token>
Need help?
Email help@skio.com or visit https://help.skio.com.
Authentication
Every request needs an API token in the Authorization header, written as API <token>.
- In the Skio dashboard, click API in the left navigation.
- Name the token and click Generate. Copy it right away: Skio shows the token only once.
- Send it with every request as
Authorization: API <your-api-token>.
A token can only access its own store's data, so you never pass a store ID. Records from other stores don't appear in results, and *ByPk queries return null for them.
Troubleshooting
| You see | Cause |
|---|---|
Authentication hook unauthorized this request |
The token is wrong or has been revoked. |
field 'Subscriptions' not found in type: 'query_root' |
The header is missing or misformatted, e.g. Bearer instead of API, or a missing space. The request ran without a token, so no operations are available. |
Treat tokens like passwords: keep them on your server and never put them in client-side code. A revoked token can keep working for up to 10 minutes.
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{"query": "{ Subscriptions(limit: 1) { id status } }"}'
{
"errors": [
{
"message": "Authentication hook unauthorized this request",
"extensions": { "path": "$", "code": "access-denied" }
}
]
}
Making requests
The Skio API is a single GraphQL endpoint. Every request is an HTTP POST to https://graphql.skio.com/v1/graphql with a JSON body:
| Field | Description |
|---|---|
query |
The GraphQL query or mutation. |
variables |
Optional. Values for the $variables the query declares. |
Responses always contain data, errors, or both. Most failures return HTTP 200 with an errors array, so check errors instead of relying on the status code. See Errors.
Queries and mutations
- Queries read data. Each object has a list query (e.g.
Subscriptions) and, for most objects, a single-record query by ID (e.g.SubscriptionByPk). Request only the fields you need, and include related objects in the same request, such as a subscription's customer and lines. - Mutations change data. Most take a single
inputargument and returnokplus a few fields. To read the updated record, query it afterwards.
IDs
idis Skio's ID, a UUID. All mutations take Skio IDs.platformIdis the matching Shopify GID, e.g.gid://shopify/SubscriptionContract/123. Use it with the Shopify Admin API, or to look up the Skio record:
Subscriptions(where: {platformId: {_eq: "gid://shopify/SubscriptionContract/123"}}) { id }
Data types
| Type | Format |
|---|---|
uuid |
Skio ID, e.g. 8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45 |
timestamptz |
ISO 8601 with offset, e.g. 2025-03-01T17:00:00+00:00 |
numeric / Float |
Decimal amounts in major units (dollars, not cents), returned as JSON numbers |
jsonb |
Any JSON value. Custom attributes are arrays of {key, value} |
Tools
The endpoint supports introspection, so you can use GraphQL clients and code generators such as GraphiQL, Insomnia, Postman or graphql-codegen with your API token.
{
"query": "query GetSubscription($id: uuid!) { SubscriptionByPk(id: $id) { id status nextBillingDate } }",
"variables": { "id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45" }
}
{
"data": {
"SubscriptionByPk": {
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"nextBillingDate": "2025-04-01T17:00:00+00:00"
}
}
}
Filtering & pagination
List queries such as Subscriptions, Orders and StorefrontUsers accept the same arguments:
| Argument | Description |
|---|---|
where |
Filter by any field, including fields of related objects. |
order_by |
Sort by one or more fields: {createdAt: desc}. |
limit |
Maximum number of rows to return. |
offset |
Number of rows to skip. |
distinct_on |
Return one row per distinct value of the given fields. |
Filter operators
| Operator | Meaning | Example |
|---|---|---|
_eq, _neq |
equals / not equals | {status: {_eq: "ACTIVE"}} |
_in, _nin |
in / not in a list | {status: {_in: ["ACTIVE", "PAUSED"]}} |
_gt, _gte, _lt, _lte |
comparisons | {nextBillingDate: {_lte: "2025-04-01"}} |
_is_null |
is / isn't null | {removedAt: {_is_null: true}} |
_ilike |
case-insensitive pattern | {email: {_ilike: "%@example.com"}} |
_and, _or, _not |
combine conditions | {_or: [{status: {_eq: "PAUSED"}}, {status: {_eq: "FAILED"}}]} |
Filters on related objects use the relationship name, e.g. {StorefrontUser: {email: {_eq: "jane@example.com"}}}. Each object's filter input lists every filterable field. See Subscription_bool_exp in the schema reference.
Pagination
Paginate with limit and offset, and always add an order_by on a stable field such as createdAt or id. Otherwise rows can repeat or go missing between pages. Request pages until you get fewer rows than your limit.
To filter or paginate on updatedAt, for example to sync recent changes, see the example on the right.
query RecentlyUpdated($since: timestamptz!, $offset: Int!) {
Subscriptions(
where: {
updatedAt: {_gte: $since}
status: {_in: ["ACTIVE", "PAUSED"]}
}
order_by: [{updatedAt: asc}, {id: asc}]
limit: 100
offset: $offset
) {
id
status
updatedAt
}
}
{ "since": "2025-03-01T00:00:00Z", "offset": 0 }
Rate limits
| Limit | Value |
|---|---|
| Requests | 30,000 per minute, shared by all API tokens for a store |
| Query depth | 4 levels of nested fields |
| Query size | 100 fields per query |
| Timeout | 120 seconds per request |
| Addresses | 1,000 rows per Addresses query |
Requests over a limit fail with an error instead of being queued. Errors include operation depth limit exceeded (code depth-limit-exceeded) and a rate-limit error.
Query depth counts nested selections. For example, Subscriptions → SubscriptionLines → ProductVariant → Product is 4 levels, so you can't select Product { Site } from there. To get deeper data, make a second query.
Aggregate queries (_aggregate) aren't available. To count large datasets or export them in bulk, use the BigQuery integration, which also works with Snowflake, Databricks and Redshift.
{
"errors": [
{
"message": "operation depth limit exceeded",
"extensions": { "path": "$", "code": "depth-limit-exceeded" }
}
]
}
Errors
GraphQL errors come back in an errors array, usually with HTTP status 200. message is a short category, and for mutations extensions.detail explains what went wrong.
message / code |
Meaning |
|---|---|
access-denied |
Invalid or revoked API token. |
validation-failed |
The query doesn't match the schema, e.g. an unknown field or wrong argument type. Also appears when the Authorization header is missing. |
depth-limit-exceeded |
The query is nested too deeply. See Rate limits. |
Invalid input |
An input value is missing or not allowed. Read extensions.detail. |
Lambda policy revoked |
The ID doesn't exist or belongs to another store. |
Resource was not found. |
The record doesn't exist. |
Unsupported |
The operation isn't supported for this subscription type, e.g. some prepaid or build-a-box actions. |
Shopify API error |
Shopify rejected the change. Read extensions.detail. |
internal error |
Unexpected server error. Retry with backoff; if it keeps happening, contact support with the request details. |
ok: false responses
Some mutations don't raise an error when an action can't be done. Instead they return ok: false with a message explaining why, for example a skip past your store's limit or an out-of-stock ship-now. Each mutation's page says when this happens. Always check ok in mutation responses.
Retries
Mutations that bill or change dates (shipNow, skipSubscription, updateNextBillingDate) aren't idempotent. Before retrying a request that timed out, query the subscription to check whether the change already happened.
{
"errors": [
{
"message": "Invalid input",
"extensions": {
"code": "Invalid input",
"detail": "Unable to change billing date on cancelled subscription"
}
}
]
}
{
"data": {
"shipNow": {
"ok": false,
"message": "Unable to place order. Some or all of the items in your order are currently out of stock."
}
}
}
Data model
Skio's objects mirror Shopify's. Each one has a platformId with the Shopify GID.
| Skio | Shopify | |
|---|---|---|
| Subscription | SubscriptionContract | A customer's recurring order |
| SubscriptionLine | SubscriptionLine | A product on a subscription |
| StorefrontUser | Customer | A customer |
| Order | Order | A checkout, recurring or fulfillment order |
| OrderLineItem | LineItem | A line on an order |
| Product / ProductVariant | Product / ProductVariant | Your catalog |
| Policy | SellingPlan billing/delivery policy | How often a subscription bills or ships |
Subscription lifecycle
status |
Meaning |
|---|---|
ACTIVE |
Bills on nextBillingDate. A statusContext of TEMPORARILY_PAUSED means billing is postponed to that date. |
PAUSED |
Paused indefinitely; doesn't bill until resumed. |
FAILED |
Payment failed and Skio is retrying (statusContext: DUNNING). |
UNDER_REVIEW |
Held for Shopify fraud review. |
CANCELLED |
Ended. Can be reactivated unless statusContext is PERMANENTLY_CANCELLED. |
Prepaid subscriptions
A prepaid subscription bills for several deliveries at once, e.g. pay every 3 months and receive a box monthly. Its lines use prepaidSubscriptionId. The orders between charges are scheduled fulfillment orders (Order.fulfillAt). nextRenewalDate and remainingCyclesUntilRenewal show when it bills next.
Subscriptions
A subscription is a recurring order for a customer. It mirrors a Shopify SubscriptionContract. Every mutation here updates Skio and the Shopify contract together.
The Subscription object
platformId is the Shopify SubscriptionContract GID, which you can use with the Shopify Admin API.
Attributes
-
billingPolicyIduuidThe billing Policy: how often the customer is charged.
-
cancelledAttimestamptz nullableWhen the subscription was cancelled.
-
churnPredictedAttimestamptz nullableWhen
churnScorewas last calculated. -
churnRiskReasons[String!] nullableReasons behind
churnScore. -
churnScorenumeric nullableSkio's predicted churn risk.
-
createdAttimestamptzWhen the subscription was created.
-
currencyCodeStringISO 4217 currency code for prices on this subscription.
-
customAttributesjsonb nullableCustom attributes on the contract, as
{key, value}pairs. -
cyclesCompletedInt nullableNumber of successful billings, including the original checkout order.
-
deliveryPolicyIduuidThe delivery Policy: how often orders ship.
-
deliveryPricenumericShipping price per order, in
currencyCode. -
deliveryPriceOverrideInt nullable1if the shipping price was pinned with Override the shipping price. -
iduuidSkio ID. Use this for every subscription mutation.
-
isPickupBoolean nullableWhether orders are picked up rather than shipped.
-
lastBillingAttemptAttimestamptz nullableWhen billing was last attempted.
-
maxStreakCountIntLongest loyalty streak.
-
metadatajsonb nullableInternal metadata.
-
migrationIndexInt nullableInternal migration bookkeeping.
-
nextBillingDatetimestamptz nullableWhen the subscription next bills.
nullif no charge is scheduled, e.g. when cancelled. -
nextRenewalDatetimestamptz nullableFor prepaid, estimated date when the prepaid subscription will bill for the next period
-
noteString nullableNote on the subscription, synced with Shopify.
-
originOrderIduuid nullableThe order that created the subscription.
-
platformIdStringShopify SubscriptionContract GID, e.g.
gid://shopify/SubscriptionContract/123. -
prepaidDeliveryPolicyIduuid nullableDelivery policy for prepaid subscriptions.
nullotherwise. -
prepaidProductPricesPerDeliveryjsonb nullablePrepaid only: price per delivery for each product.
-
remainingCyclesUntilRenewalInt nullableFor prepaid, orders remaining before the subscription bills again
-
shippingAddressIduuid nullableThe shipping Address.
-
siteIduuidYour store.
-
statusStringOne of
ACTIVE,PAUSED,CANCELLED,FAILED(billing failed, in dunning) orUNDER_REVIEW(held for Shopify fraud review). -
statusContextString nullableMore detail about
status. One ofDUNNING,UNDER_FRAUD_REVIEW,CHURNED(cancelled automatically after failed payment retries),PERMANENTLY_CANCELLED(cannot be reactivated),TEMPORARILY_PAUSED(status staysACTIVE) or3DS_PENDING. -
storefrontUserIduuidThe customer who owns the subscription.
-
streakCountInt nullableCurrent loyalty streak, counted in consecutive orders.
-
streakExpiresAttimestamptz nullableWhen the current streak expires.
-
updatedAttimestamptzWhen the subscription was last updated.
Relationships (20)
-
AuditLogs[AuditLog!]List of related AuditLog records.
-
BillingPolicyPolicyThe related Policy record.
-
CancelFlowSessions[CancelFlowSession!]List of related CancelFlowSession records.
-
CancelFlowV2Sessions[CancelFlowV2Session!]List of related CancelFlowV2Session records.
-
CancelFlowV3Sessions[CancelFlowV3Session!]List of related CancelFlowV3Session records.
-
DeliveryPolicyPolicyThe related Policy record.
-
Discounts[Discount!]List of related Discount records.
-
FulfillmentOrders[Order!]List of related Order records.
-
NotificationLogs[NotificationLog!]List of related NotificationLog records.
-
Orders[Order!]List of related Order records.
-
PaymentMethodPaymentMethodThe related PaymentMethod record.
-
PrepaidDeliveryPolicyPolicyThe related Policy record.
-
PrepaidGiftRecipientStorefrontUserThe related StorefrontUser record.
-
PrepaidSubscriptionLines[SubscriptionLine!]List of related SubscriptionLine records.
-
ShippingAddressAddressThe related Address record.
-
SiteSiteThe related Site record.
-
StorefrontUserStorefrontUserThe related StorefrontUser record.
-
SubscriptionLines[SubscriptionLine!]List of related SubscriptionLine records.
-
SurpriseDelightSessions[SurpriseDelightSessions!]List of related SurpriseDelightSessions records.
-
originOrderOrderThe related Order record.
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
List subscriptions
Subscriptions
Returns subscriptions in your store. Use where to filter, order_by to sort and limit/offset to paginate.
Arguments
-
distinct_on[Subscription_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[Subscription_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereSubscription_bool_expFilter the results. See Filtering & pagination.
Returns
A list of Subscription objects.
query ListSubscriptions($email: String!) {
Subscriptions(
where: {
StorefrontUser: {email: {_eq: $email}}
status: {_eq: "ACTIVE"}
}
order_by: {createdAt: desc}
limit: 10
) {
id
platformId
status
nextBillingDate
currencyCode
StorefrontUser {
email
}
SubscriptionLines(where: {removedAt: {_is_null: true}}) {
quantity
priceWithoutDiscount
ProductVariant {
title
}
}
}
}
{
"email": "jane@example.com"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListSubscriptions( $email: String!) { Subscriptions( where: { StorefrontUser: { email: { _eq: $email} } status: { _eq: \"ACTIVE\"} } order_by: { createdAt: desc} limit: 10) { id platformId status nextBillingDate currencyCode StorefrontUser{ email} SubscriptionLines( where: { removedAt: { _is_null: true} } ) { quantity priceWithoutDiscount ProductVariant{ title} } } }",
"variables": {
"email": "jane@example.com"
}
}'
const query = `
query ListSubscriptions($email: String!) {
Subscriptions(
where: {
StorefrontUser: {email: {_eq: $email}}
status: {_eq: "ACTIVE"}
}
order_by: {createdAt: desc}
limit: 10
) {
id
platformId
status
nextBillingDate
currencyCode
StorefrontUser {
email
}
SubscriptionLines(where: {removedAt: {_is_null: true}}) {
quantity
priceWithoutDiscount
ProductVariant {
title
}
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"email": "jane@example.com"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListSubscriptions($email: String!) {
Subscriptions(
where: {
StorefrontUser: {email: {_eq: $email}}
status: {_eq: "ACTIVE"}
}
order_by: {createdAt: desc}
limit: 10
) {
id
platformId
status
nextBillingDate
currencyCode
StorefrontUser {
email
}
SubscriptionLines(where: {removedAt: {_is_null: true}}) {
quantity
priceWithoutDiscount
ProductVariant {
title
}
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"email": "jane@example.com",
}},
)
result = response.json()
{
"data": {
"Subscriptions": [
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"status": "ACTIVE",
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"StorefrontUser": {
"email": "jane@example.com"
},
"SubscriptionLines": [
{
"quantity": 2,
"priceWithoutDiscount": 29.99,
"ProductVariant": {
"title": "Morning Blend Coffee"
}
}
]
}
]
}
}
Retrieve a subscription
SubscriptionByPk
Returns one subscription by its Skio ID, or null if it does not exist or belongs to another store.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Subscription object, or null if no record matches.
query GetSubscription($id: uuid!) {
SubscriptionByPk(id: $id) {
id
platformId
status
statusContext
nextBillingDate
cyclesCompleted
deliveryPrice
BillingPolicy {
interval
intervalCount
}
}
}
{
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query GetSubscription( $id: uuid!) { SubscriptionByPk( id: $id) { id platformId status statusContext nextBillingDate cyclesCompleted deliveryPrice BillingPolicy{ interval intervalCount} } }",
"variables": {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}'
const query = `
query GetSubscription($id: uuid!) {
SubscriptionByPk(id: $id) {
id
platformId
status
statusContext
nextBillingDate
cyclesCompleted
deliveryPrice
BillingPolicy {
interval
intervalCount
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query GetSubscription($id: uuid!) {
SubscriptionByPk(id: $id) {
id
platformId
status
statusContext
nextBillingDate
cyclesCompleted
deliveryPrice
BillingPolicy {
interval
intervalCount
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
}},
)
result = response.json()
{
"data": {
"SubscriptionByPk": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"status": "ACTIVE",
"statusContext": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"cyclesCompleted": 3,
"deliveryPrice": 5,
"BillingPolicy": {
"interval": "MONTH",
"intervalCount": 1
}
}
}
}
Create a subscription
createSubscription
Creates a subscription for an existing customer. Skio creates the Shopify subscription contract, adds the lines, then saves the subscription. The customer is not charged and no order is created now. The first charge happens on nextBillingDate. Your store's automations and journeys run as they do for any new subscription. Skio sends no "subscription created" email.
Selling plans are chosen automatically: Skio picks the plan closest to billingPolicyInfo for each variant. Each variant must be in Skio's Subscription selling plan group (Prepaid group for PREPAID).
Input input
-
addressIduuid RequiredSkio ID of one of the customer's addresses.
-
billingPolicyInfoCreateSubscriptionPolicyInfo RequiredHow often the customer is charged.
-
billingPolicyInfo.intervalSellingPlanIntervalEnum RequiredOne of:
DAY,MONTH,WEEK,YEAR. -
billingPolicyInfo.intervalCountInt RequiredNumber of intervals, e.g.
1withMONTHmeans monthly. -
storefrontUserIduuid RequiredSkio ID of the customer.
-
subscriptionLines[CreateSubscriptionLine!] RequiredProducts on the subscription.
-
subscriptionLines[].quantityInt Required -
subscriptionLines[].variantIduuid RequiredSkio ProductVariant ID.
-
subscriptionLines[].priceFloatPrice per unit. Defaults to the variant price with the selling plan's discount.
-
subscriptionTypeCreateSubscriptionType RequiredStandard recurring subscription or prepaid. One of:
PREPAID,SUBSCRIBE_AND_SAVE. -
customAttributes[CreateSubscriptionCustomAttribute!]Custom attributes on the subscription contract.
-
customAttributes[].keyString Required -
customAttributes[].valueString -
discountCodeStringDiscount code applied after creation.
-
nextBillingDateStringISO 8601 date of the first charge, at most 5 years ahead. Defaults to one billing interval from now.
-
paymentMethodIduuidSkio ID of one of the customer's payment methods. Without one, the subscription cannot bill.
-
prepaidPolicyInfoCreateSubscriptionPolicyInfoPrepaid only (required for
PREPAID): how often orders ship within a billing period. -
prepaidPolicyInfo.intervalSellingPlanIntervalEnum RequiredOne of:
DAY,MONTH,WEEK,YEAR. -
prepaidPolicyInfo.intervalCountInt RequiredNumber of intervals, e.g.
1withMONTHmeans monthly.
Returns
-
iduuidSkio ID of the new subscription.
-
platformIdStringShopify SubscriptionContract GID.
mutation createSubscription($input: CreateSubscriptionInput!) {
createSubscription(input: $input) {
id
platformId
}
}
{
"input": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"addressId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"paymentMethodId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionType": "SUBSCRIBE_AND_SAVE",
"billingPolicyInfo": {
"interval": "MONTH",
"intervalCount": 1
},
"subscriptionLines": [
{
"variantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"quantity": 1
}
],
"nextBillingDate": "2025-04-01"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation createSubscription( $input: CreateSubscriptionInput!) { createSubscription( input: $input) { id platformId} }",
"variables": {
"input": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"addressId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"paymentMethodId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionType": "SUBSCRIBE_AND_SAVE",
"billingPolicyInfo": {
"interval": "MONTH",
"intervalCount": 1
},
"subscriptionLines": [
{
"variantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"quantity": 1
}
],
"nextBillingDate": "2025-04-01"
}
}
}'
const query = `
mutation createSubscription($input: CreateSubscriptionInput!) {
createSubscription(input: $input) {
id
platformId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"addressId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"paymentMethodId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionType": "SUBSCRIBE_AND_SAVE",
"billingPolicyInfo": {
"interval": "MONTH",
"intervalCount": 1
},
"subscriptionLines": [
{
"variantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"quantity": 1
}
],
"nextBillingDate": "2025-04-01"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation createSubscription($input: CreateSubscriptionInput!) {
createSubscription(input: $input) {
id
platformId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"addressId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"paymentMethodId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionType": "SUBSCRIBE_AND_SAVE",
"billingPolicyInfo": {
"interval": "MONTH",
"intervalCount": 1,
},
"subscriptionLines": [
{
"variantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"quantity": 1,
},
],
"nextBillingDate": "2025-04-01",
},
}},
)
result = response.json()
{
"data": {
"createSubscription": {
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"platformId": "gid://shopify/SubscriptionContract/12346616394"
}
}
}
Cancel a subscription
cancelSubscription
Cancels the subscription in Skio and on Shopify, clearing nextBillingDate. By default the customer gets your cancellation notification and integrations (e.g. Klaviyo) receive a subscriptionCancelled event.
A prepaid subscription that has already completed a cycle is not cancelled right away. It keeps status ACTIVE and expires after the shipments already paid for.
Cancelling an already-cancelled subscription changes nothing and returns ok: true.
Minimum-cycle rules and commitment offers only stop customers from cancelling. They do not block cancellations made through the API.
Input input
-
subscriptionIduuid RequiredSkio subscription ID.
-
invokeSubscriptionCancelJourneysBooleanAlso run your "after cancel" journeys. Ignored for prepaid subscriptions.
-
permanentlyCancelBooleanMark the subscription
PERMANENTLY_CANCELLEDso it can never be reactivated. Defaults tofalse. -
shouldSendNotifBooleanSend the customer cancellation notification and integration events. Defaults to
true.
Returns
-
okBoolean
mutation cancelSubscription($input: CancelSubscriptionInput!) {
cancelSubscription(input: $input) {
ok
}
}
{
"input": {
"invokeSubscriptionCancelJourneys": false,
"permanentlyCancel": false,
"shouldSendNotif": true,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation cancelSubscription( $input: CancelSubscriptionInput!) { cancelSubscription( input: $input) { ok} }",
"variables": {
"input": {
"invokeSubscriptionCancelJourneys": false,
"permanentlyCancel": false,
"shouldSendNotif": true,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation cancelSubscription($input: CancelSubscriptionInput!) {
cancelSubscription(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"invokeSubscriptionCancelJourneys": false,
"permanentlyCancel": false,
"shouldSendNotif": true,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation cancelSubscription($input: CancelSubscriptionInput!) {
cancelSubscription(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"invokeSubscriptionCancelJourneys": False,
"permanentlyCancel": False,
"shouldSendNotif": True,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"cancelSubscription": {
"ok": true
}
}
}
Reactivate a subscription
reactivateSubscription
Reactivates a cancelled subscription and sets its next billing date, in Skio and on Shopify. No order is placed. Subscriptions cancelled with permanentlyCancel: true cannot be reactivated.
Every failure (an invalid date, a permanently cancelled subscription, a Shopify error) returns ok: false with no message instead of raising an error.
Input input
-
newBillingDateString RequiredISO 8601 date, at most 5 years in the future. Send an empty string to keep the current date if it is still in the future, or use today if not.
-
subscriptionIduuid Required
Returns
-
okBoolean
mutation reactivateSubscription($input: ReactivateSubscriptionInput!) {
reactivateSubscription(input: $input) {
ok
}
}
{
"input": {
"newBillingDate": "2025-04-01",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation reactivateSubscription( $input: ReactivateSubscriptionInput!) { reactivateSubscription( input: $input) { ok} }",
"variables": {
"input": {
"newBillingDate": "2025-04-01",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
}'
const query = `
mutation reactivateSubscription($input: ReactivateSubscriptionInput!) {
reactivateSubscription(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"newBillingDate": "2025-04-01",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation reactivateSubscription($input: ReactivateSubscriptionInput!) {
reactivateSubscription(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"newBillingDate": "2025-04-01",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
},
}},
)
result = response.json()
{
"data": {
"reactivateSubscription": {
"ok": true
}
}
}
Pause a subscription
pauseSubscription
Without skipOption, pauses the subscription indefinitely. Status becomes PAUSED and it stops billing until you call Resume a subscription.
With skipOption, the pause is temporary. Status stays ACTIVE, statusContext becomes TEMPORARILY_PAUSED, and nextBillingDate moves to today plus the given duration.
Only ACTIVE subscriptions can be paused. Prepaid subscriptions only support temporary pauses.
This mutation reports most failures as ok: false with a message (HTTP 200) instead of a GraphQL error. Always check ok.
Input input
-
subscriptionIdString RequiredSkio subscription ID.
-
skipOptionSkipOptionPause temporarily for this duration instead of indefinitely.
-
skipOption.unitString RequiredOne of
DAY,WEEK,MONTH,YEARorRELATIVE.RELATIVEmeansvaluebilling intervals. -
skipOption.valueFloat RequiredNumber of units. Fractions are allowed with
RELATIVE.
Returns
-
messageStringResult or failure reason.
-
okBooleanWhether the subscription was paused.
mutation pauseSubscription($input: pauseSubscriptionInput!) {
pauseSubscription(input: $input) {
message
ok
}
}
{
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation pauseSubscription( $input: pauseSubscriptionInput!) { pauseSubscription( input: $input) { message ok} }",
"variables": {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation pauseSubscription($input: pauseSubscriptionInput!) {
pauseSubscription(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation pauseSubscription($input: pauseSubscriptionInput!) {
pauseSubscription(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2,
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"pauseSubscription": {
"message": "Success",
"ok": true
}
}
}
Resume a subscription
unpauseSubscription
Resumes a paused subscription. Status becomes ACTIVE in Skio and on Shopify. If its nextBillingDate is in the past or empty, it is set to now, so the customer may be billed almost immediately.
To end a temporary pause, pass isTemporaryPause: true. That clears TEMPORARILY_PAUSED and leaves nextBillingDate unchanged.
This mutation reports most failures as ok: false with a message (HTTP 200) instead of a GraphQL error. Always check ok.
Input input
-
subscriptionIdString RequiredSkio subscription ID.
-
isTemporaryPauseBooleanEnd a temporary pause (
TEMPORARILY_PAUSED) instead of resuming aPAUSEDsubscription.
Returns
-
messageStringResult or failure reason. On success, includes the new next billing date.
-
okBoolean
mutation unpauseSubscription($input: unpauseSubscriptionInput!) {
unpauseSubscription(input: $input) {
message
ok
}
}
{
"input": {
"isTemporaryPause": false,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation unpauseSubscription( $input: unpauseSubscriptionInput!) { unpauseSubscription( input: $input) { message ok} }",
"variables": {
"input": {
"isTemporaryPause": false,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation unpauseSubscription($input: unpauseSubscriptionInput!) {
unpauseSubscription(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"isTemporaryPause": false,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation unpauseSubscription($input: unpauseSubscriptionInput!) {
unpauseSubscription(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"isTemporaryPause": False,
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"unpauseSubscription": {
"message": "Success",
"ok": true
}
}
}
Skip the next order
skipSubscription
Moves nextBillingDate forward, by one billing interval by default or by skipOption. The new date is calculated from the current nextBillingDate. The customer gets your skip notification.
This mutation reports most failures as ok: false with a message (HTTP 200) instead of a GraphQL error. Always check ok.
Input input
-
subscriptionIduuid Required -
skipOptionSkipOptionHow far to move the date. Defaults to one billing interval.
-
skipOption.unitString RequiredOne of
DAY,WEEK,MONTH,YEARorRELATIVE.RELATIVEmeansvaluebilling intervals. -
skipOption.valueFloat RequiredNumber of units. Fractions are allowed with
RELATIVE.
Returns
-
messageStringFailure reason when
okisfalse. -
nextBillingDateStringThe new next billing date (ISO 8601).
-
okBoolean
mutation skipSubscription($input: SkipSubscriptionInput!) {
skipSubscription(input: $input) {
message
nextBillingDate
ok
}
}
{
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation skipSubscription( $input: SkipSubscriptionInput!) { skipSubscription( input: $input) { message nextBillingDate ok} }",
"variables": {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation skipSubscription($input: SkipSubscriptionInput!) {
skipSubscription(input: $input) {
message
nextBillingDate
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation skipSubscription($input: SkipSubscriptionInput!) {
skipSubscription(input: $input) {
message
nextBillingDate
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"skipOption": {
"unit": "WEEK",
"value": 2,
},
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"skipSubscription": {
"message": null,
"nextBillingDate": "2025-04-01",
"ok": true
}
}
}
Ship now
shipNow
Bills the subscription immediately, which creates a real Shopify order. The next billing date then moves one interval forward from today. A paused subscription is resumed first.
By default each subscription can be billed this way at most 2 times in 24 hours. The limit is a store setting.
This mutation reports most failures as ok: false with a message (HTTP 200) instead of a GraphQL error. Always check ok. For example, out-of-stock items, declined payments and the daily limit all return ok: false.
Input input
-
subscriptionIdString RequiredSkio subscription ID.
Returns
-
messageStringResult or failure reason, e.g. out of stock.
-
okBoolean
mutation shipNow($input: ShipNowInput!) {
shipNow(input: $input) {
message
ok
}
}
{
"input": {
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation shipNow( $input: ShipNowInput!) { shipNow( input: $input) { message ok} }",
"variables": {
"input": {
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation shipNow($input: ShipNowInput!) {
shipNow(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation shipNow($input: ShipNowInput!) {
shipNow(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"shipNow": {
"message": "Successfully placed order",
"ok": true
}
}
}
Update the next billing date
updateNextBillingDate
Changes when the subscription next bills, in Skio and on Shopify. The customer gets your "next order date changed" notification. Cancelled subscriptions cannot be changed. If the new date is the same day as the current one, nothing happens.
Input input
-
dateString RequiredISO 8601 date or datetime, e.g.
2025-04-01or2025-04-01T17:00:00Z. -
subscriptionIduuid Required
Returns
-
messageStringResult message.
-
okBoolean
mutation updateNextBillingDate($input: UpdateNextBillingDateInput!) {
updateNextBillingDate(input: $input) {
message
ok
}
}
{
"input": {
"date": "2025-04-01",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateNextBillingDate( $input: UpdateNextBillingDateInput!) { updateNextBillingDate( input: $input) { message ok} }",
"variables": {
"input": {
"date": "2025-04-01",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}'
const query = `
mutation updateNextBillingDate($input: UpdateNextBillingDateInput!) {
updateNextBillingDate(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"date": "2025-04-01",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateNextBillingDate($input: UpdateNextBillingDateInput!) {
updateNextBillingDate(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"date": "2025-04-01",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
},
}},
)
result = response.json()
{
"data": {
"updateNextBillingDate": {
"message": "Successfully changed next billing date",
"ok": true
}
}
}
Change billing frequency
subscriptionEditInterval
Sets how often the subscription bills and delivers (both change together) and sets the next billing date. This also ends any temporary pause and sends the customer your "next order date" notification.
Prepaid subscriptions cannot change their interval. To change only the date, send the current interval values.
billingInterval, billingIntervalCount and nextBillingDate are required, even though the schema marks them optional.
Input input
-
subscriptionIduuid Required -
billingIntervalStringRequired. One of
DAY,WEEK,MONTHorYEAR. -
billingIntervalCountIntRequired. Number of intervals between orders, e.g.
4withWEEK. -
nextBillingDateStringRequired. ISO 8601 date for the next order.
Returns
-
subscriptionIduuid
mutation subscriptionEditInterval($input: SubscriptionEditIntervalInput!) {
subscriptionEditInterval(input: $input) {
subscriptionId
}
}
{
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"billingInterval": "WEEK",
"billingIntervalCount": 4,
"nextBillingDate": "2025-04-01"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation subscriptionEditInterval( $input: SubscriptionEditIntervalInput!) { subscriptionEditInterval( input: $input) { subscriptionId} }",
"variables": {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"billingInterval": "WEEK",
"billingIntervalCount": 4,
"nextBillingDate": "2025-04-01"
}
}
}'
const query = `
mutation subscriptionEditInterval($input: SubscriptionEditIntervalInput!) {
subscriptionEditInterval(input: $input) {
subscriptionId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"billingInterval": "WEEK",
"billingIntervalCount": 4,
"nextBillingDate": "2025-04-01"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation subscriptionEditInterval($input: SubscriptionEditIntervalInput!) {
subscriptionEditInterval(input: $input) {
subscriptionId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"billingInterval": "WEEK",
"billingIntervalCount": 4,
"nextBillingDate": "2025-04-01",
},
}},
)
result = response.json()
{
"data": {
"subscriptionEditInterval": {
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}
}
Update the shipping address
updateSubscriptionShippingAddress
Updates the subscription's shipping address in Skio and on Shopify. Only the fields you send change. Fields sent as null are cleared. The customer gets your "subscription edited" notification. Pickup subscriptions cannot be changed.
This mutation reports most failures as ok: false with a message (HTTP 200) instead of a GraphQL error. Always check ok. Shopify rejections such as an invalid zip or phone number come back this way.
Input input
-
subscriptionIdString RequiredSkio subscription ID.
-
address1String -
address2String -
cityString -
companyString -
countryStringCountry name or ISO code.
-
firstNameString -
lastNameString -
phoneStringPhone number. Invalid numbers are saved as
null. -
provinceStringState or province name or code.
-
zipString
Returns
-
messageStringFailure reason when
okisfalse. -
okBoolean
mutation updateSubscriptionShippingAddress($input: UpdateSubscriptionShippingAddressInput!) {
updateSubscriptionShippingAddress(input: $input) {
message
ok
}
}
{
"input": {
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"country": "US",
"firstName": "Jane",
"lastName": "Doe",
"phone": "+15125550123",
"province": "TX",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"zip": "78701"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateSubscriptionShippingAddress( $input: UpdateSubscriptionShippingAddressInput!) { updateSubscriptionShippingAddress( input: $input) { message ok} }",
"variables": {
"input": {
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"country": "US",
"firstName": "Jane",
"lastName": "Doe",
"phone": "+15125550123",
"province": "TX",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"zip": "78701"
}
}
}'
const query = `
mutation updateSubscriptionShippingAddress($input: UpdateSubscriptionShippingAddressInput!) {
updateSubscriptionShippingAddress(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"country": "US",
"firstName": "Jane",
"lastName": "Doe",
"phone": "+15125550123",
"province": "TX",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"zip": "78701"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateSubscriptionShippingAddress($input: UpdateSubscriptionShippingAddressInput!) {
updateSubscriptionShippingAddress(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"country": "US",
"firstName": "Jane",
"lastName": "Doe",
"phone": "+15125550123",
"province": "TX",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"zip": "78701",
},
}},
)
result = response.json()
{
"data": {
"updateSubscriptionShippingAddress": {
"message": "Success",
"ok": true
}
}
}
Override the shipping price
setDeliveryPriceOverride
Pins the subscription's shipping price, so Skio's automatic shipping re-syncs leave it alone. deliveryPriceOverride is set to 1 on the subscription. Send 0 for free shipping.
To remove the override, omit deliveryPrice or send null. Skio then recalculates the price from your current shipping rates.
Input input
-
subscriptionIduuid Required -
deliveryPriceFloatShipping price per order in the subscription's currency, e.g.
4.99. Omit it or sendnullto remove the override.
Returns
-
subscriptionIduuid
mutation setDeliveryPriceOverride($input: SetDeliveryPriceOverrideInput!) {
setDeliveryPriceOverride(input: $input) {
subscriptionId
}
}
{
"input": {
"deliveryPrice": 4.99,
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation setDeliveryPriceOverride( $input: SetDeliveryPriceOverrideInput!) { setDeliveryPriceOverride( input: $input) { subscriptionId} }",
"variables": {
"input": {
"deliveryPrice": 4.99,
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}
}'
const query = `
mutation setDeliveryPriceOverride($input: SetDeliveryPriceOverrideInput!) {
setDeliveryPriceOverride(input: $input) {
subscriptionId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"deliveryPrice": 4.99,
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation setDeliveryPriceOverride($input: SetDeliveryPriceOverrideInput!) {
setDeliveryPriceOverride(input: $input) {
subscriptionId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"deliveryPrice": 4.99,
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
},
}},
)
result = response.json()
{
"data": {
"setDeliveryPriceOverride": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
}
}
}
Update the payment method
subscriptionUpdatePaymentMethod
With paymentMethodPlatformId, sets that Shopify payment method on the subscription.
Without it, Shopify emails the customer a secure link to update the card currently on the subscription.
Input input
-
subscriptionIduuid Required -
paymentMethodPlatformIdStringShopify CustomerPaymentMethod GID, e.g.
gid://shopify/CustomerPaymentMethod/abc123. Omit it to email the customer an update link instead.
Returns
-
subscriptionIduuid
mutation subscriptionUpdatePaymentMethod($input: SubscriptionUpdatePaymentMethodInput!) {
subscriptionUpdatePaymentMethod(input: $input) {
subscriptionId
}
}
{
"input": {
"paymentMethodPlatformId": "gid://shopify/CustomerPaymentMethod/8b2f9e1c0a3d4e5f",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation subscriptionUpdatePaymentMethod( $input: SubscriptionUpdatePaymentMethodInput!) { subscriptionUpdatePaymentMethod( input: $input) { subscriptionId} }",
"variables": {
"input": {
"paymentMethodPlatformId": "gid://shopify/CustomerPaymentMethod/8b2f9e1c0a3d4e5f",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
}'
const query = `
mutation subscriptionUpdatePaymentMethod($input: SubscriptionUpdatePaymentMethodInput!) {
subscriptionUpdatePaymentMethod(input: $input) {
subscriptionId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"paymentMethodPlatformId": "gid://shopify/CustomerPaymentMethod/8b2f9e1c0a3d4e5f",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation subscriptionUpdatePaymentMethod($input: SubscriptionUpdatePaymentMethodInput!) {
subscriptionUpdatePaymentMethod(input: $input) {
subscriptionId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"paymentMethodPlatformId": "gid://shopify/CustomerPaymentMethod/8b2f9e1c0a3d4e5f",
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
},
}},
)
result = response.json()
{
"data": {
"subscriptionUpdatePaymentMethod": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
}
}
}
Apply a discount code
applyDiscountCode
Applies a Shopify discount code to the subscription's future orders. Your store's stacking rules apply: if stacking is off and another discount is already on the subscription, the call fails.
Most failures (invalid or already-applied code, stacking conflict, unknown subscription) raise a GraphQL error. A subscription with pending Shopify edits returns ok: false with a message.
Input input
-
codeString RequiredA Shopify discount code.
-
subscriptionIduuid Required
Returns
-
messageStringResult or failure reason.
-
okBooleanWhether the code was applied.
mutation applyDiscountCode($input: ApplyDiscountCodeInput!) {
applyDiscountCode(input: $input) {
message
ok
}
}
{
"input": {
"code": "WELCOME10",
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation applyDiscountCode( $input: ApplyDiscountCodeInput!) { applyDiscountCode( input: $input) { message ok} }",
"variables": {
"input": {
"code": "WELCOME10",
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
}'
const query = `
mutation applyDiscountCode($input: ApplyDiscountCodeInput!) {
applyDiscountCode(input: $input) {
message
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"code": "WELCOME10",
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation applyDiscountCode($input: ApplyDiscountCodeInput!) {
applyDiscountCode(input: $input) {
message
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"code": "WELCOME10",
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
},
}},
)
result = response.json()
{
"data": {
"applyDiscountCode": {
"message": "Successfully applied discount code WELCOME10 to subscription 8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"ok": true
}
}
}
Apply a commitment offer
setCommitmentOffer
Stops the customer from cancelling for the next additionalCycles orders. Only cancellations from the customer portal are blocked; cancellations through the API or the Skio dashboard still work.
The commitment can only be extended. If the existing commitment already ends at or after the new one, nothing changes and the existing window is returned. Only ACTIVE subscriptions can get a commitment.
Input input
-
additionalCyclesInt RequiredNumber of upcoming orders the customer must stay for. Minimum
1. -
subscriptionIduuid Required
Returns
-
commitmentLengthIntNumber of orders in the commitment.
-
commitmentStartCycleIntcyclesCompletedwhen the commitment started. -
minimumCancelCycleIntThe
cyclesCompletedvalue at which the customer can cancel again. -
subscriptionIdString
mutation setCommitmentOffer($input: SetCommitmentOfferInput!) {
setCommitmentOffer(input: $input) {
commitmentLength
commitmentStartCycle
minimumCancelCycle
subscriptionId
}
}
{
"input": {
"additionalCycles": 3,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation setCommitmentOffer( $input: SetCommitmentOfferInput!) { setCommitmentOffer( input: $input) { commitmentLength commitmentStartCycle minimumCancelCycle subscriptionId} }",
"variables": {
"input": {
"additionalCycles": 3,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
}'
const query = `
mutation setCommitmentOffer($input: SetCommitmentOfferInput!) {
setCommitmentOffer(input: $input) {
commitmentLength
commitmentStartCycle
minimumCancelCycle
subscriptionId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"additionalCycles": 3,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation setCommitmentOffer($input: SetCommitmentOfferInput!) {
setCommitmentOffer(input: $input) {
commitmentLength
commitmentStartCycle
minimumCancelCycle
subscriptionId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"additionalCycles": 3,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
},
}},
)
result = response.json()
{
"data": {
"setCommitmentOffer": {
"commitmentLength": 3,
"commitmentStartCycle": 3,
"minimumCancelCycle": 6,
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
}
}
}
Update the note
updateSubscriptionNote
Replaces the subscription's note, in Skio and on Shopify. Send null or an empty string to clear it. No customer notification is sent.
Input input
-
subscriptionIdString RequiredSkio subscription ID.
-
noteStringNew note. Replaces the existing note.
Returns
-
noteStringThe note that was saved.
-
okBoolean
mutation updateSubscriptionNote($input: UpdateSubscriptionNoteInput!) {
updateSubscriptionNote(input: $input) {
note
ok
}
}
{
"input": {
"note": "Leave at the front door",
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateSubscriptionNote( $input: UpdateSubscriptionNoteInput!) { updateSubscriptionNote( input: $input) { note ok} }",
"variables": {
"input": {
"note": "Leave at the front door",
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}
}'
const query = `
mutation updateSubscriptionNote($input: UpdateSubscriptionNoteInput!) {
updateSubscriptionNote(input: $input) {
note
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"note": "Leave at the front door",
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateSubscriptionNote($input: UpdateSubscriptionNoteInput!) {
updateSubscriptionNote(input: $input) {
note
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"note": "Leave at the front door",
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
},
}},
)
result = response.json()
{
"data": {
"updateSubscriptionNote": {
"note": "Leave at the front door",
"ok": true
}
}
}
Subscription lines
The products on a subscription. Each line is one product variant with a quantity and price. Removed lines are kept with removedAt set, so filter on removedAt: {_is_null: true} to get current contents.
The SubscriptionLine object
One product variant on a subscription.
Attributes
-
createdAttimestamptz -
customAttributesjsonb nullableLine attributes as
{key, value}pairs. Keys starting with_are set by Skio. -
groupIduuid nullableSelling plan group of the line.
-
iduuidSkio ID. Use it as
subscriptionLineIdin line mutations. -
isPrepaidBooleanWhether this is a prepaid line.
-
ordersRemainingInt nullableFor prepaid lines, deliveries left in the current prepaid period.
-
platformIdString nullableShopify SubscriptionLine GID.
-
prepaidSubscriptionIduuid nullableFor prepaid lines, the prepaid subscription.
-
priceWithoutDiscountnumericPrice per unit before discounts, in the subscription's currency.
-
productVariantIduuidThe ProductVariant on this line.
-
quantityIntUnits per order.
-
reChargeIdString nullableOriginal ID if the subscription was migrated from Recharge.
-
removedAttimestamptz nullableWhen the line was removed. Removed lines are no longer billed.
-
sellingPlanIduuid nullableThe selling plan applied to this line.
-
subscriptionIduuid nullableThe subscription this line belongs to. Prepaid lines use
prepaidSubscriptionIdinstead. -
taxableBooleanWhether the line is taxable.
-
titleOverrideString nullableCustom title shown instead of the product title.
-
updatedAttimestamptz
Relationships (6)
-
Discounts[Discount!]List of related Discount records.
-
OrderLineItems[OrderLineItem!]List of related OrderLineItem records.
-
OriginalSellingPlanSellingPlanThe related SellingPlan record.
-
PrepaidSubscriptionSubscriptionThe related Subscription record.
-
ProductVariantProductVariantThe related ProductVariant record.
-
SubscriptionSubscriptionThe related Subscription record.
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"isPrepaid": false,
"ordersRemaining": 42,
"platformId": "gid://shopify/SubscriptionLine/2358763311",
"prepaidSubscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"priceWithoutDiscount": 29.99,
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"quantity": 2,
"reChargeId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"removedAt": null,
"sellingPlanId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"taxable": false,
"titleOverride": null,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
List subscription lines
SubscriptionLines
Returns subscription lines in your store. Removed lines are included unless you filter on removedAt.
Arguments
-
distinct_on[SubscriptionLine_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[SubscriptionLine_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
Filter the results. See Filtering & pagination.
Returns
A list of SubscriptionLine objects.
query ListSubscriptionLines($subscriptionId: uuid!) {
SubscriptionLines(
where: {subscriptionId: {_eq: $subscriptionId}, removedAt: {_is_null: true}}
) {
id
quantity
priceWithoutDiscount
isPrepaid
ProductVariant {
id
title
sku
}
}
}
{
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListSubscriptionLines( $subscriptionId: uuid!) { SubscriptionLines( where: { subscriptionId: { _eq: $subscriptionId} , removedAt: { _is_null: true} } ) { id quantity priceWithoutDiscount isPrepaid ProductVariant{ id title sku} } }",
"variables": {
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
query ListSubscriptionLines($subscriptionId: uuid!) {
SubscriptionLines(
where: {subscriptionId: {_eq: $subscriptionId}, removedAt: {_is_null: true}}
) {
id
quantity
priceWithoutDiscount
isPrepaid
ProductVariant {
id
title
sku
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListSubscriptionLines($subscriptionId: uuid!) {
SubscriptionLines(
where: {subscriptionId: {_eq: $subscriptionId}, removedAt: {_is_null: true}}
) {
id
quantity
priceWithoutDiscount
isPrepaid
ProductVariant {
id
title
sku
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"subscriptionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"SubscriptionLines": [
{
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"quantity": 2,
"priceWithoutDiscount": 29.99,
"isPrepaid": false,
"ProductVariant": {
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"title": "Morning Blend Coffee",
"sku": "COFFEE-12OZ"
}
}
]
}
}
Add a product
addSubscriptionLine
Adds a product variant to a subscription, either as a recurring line or as a one-time add-on (upsell: true) that ships with the next order only.
If the subscription already has a line with the same variant, price and type, that line's quantity is increased. No new line is added.
Prepaid subscriptions only accept one-time add-ons.
Input input
-
subscriptionIduuid Required -
variantIduuid RequiredSkio ProductVariant ID (not the Shopify GID).
-
customAttributesjsonbLine attributes, as an array of
{key, value}objects. -
priceFloatPrice per unit. Defaults to the variant's subscription price.
-
quantityIntDefaults to
1. -
upsellBooleanAdd as a one-time item that ships with the next order only.
Returns
-
okBoolean
mutation addSubscriptionLine($input: AddSubscriptionLineInput!) {
addSubscriptionLine(input: $input) {
ok
}
}
{
"input": {
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"quantity": 2,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"upsell": false,
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation addSubscriptionLine( $input: AddSubscriptionLineInput!) { addSubscriptionLine( input: $input) { ok} }",
"variables": {
"input": {
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"quantity": 2,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"upsell": false,
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
}'
const query = `
mutation addSubscriptionLine($input: AddSubscriptionLineInput!) {
addSubscriptionLine(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"quantity": 2,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"upsell": false,
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation addSubscriptionLine($input: AddSubscriptionLineInput!) {
addSubscriptionLine(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!",
},
],
"quantity": 2,
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"upsell": False,
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
},
}},
)
result = response.json()
{
"data": {
"addSubscriptionLine": {
"ok": true
}
}
}
Add multiple products
addSubscriptionLineBulk
Adds several products to one subscription in a single Shopify update. Each item works like Add a product, and all items must have the same subscriptionId. Prepaid subscriptions are not supported.
Input input
-
items[AddSubscriptionLineInput!] RequiredProducts to add. Every item must have the same
subscriptionId. -
items[].subscriptionIduuid Required -
items[].variantIduuid RequiredSkio ProductVariant ID (not the Shopify GID).
-
items[].customAttributesjsonbLine attributes, as an array of
{key, value}objects. -
items[].priceFloatPrice per unit. Defaults to the variant's subscription price.
-
items[].quantityIntDefaults to
1. -
items[].upsellBooleanAdd as a one-time item that ships with the next order only.
Returns
-
okBoolean
mutation addSubscriptionLineBulk($input: AddSubscriptionLineBulkInput!) {
addSubscriptionLineBulk(input: $input) {
ok
}
}
{
"input": {
"items": [
{
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
]
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation addSubscriptionLineBulk( $input: AddSubscriptionLineBulkInput!) { addSubscriptionLineBulk( input: $input) { ok} }",
"variables": {
"input": {
"items": [
{
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
]
}
}
}'
const query = `
mutation addSubscriptionLineBulk($input: AddSubscriptionLineBulkInput!) {
addSubscriptionLineBulk(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"items": [
{
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
]
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation addSubscriptionLineBulk($input: AddSubscriptionLineBulkInput!) {
addSubscriptionLineBulk(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"items": [
{
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"variantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
},
],
},
}},
)
result = response.json()
{
"data": {
"addSubscriptionLineBulk": {
"ok": true
}
}
}
Update a line
updateSubscriptionLine
Changes a line's quantity, price, variant, title or custom attributes. Send only the fields you want to change.
quantity: 0removes the line. A subscription's last line cannot be removed.- A different
productVariantIdswaps the product, and the price is recalculated unless you also sendcurrentPrice.
The updated line is not returned. Query List subscription lines afterwards to read it.
Input input
-
currentPriceFloatNew price per unit before discounts, in the subscription's currency.
-
customAttributesjsonbArray of
{key, value}objects. Replaces all existing attributes. Cannot be combined with a variant swap. -
prepaidSubscriptionLineIduuidPrepaid line to update. Send this or
subscriptionLineId, not both. -
productVariantIduuidSkio ProductVariant ID to swap to.
-
quantityIntNew quantity.
0removes the line. -
subscriptionLineIduuidLine to update. Send this or
prepaidSubscriptionLineId, not both. -
titleOverrideStringCustom title for the line.
Returns
-
okBoolean
mutation updateSubscriptionLine($input: UpdateSubscriptionLineInput!) {
updateSubscriptionLine(input: $input) {
ok
}
}
{
"input": {
"currentPrice": 24.99,
"quantity": 2,
"subscriptionLineId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateSubscriptionLine( $input: UpdateSubscriptionLineInput!) { updateSubscriptionLine( input: $input) { ok} }",
"variables": {
"input": {
"currentPrice": 24.99,
"quantity": 2,
"subscriptionLineId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}
}'
const query = `
mutation updateSubscriptionLine($input: UpdateSubscriptionLineInput!) {
updateSubscriptionLine(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"currentPrice": 24.99,
"quantity": 2,
"subscriptionLineId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateSubscriptionLine($input: UpdateSubscriptionLineInput!) {
updateSubscriptionLine(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"currentPrice": 24.99,
"quantity": 2,
"subscriptionLineId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
},
}},
)
result = response.json()
{
"data": {
"updateSubscriptionLine": {
"ok": true
}
}
}
Update multiple lines
updateSubscriptionLineBulk
Applies several line updates to one subscription in a single Shopify update. Each item follows the rules of Update a line. Every line ID must exist, and the batch cannot remove all of the subscription's lines.
Input input
-
items[UpdateSubscriptionLineInput!] RequiredLine updates. Every line must belong to the same subscription.
-
items[].currentPriceFloatNew price per unit before discounts, in the subscription's currency.
-
items[].customAttributesjsonbArray of
{key, value}objects. Replaces all existing attributes. Cannot be combined with a variant swap. -
items[].prepaidSubscriptionLineIduuidPrepaid line to update. Send this or
subscriptionLineId, not both. -
items[].productVariantIduuidSkio ProductVariant ID to swap to.
-
items[].quantityIntNew quantity.
0removes the line. -
items[].subscriptionLineIduuidLine to update. Send this or
prepaidSubscriptionLineId, not both. -
items[].titleOverrideStringCustom title for the line.
Returns
-
okBoolean
mutation updateSubscriptionLineBulk($input: UpdateSubscriptionLineBulkInput!) {
updateSubscriptionLineBulk(input: $input) {
ok
}
}
{
"input": {
"items": [
{}
]
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateSubscriptionLineBulk( $input: UpdateSubscriptionLineBulkInput!) { updateSubscriptionLineBulk( input: $input) { ok} }",
"variables": {
"input": {
"items": [
{}
]
}
}
}'
const query = `
mutation updateSubscriptionLineBulk($input: UpdateSubscriptionLineBulkInput!) {
updateSubscriptionLineBulk(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"items": [
{}
]
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateSubscriptionLineBulk($input: UpdateSubscriptionLineBulkInput!) {
updateSubscriptionLineBulk(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"items": [
{},
],
},
}},
)
result = response.json()
{
"data": {
"updateSubscriptionLineBulk": {
"ok": true
}
}
}
Swap a product
swapSubscriptionProductVariants
Replaces a variant on the subscription with another variant. By default every line with oldProductVariantId is swapped. Use subscriptionLinesToSwapFrom to limit the swap to specific lines. Use pricingOption to choose between keeping the current price, using the new variant's price, or setting a custom price.
Input input
-
newProductVariantIdString RequiredSkio ProductVariant ID to swap in.
-
oldProductVariantIdString RequiredSkio ProductVariant ID currently on the subscription.
-
subscriptionIdString RequiredSkio subscription ID.
-
isGiftSwapBooleanSwap a Surprise & Delight gift line. Requires exactly one ID in
subscriptionLinesToSwapFrom. -
newCustomPriceStringRequired with
CUSTOM. Decimal string, e.g."19.99", before the selling plan discount. -
pricingOptionSwapPricingOptionTypeSAMEkeeps the current price (default),NEW_VARIANT_PRICEuses the new variant's subscription price,CUSTOMusesnewCustomPrice. One of:CUSTOM,NEW_VARIANT_PRICE,SAME. -
subscriptionLinesToSwapFrom[String!]Only swap these subscription line IDs.
Returns
-
okBoolean
mutation swapSubscriptionProductVariants($input: SwapSubscriptionProductVariantsInput!) {
swapSubscriptionProductVariants(input: $input) {
ok
}
}
{
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"oldProductVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"newProductVariantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"pricingOption": "SAME"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation swapSubscriptionProductVariants( $input: SwapSubscriptionProductVariantsInput!) { swapSubscriptionProductVariants( input: $input) { ok} }",
"variables": {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"oldProductVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"newProductVariantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"pricingOption": "SAME"
}
}
}'
const query = `
mutation swapSubscriptionProductVariants($input: SwapSubscriptionProductVariantsInput!) {
swapSubscriptionProductVariants(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"oldProductVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"newProductVariantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"pricingOption": "SAME"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation swapSubscriptionProductVariants($input: SwapSubscriptionProductVariantsInput!) {
swapSubscriptionProductVariants(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"oldProductVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"newProductVariantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"pricingOption": "SAME",
},
}},
)
result = response.json()
{
"data": {
"swapSubscriptionProductVariants": {
"ok": true
}
}
}
Update build-a-box contents
updateDynamicBoxSubscription
Replaces the contents of one build-a-box on a subscription with updated. Lines are added, updated and removed to match. The box's tier discount is re-applied. The total quantity and price must satisfy the box's size and price rules.
Input input
-
dynamicBoxDynamicBoxConfigInput RequiredWhich box on the subscription to update.
-
dynamicBox.boxIdString RequiredSkio DynamicBox ID.
-
dynamicBox.boxIndexString RequiredWhich instance of the box, matching the
_dynamicBoxIndexline attribute. -
dynamicBox.boxSectionIdString -
subscriptionIduuid Required -
updated[DynamicBoxContentInput!] RequiredThe complete new contents of the box.
-
updated[].quantityInt Required -
updated[].variantIdString RequiredSkio ProductVariant ID. Must be one of the box's selectable variants.
Returns
-
okBoolean
mutation updateDynamicBoxSubscription($input: UpdateDynamicBoxSubscriptionInput!) {
updateDynamicBoxSubscription(input: $input) {
ok
}
}
{
"input": {
"dynamicBox": {
"boxId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"boxIndex": "0"
},
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"updated": [
{
"quantity": 2,
"variantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
]
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation updateDynamicBoxSubscription( $input: UpdateDynamicBoxSubscriptionInput!) { updateDynamicBoxSubscription( input: $input) { ok} }",
"variables": {
"input": {
"dynamicBox": {
"boxId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"boxIndex": "0"
},
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"updated": [
{
"quantity": 2,
"variantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
]
}
}
}'
const query = `
mutation updateDynamicBoxSubscription($input: UpdateDynamicBoxSubscriptionInput!) {
updateDynamicBoxSubscription(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"dynamicBox": {
"boxId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"boxIndex": "0"
},
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"updated": [
{
"quantity": 2,
"variantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
]
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation updateDynamicBoxSubscription($input: UpdateDynamicBoxSubscriptionInput!) {
updateDynamicBoxSubscription(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"dynamicBox": {
"boxId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"boxIndex": "0",
},
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"updated": [
{
"quantity": 2,
"variantId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
},
],
},
}},
)
result = response.json()
{
"data": {
"updateDynamicBoxSubscription": {
"ok": true
}
}
}
Customers
Customers are called storefront users in the API. Each one mirrors a Shopify Customer. This section also covers addresses, loyalty credit balances and login links for Skio's customer portal.
The StorefrontUser object
A customer of your store.
Attributes
-
createdAttimestamptz -
emailString nullableEmail address.
-
emailLowerString nullableLowercased email. Use it for case-insensitive lookups.
-
firstNameString nullable -
iduuidSkio ID.
-
lastNameString nullable -
phoneNumberString nullable -
platformIdString nullableShopify Customer GID, e.g.
gid://shopify/Customer/123. -
qaTokenuuid nullableCurrent Quick Actions token. See Generate a Quick Actions token.
-
redactedAttimestamptz nullableWhen the customer's data was redacted after a GDPR request.
-
removedAttimestamptz nullableWhen the customer was removed.
-
shopifyTagsjsonb nullableTags on the Shopify customer.
-
siteIduuid -
smsTransactionalOptInBoolean nullableWhether the customer agreed to transactional SMS.
-
tempSmsTransactionalOptInBoolean nullable -
updatedAttimestamptz
Relationships (12)
-
AuditLogs[AuditLog!]List of related AuditLog records.
-
BackupPaymentMethodPaymentMethodThe related PaymentMethod record.
-
Orders[Order!]List of related Order records.
-
PaymentMethods[PaymentMethod!]List of related PaymentMethod records.
-
RewardCreditHistories[RewardCreditHistory!]List of related RewardCreditHistory records.
-
ShippingAddresses[Address!]List of related Address records.
-
SiteSiteThe related Site record.
-
SkioSmsMessagingHistory[SkioSmsMessagingHistory!]List of related SkioSmsMessagingHistory records.
-
StorefrontUserTiers[StorefrontUserTier!]List of related StorefrontUserTier records.
-
Subscriptions[Subscription!]List of related Subscription records.
-
Tags[TagRelationship!]List of related TagRelationship records.
-
UserUserThe related User record.
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"email": "jane@example.com",
"emailLower": "jane@example.com",
"firstName": "Jane",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/Customer/2522352627",
"qaToken": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"redactedAt": "2025-03-01T17:00:00.000000+00:00",
"removedAt": null,
"shopifyTags": {},
"siteId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"smsTransactionalOptIn": false,
"tempSmsTransactionalOptIn": false,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
The Address object
A customer's shipping address. Subscriptions reference one with shippingAddressId.
Attributes
-
address1String nullable -
address2String nullable -
cityString nullable -
companyString nullable -
countryString nullable -
createdAttimestamptz -
doorCodeString nullableDoor or gate code for delivery.
-
firstNameString nullable -
iduuidSkio ID.
-
lastNameString nullable -
phoneNumberString nullable -
platformIdString nullable -
provinceString nullable -
storefrontUserIduuid -
updatedAttimestamptz -
zipString nullable
Relationships (3)
-
PaymentMethodPaymentMethodThe related PaymentMethod record.
-
StorefrontUserStorefrontUserThe related StorefrontUser record.
-
Subscriptions[Subscription!]List of related Subscription records.
{
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"company": "example",
"country": "US",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"doorCode": "example",
"firstName": "Jane",
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/MailingAddress/1516961236",
"province": "TX",
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00",
"zip": "78701"
}
List customers
StorefrontUsers
Returns customers in your store. Look up a customer by email, or by Shopify customer ID with platformId.
Arguments
-
distinct_on[StorefrontUser_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[StorefrontUser_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereStorefrontUser_bool_expFilter the results. See Filtering & pagination.
Returns
A list of StorefrontUser objects.
query FindCustomer($email: String!) {
StorefrontUsers(where: {email: {_eq: $email}}) {
id
platformId
email
firstName
lastName
Subscriptions {
id
status
}
}
}
{
"email": "jane@example.com"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query FindCustomer( $email: String!) { StorefrontUsers( where: { email: { _eq: $email} } ) { id platformId email firstName lastName Subscriptions{ id status} } }",
"variables": {
"email": "jane@example.com"
}
}'
const query = `
query FindCustomer($email: String!) {
StorefrontUsers(where: {email: {_eq: $email}}) {
id
platformId
email
firstName
lastName
Subscriptions {
id
status
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"email": "jane@example.com"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query FindCustomer($email: String!) {
StorefrontUsers(where: {email: {_eq: $email}}) {
id
platformId
email
firstName
lastName
Subscriptions {
id
status
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"email": "jane@example.com",
}},
)
result = response.json()
{
"data": {
"StorefrontUsers": [
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/Customer/2522352627",
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"Subscriptions": [
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"status": "ACTIVE"
}
]
}
]
}
}
List addresses
Addresses
Returns customer addresses in your store. Each request returns at most 1,000 addresses.
Arguments
-
distinct_on[Address_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[Address_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereAddress_bool_expFilter the results. See Filtering & pagination.
Returns
A list of Address objects.
query ListAddresses($storefrontUserId: uuid!) {
Addresses(where: {storefrontUserId: {_eq: $storefrontUserId}}) {
id
firstName
lastName
address1
address2
city
province
zip
country
}
}
{
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListAddresses( $storefrontUserId: uuid!) { Addresses( where: { storefrontUserId: { _eq: $storefrontUserId} } ) { id firstName lastName address1 address2 city province zip country} }",
"variables": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}'
const query = `
query ListAddresses($storefrontUserId: uuid!) {
Addresses(where: {storefrontUserId: {_eq: $storefrontUserId}}) {
id
firstName
lastName
address1
address2
city
province
zip
country
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListAddresses($storefrontUserId: uuid!) {
Addresses(where: {storefrontUserId: {_eq: $storefrontUserId}}) {
id
firstName
lastName
address1
address2
city
province
zip
country
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"storefrontUserId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
}},
)
result = response.json()
{
"data": {
"Addresses": [
{
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"firstName": "Jane",
"lastName": "Doe",
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"province": "TX",
"zip": "78701",
"country": "US"
}
]
}
}
Retrieve an address
AddressByPk
Returns one address by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Address object, or null if no record matches.
query AddressByPk($id: uuid!) {
AddressByPk(id: $id) {
PaymentMethod {
billingAddressId
brand
createdAt
expiryMonth
expiryYear
id
inactive
instrumentType
lastDigits
paypalAccountEmail
platformId
revokedAt
skioRevoke
storefrontUserId
updatedAt
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
}
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query AddressByPk( $id: uuid!) { AddressByPk( id: $id) { PaymentMethod{ billingAddressId brand createdAt expiryMonth expiryYear id inactive instrumentType lastDigits paypalAccountEmail platformId revokedAt skioRevoke storefrontUserId updatedAt} StorefrontUser{ createdAt email emailLower firstName id lastName phoneNumber platformId qaToken redactedAt removedAt shopifyTags siteId smsTransactionalOptIn tempSmsTransactionalOptIn updatedAt} Subscriptions{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} address1 address2 city company country createdAt doorCode firstName id lastName phoneNumber platformId province storefrontUserId updatedAt zip} }",
"variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
query AddressByPk($id: uuid!) {
AddressByPk(id: $id) {
PaymentMethod {
billingAddressId
brand
createdAt
expiryMonth
expiryYear
id
inactive
instrumentType
lastDigits
paypalAccountEmail
platformId
revokedAt
skioRevoke
storefrontUserId
updatedAt
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query AddressByPk($id: uuid!) {
AddressByPk(id: $id) {
PaymentMethod {
billingAddressId
brand
createdAt
expiryMonth
expiryYear
id
inactive
instrumentType
lastDigits
paypalAccountEmail
platformId
revokedAt
skioRevoke
storefrontUserId
updatedAt
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"AddressByPk": {
"PaymentMethod": {
"billingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"brand": "example",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"expiryMonth": 1,
"expiryYear": 1,
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"inactive": false,
"instrumentType": "example",
"lastDigits": 1,
"paypalAccountEmail": "jane@example.com",
"platformId": "gid://shopify/CustomerPaymentMethod/3044592743",
"revokedAt": "2025-03-01T17:00:00.000000+00:00",
"skioRevoke": false,
"storefrontUserId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"StorefrontUser": {
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"email": "jane@example.com",
"emailLower": "jane@example.com",
"firstName": "Jane",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/Customer/2522352627",
"qaToken": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"redactedAt": "2025-03-01T17:00:00.000000+00:00",
"removedAt": null,
"shopifyTags": {},
"siteId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"smsTransactionalOptIn": false,
"tempSmsTransactionalOptIn": false,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"Subscriptions": [
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"company": "example",
"country": "US",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"doorCode": "example",
"firstName": "Jane",
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/MailingAddress/1516961236",
"province": "TX",
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00",
"zip": "78701"
}
}
}
Get loyalty credit balance
getCustomerCreditBalance
Returns a customer's current loyalty credit balance, with expirations and removals already applied. The balance is also given as a money value in the store's currency and in the customer's currency.
Identify the customer with exactly one of email, platformId or storefrontUserId.
Input input
-
emailStringCustomer email.
-
platformIdStringShopify Customer GID.
-
storefrontUserIdStringSkio customer ID.
Returns
-
creditsFloatCredit balance, in your store's credit units.
-
currencyCodeString -
currencyStringValueStringFormatted customer-currency value.
-
currencyValueFloatBalance as money in the customer's currency.
-
siteCurrencyCodeString -
siteCurrencyStringValueStringFormatted store-currency value, e.g.
$12.50. -
siteCurrencyValueFloatBalance as money in the store currency.
-
storefrontUserIdString
query getCustomerCreditBalance($input: GetCustomerCreditBalanceInput!) {
getCustomerCreditBalance(input: $input) {
credits
currencyCode
currencyStringValue
currencyValue
siteCurrencyCode
siteCurrencyStringValue
siteCurrencyValue
storefrontUserId
}
}
{
"input": {
"email": "jane@example.com"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query getCustomerCreditBalance( $input: GetCustomerCreditBalanceInput!) { getCustomerCreditBalance( input: $input) { credits currencyCode currencyStringValue currencyValue siteCurrencyCode siteCurrencyStringValue siteCurrencyValue storefrontUserId} }",
"variables": {
"input": {
"email": "jane@example.com"
}
}
}'
const query = `
query getCustomerCreditBalance($input: GetCustomerCreditBalanceInput!) {
getCustomerCreditBalance(input: $input) {
credits
currencyCode
currencyStringValue
currencyValue
siteCurrencyCode
siteCurrencyStringValue
siteCurrencyValue
storefrontUserId
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"email": "jane@example.com"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query getCustomerCreditBalance($input: GetCustomerCreditBalanceInput!) {
getCustomerCreditBalance(input: $input) {
credits
currencyCode
currencyStringValue
currencyValue
siteCurrencyCode
siteCurrencyStringValue
siteCurrencyValue
storefrontUserId
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"email": "jane@example.com",
},
}},
)
result = response.json()
{
"data": {
"getCustomerCreditBalance": {
"credits": 1250,
"currencyCode": "USD",
"currencyStringValue": "$12.50",
"currencyValue": 12.5,
"siteCurrencyCode": "USD",
"siteCurrencyStringValue": "$12.50",
"siteCurrencyValue": 12.5,
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
}
Generate a login link
generateMagicLink
Returns a one-click login URL for a customer's Skio customer portal, so a headless storefront (e.g. Hydrogen) can hand over a logged-in session. The link expires after 10 minutes. Skio does not email it; you deliver it yourself.
Input input
-
emailString RequiredCustomer email (case-sensitive exact match).
-
returnToPathStringPortal path to open after login, e.g.
/subscriptions. Must start with a single/.
Returns
-
errorString -
expiresAtStringWhen the link expires (10 minutes).
-
magicLinkUrlStringLogin URL for the customer portal.
-
okBoolean
mutation generateMagicLink($input: GenerateMagicLinkInput!) {
generateMagicLink(input: $input) {
error
expiresAt
magicLinkUrl
ok
}
}
{
"input": {
"email": "jane@example.com",
"returnToPath": "/subscriptions"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation generateMagicLink( $input: GenerateMagicLinkInput!) { generateMagicLink( input: $input) { error expiresAt magicLinkUrl ok} }",
"variables": {
"input": {
"email": "jane@example.com",
"returnToPath": "/subscriptions"
}
}
}'
const query = `
mutation generateMagicLink($input: GenerateMagicLinkInput!) {
generateMagicLink(input: $input) {
error
expiresAt
magicLinkUrl
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"email": "jane@example.com",
"returnToPath": "/subscriptions"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation generateMagicLink($input: GenerateMagicLinkInput!) {
generateMagicLink(input: $input) {
error
expiresAt
magicLinkUrl
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"email": "jane@example.com",
"returnToPath": "/subscriptions",
},
}},
)
result = response.json()
{
"data": {
"generateMagicLink": {
"error": null,
"expiresAt": "2025-03-01T17:10:00.000Z",
"magicLinkUrl": "https://yourstore.com/a/account/magic-login?magicLinkToken=7c9e6679-7425-40de-944b-e07fc1f90ae7",
"ok": true
}
}
}
Generate a Quick Actions token
generateQuickActionToken
Creates a new Quick Actions token for a customer. With it, the customer can skip, pause or ship now from a link without logging in. Every call replaces the existing token, so any Quick Action links you sent earlier stop working.
Arguments
-
storefrontUserIduuid RequiredSkio customer ID.
Returns
-
qaTokenStringThe new Quick Actions token.
mutation generateQuickActionToken($storefrontUserId: uuid!) {
generateQuickActionToken(storefrontUserId: $storefrontUserId) {
qaToken
}
}
{
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation generateQuickActionToken( $storefrontUserId: uuid!) { generateQuickActionToken( storefrontUserId: $storefrontUserId) { qaToken} }",
"variables": {
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
mutation generateQuickActionToken($storefrontUserId: uuid!) {
generateQuickActionToken(storefrontUserId: $storefrontUserId) {
qaToken
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation generateQuickActionToken($storefrontUserId: uuid!) {
generateQuickActionToken(storefrontUserId: $storefrontUserId) {
qaToken
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"generateQuickActionToken": {
"qaToken": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}
}
}
Orders
Shopify orders synced into Skio: checkout orders, recurring orders and the scheduled fulfillment orders created for prepaid subscriptions.
The Order object
A Shopify order synced into Skio.
Attributes
-
appIdString nullable -
cancelledAttimestamptz nullable -
clientIpString nullable -
createdAttimestamptz -
currencyCodeString nullableSet to customer currency code (same currency as presentmentAmount)
-
deletedAttimestamptz nullable -
deliveredAttimestamptz nullable -
firstOrderInPrepaidSequenceBoolean nullable -
fulfillAttimestamptz nullableFor scheduled fulfillment orders, when the order is released for fulfillment.
-
fulfillmentOrderCreditFloat nullable -
iduuidSkio ID.
-
nameString nullableOrder name shown to the customer, e.g.
#1001. -
noteString nullable -
platformIdString nullableShopify Order GID.
-
platformNumberString -
prepaidSubscriptionIduuid nullableFor prepaid fulfillment orders, the prepaid subscription.
-
processedAttimestamptz nullableWhen Shopify processed the order.
-
shippingAddressIduuid nullable -
siteIduuid -
storefrontUserIduuid -
subscriptionIduuid nullableNot populated; always
null. To find a subscription's orders, filter onOrderLineItems.SubscriptionLine.subscriptionId. -
taxExemptBoolean -
taxesIncludedBoolean -
totalPriceFloat nullableOrder total in the store currency.
-
totalPricePresentmentAmountFloat nullableOrder total in the customer's currency.
-
updatedAttimestamp
Relationships (10)
-
OrderDiscountApplications[OrderDiscountApplication!]List of related OrderDiscountApplication records.
-
OrderLineItems[OrderLineItem!]List of related OrderLineItem records.
-
OriginSubscriptions[Subscription!]List of related Subscription records.
-
PrepaidSubscriptionSubscriptionThe related Subscription record.
-
ShippingAddressAddressThe related Address record.
-
ShippingLines[ShippingLine!]List of related ShippingLine records.
-
SiteSiteThe related Site record.
-
StorefrontUserStorefrontUserThe related StorefrontUser record.
-
SubscriptionSubscriptionThe related Subscription record.
-
Tags[TagRelationship!]List of related TagRelationship records.
{
"appId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"cancelledAt": null,
"clientIp": "example",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"deletedAt": null,
"deliveredAt": "2025-03-01T17:00:00.000000+00:00",
"firstOrderInPrepaidSequence": false,
"fulfillAt": "2025-03-01T17:00:00.000000+00:00",
"fulfillmentOrderCredit": 1,
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"note": "Leave at the front door",
"platformId": "gid://shopify/Order/1076453678",
"platformNumber": "1042",
"prepaidSubscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"processedAt": "2025-03-01T17:00:00.000000+00:00",
"shippingAddressId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"siteId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"storefrontUserId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionId": null,
"taxExempt": false,
"taxesIncluded": false,
"totalPrice": 29.99,
"totalPricePresentmentAmount": 29.99,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
The OrderLineItem object
A line item on an order.
Attributes
-
attributionGroupIduuid nullable -
createdAttimestamptz -
currencyCodeString nullable -
customAttributesjsonb nullable -
groupIduuid nullable -
iduuid -
orderIduuid -
platformIdString nullable -
pricePresentmentAmountnumeric nullablePrice in the customer's currency.
-
pricePresentmentCurrencyCodeString nullable -
priceWithoutDiscountnumericPrice per unit before discounts.
-
productVariantIduuid -
quantityInt -
subscriptionLineIduuid nullableThe subscription line that produced this item.
-
updatedAttimestamptz
Relationships (5)
-
Discounts[Discount!]List of related Discount records.
-
OrderOrderThe related Order record.
-
ProductVariantProductVariantThe related ProductVariant record.
-
SubscriptionLineSubscriptionLineThe related SubscriptionLine record.
-
TaxLines[TaxLine!]List of related TaxLine records.
{
"attributionGroupId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/LineItem/1486378891",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"productVariantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"quantity": 2,
"subscriptionLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
List orders
Orders
Returns orders in your store, including checkout orders, recurring orders and prepaid fulfillment orders.
Arguments
-
distinct_on[Order_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[Order_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereOrder_bool_expFilter the results. See Filtering & pagination.
Returns
A list of Order objects.
query ListSubscriptionOrders($subscriptionId: uuid!) {
Orders(
where: {OrderLineItems: {SubscriptionLine: {subscriptionId: {_eq: $subscriptionId}}}}
order_by: {createdAt: desc}
limit: 5
) {
id
platformId
name
totalPrice
currencyCode
processedAt
OrderLineItems {
quantity
priceWithoutDiscount
}
}
}
{
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListSubscriptionOrders( $subscriptionId: uuid!) { Orders( where: { OrderLineItems: { SubscriptionLine: { subscriptionId: { _eq: $subscriptionId} } } } order_by: { createdAt: desc} limit: 5) { id platformId name totalPrice currencyCode processedAt OrderLineItems{ quantity priceWithoutDiscount} } }",
"variables": {
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}'
const query = `
query ListSubscriptionOrders($subscriptionId: uuid!) {
Orders(
where: {OrderLineItems: {SubscriptionLine: {subscriptionId: {_eq: $subscriptionId}}}}
order_by: {createdAt: desc}
limit: 5
) {
id
platformId
name
totalPrice
currencyCode
processedAt
OrderLineItems {
quantity
priceWithoutDiscount
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListSubscriptionOrders($subscriptionId: uuid!) {
Orders(
where: {OrderLineItems: {SubscriptionLine: {subscriptionId: {_eq: $subscriptionId}}}}
order_by: {createdAt: desc}
limit: 5
) {
id
platformId
name
totalPrice
currencyCode
processedAt
OrderLineItems {
quantity
priceWithoutDiscount
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
}},
)
result = response.json()
{
"data": {
"Orders": [
{
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/Order/1076453678",
"name": "#1042",
"totalPrice": 29.99,
"currencyCode": "USD",
"processedAt": "2025-03-01T17:00:00.000000+00:00",
"OrderLineItems": [
{
"quantity": 2,
"priceWithoutDiscount": 29.99
}
]
}
]
}
}
Retrieve an order
OrderByPk
Returns one order by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Order object, or null if no record matches.
query OrderByPk($id: uuid!) {
OrderByPk(id: $id) {
OrderDiscountApplications {
allocationMethod
code
created_at
currencyCode
fixedValue
id
index
orderId
percentage
targetSelection
targetType
title
type
updated_at
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
OriginSubscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
PrepaidSubscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
ShippingAddress {
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
ShippingLines {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
appId
cancelledAt
clientIp
createdAt
currencyCode
deletedAt
deliveredAt
firstOrderInPrepaidSequence
fulfillAt
fulfillmentOrderCredit
id
name
note
platformId
platformNumber
prepaidSubscriptionId
processedAt
shippingAddressId
siteId
storefrontUserId
subscriptionId
taxExempt
taxesIncluded
totalPrice
totalPricePresentmentAmount
updatedAt
}
}
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query OrderByPk( $id: uuid!) { OrderByPk( id: $id) { OrderDiscountApplications{ allocationMethod code created_at currencyCode fixedValue id index orderId percentage targetSelection targetType title type updated_at} OrderLineItems{ attributionGroupId createdAt currencyCode customAttributes groupId id orderId platformId pricePresentmentAmount pricePresentmentCurrencyCode priceWithoutDiscount productVariantId quantity subscriptionLineId updatedAt} OriginSubscriptions{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} PrepaidSubscription{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} ShippingAddress{ address1 address2 city company country createdAt doorCode firstName id lastName phoneNumber platformId province storefrontUserId updatedAt zip} ShippingLines{ createdAt id orderId platformId pricePresentmentAmount pricePresentmentCurrencyCode priceWithoutDiscount title updatedAt} Site{ appProxyPathPrefix currencyCode ianaTimezone id qaAuthSettings} StorefrontUser{ createdAt email emailLower firstName id lastName phoneNumber platformId qaToken redactedAt removedAt shopifyTags siteId smsTransactionalOptIn tempSmsTransactionalOptIn updatedAt} Subscription{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} Tags{ createdAt id orderId productId storefrontUserId tagId updatedAt} appId cancelledAt clientIp createdAt currencyCode deletedAt deliveredAt firstOrderInPrepaidSequence fulfillAt fulfillmentOrderCredit id name note platformId platformNumber prepaidSubscriptionId processedAt shippingAddressId siteId storefrontUserId subscriptionId taxExempt taxesIncluded totalPrice totalPricePresentmentAmount updatedAt} }",
"variables": {
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}'
const query = `
query OrderByPk($id: uuid!) {
OrderByPk(id: $id) {
OrderDiscountApplications {
allocationMethod
code
created_at
currencyCode
fixedValue
id
index
orderId
percentage
targetSelection
targetType
title
type
updated_at
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
OriginSubscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
PrepaidSubscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
ShippingAddress {
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
ShippingLines {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
appId
cancelledAt
clientIp
createdAt
currencyCode
deletedAt
deliveredAt
firstOrderInPrepaidSequence
fulfillAt
fulfillmentOrderCredit
id
name
note
platformId
platformNumber
prepaidSubscriptionId
processedAt
shippingAddressId
siteId
storefrontUserId
subscriptionId
taxExempt
taxesIncluded
totalPrice
totalPricePresentmentAmount
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query OrderByPk($id: uuid!) {
OrderByPk(id: $id) {
OrderDiscountApplications {
allocationMethod
code
created_at
currencyCode
fixedValue
id
index
orderId
percentage
targetSelection
targetType
title
type
updated_at
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
OriginSubscriptions {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
PrepaidSubscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
ShippingAddress {
address1
address2
city
company
country
createdAt
doorCode
firstName
id
lastName
phoneNumber
platformId
province
storefrontUserId
updatedAt
zip
}
ShippingLines {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
StorefrontUser {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
appId
cancelledAt
clientIp
createdAt
currencyCode
deletedAt
deliveredAt
firstOrderInPrepaidSequence
fulfillAt
fulfillmentOrderCredit
id
name
note
platformId
platformNumber
prepaidSubscriptionId
processedAt
shippingAddressId
siteId
storefrontUserId
subscriptionId
taxExempt
taxesIncluded
totalPrice
totalPricePresentmentAmount
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
}},
)
result = response.json()
{
"data": {
"OrderByPk": {
"OrderDiscountApplications": [
{
"allocationMethod": "example",
"code": "WELCOME10",
"created_at": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"fixedValue": 29.99,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"index": 1,
"orderId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"percentage": 1,
"targetSelection": "example",
"targetType": "example",
"title": "Morning Blend Coffee",
"type": "example",
"updated_at": "2025-03-01T17:00:00.000000+00:00"
}
],
"OrderLineItems": [
{
"attributionGroupId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/LineItem/1486378891",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"productVariantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"quantity": 2,
"subscriptionLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"OriginSubscriptions": [
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"PrepaidSubscription": {
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"ShippingAddress": {
"address1": "123 Main St",
"address2": "Apt 4",
"city": "Austin",
"company": "example",
"country": "US",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"doorCode": "example",
"firstName": "Jane",
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/MailingAddress/1516961236",
"province": "TX",
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00",
"zip": "78701"
},
"ShippingLines": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/ShippingLine/1234369310",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"Site": {
"appProxyPathPrefix": "example",
"currencyCode": "USD",
"ianaTimezone": "America/Chicago",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"qaAuthSettings": {}
},
"StorefrontUser": {
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"email": "jane@example.com",
"emailLower": "jane@example.com",
"firstName": "Jane",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/Customer/2522352627",
"qaToken": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"redactedAt": "2025-03-01T17:00:00.000000+00:00",
"removedAt": null,
"shopifyTags": {},
"siteId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"smsTransactionalOptIn": false,
"tempSmsTransactionalOptIn": false,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"Subscription": {
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"Tags": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"productId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"storefrontUserId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"tagId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"appId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"cancelledAt": null,
"clientIp": "example",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"deletedAt": null,
"deliveredAt": "2025-03-01T17:00:00.000000+00:00",
"firstOrderInPrepaidSequence": false,
"fulfillAt": "2025-03-01T17:00:00.000000+00:00",
"fulfillmentOrderCredit": 1,
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"note": "Leave at the front door",
"platformId": "gid://shopify/Order/1076453678",
"platformNumber": "1042",
"prepaidSubscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"processedAt": "2025-03-01T17:00:00.000000+00:00",
"shippingAddressId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"siteId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"storefrontUserId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"subscriptionId": null,
"taxExempt": false,
"taxesIncluded": false,
"totalPrice": 29.99,
"totalPricePresentmentAmount": 29.99,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
List order line items
OrderLineItems
Returns order line items in your store. subscriptionLineId links an item to the subscription line that produced it.
Arguments
-
distinct_on[OrderLineItem_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[OrderLineItem_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereOrderLineItem_bool_expFilter the results. See Filtering & pagination.
Returns
A list of OrderLineItem objects.
query ListOrderLineItems($orderId: uuid!) {
OrderLineItems(where: {orderId: {_eq: $orderId}}) {
id
quantity
priceWithoutDiscount
subscriptionLineId
ProductVariant {
title
sku
}
}
}
{
"orderId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListOrderLineItems( $orderId: uuid!) { OrderLineItems( where: { orderId: { _eq: $orderId} } ) { id quantity priceWithoutDiscount subscriptionLineId ProductVariant{ title sku} } }",
"variables": {
"orderId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}'
const query = `
query ListOrderLineItems($orderId: uuid!) {
OrderLineItems(where: {orderId: {_eq: $orderId}}) {
id
quantity
priceWithoutDiscount
subscriptionLineId
ProductVariant {
title
sku
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"orderId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListOrderLineItems($orderId: uuid!) {
OrderLineItems(where: {orderId: {_eq: $orderId}}) {
id
quantity
priceWithoutDiscount
subscriptionLineId
ProductVariant {
title
sku
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"orderId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
}},
)
result = response.json()
{
"data": {
"OrderLineItems": [
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"quantity": 2,
"priceWithoutDiscount": 29.99,
"subscriptionLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"ProductVariant": {
"title": "Morning Blend Coffee",
"sku": "COFFEE-12OZ"
}
}
]
}
}
Products & selling plans
Skio's copy of your Shopify catalog. A variant can only be bought as a subscription once it belongs to a selling plan group.
The Product object
Skio's copy of a Shopify product.
Attributes
-
canUpsellBoolean nullable -
createdAttimestamptz -
deletedAttimestamptz nullableWhen the product was deleted in Shopify.
-
descriptionString nullable -
hideOn1TimeUpsellsBoolean nullable -
iduuid -
imageSrcString nullable -
imagesjsonb nullable -
isDigitalOverrideBoolean nullable -
limitOneTimeUpsellQuantityBoolean nullable -
metafieldsjsonb nullable -
oneTimeUpsellPercentageOffnumeric nullable -
platformIdStringShopify Product GID.
-
shopifyTagsjsonb nullable -
siteIduuid -
slugString -
smsOrderInt nullable -
statusString nullable -
titleString -
updatedAttimestamptz
Relationships (4)
-
DynamicBoxDynamicBoxThe related DynamicBox record.
-
ProductVariants[ProductVariant!]List of related ProductVariant records.
-
SiteSiteThe related Site record.
-
Tags[TagRelationship!]List of related TagRelationship records.
{
"canUpsell": false,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"description": "example",
"hideOn1TimeUpsells": false,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"imageSrc": "example",
"images": {},
"isDigitalOverride": false,
"limitOneTimeUpsellQuantity": false,
"metafields": {},
"oneTimeUpsellPercentageOff": 1,
"platformId": "gid://shopify/Product/2355179215",
"shopifyTags": {},
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"slug": "example",
"smsOrder": 1,
"status": "ACTIVE",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
The ProductVariant object
Skio's copy of a Shopify product variant. Mutations that take a variantId or productVariantId expect this object's id, not the Shopify GID.
Attributes
-
compareAtPricenumeric nullable -
createdAttimestamptz -
deletedAttimestamptz nullableWhen the variant was deleted in Shopify.
-
iduuidSkio ID. Use this in subscription line mutations.
-
imageString nullable -
marketPricesjsonb nullablePrices for each Shopify Market.
-
outOfStockAttimestamptz nullableWhen the variant went out of stock.
nullmeans it is in stock. -
platformIdStringShopify ProductVariant GID.
-
positionInt nullable -
pricenumericPrice in the store currency.
-
productIduuid -
requiresShippingBoolean nullable -
skuString nullable -
titleString -
updatedAttimestamptz
Relationships (6)
-
DynamicBox_SelectableProductVariants[DynamicBox_SelectableProductVariant!]List of related DynamicBox_SelectableProductVariant records.
-
OrderLineItems[OrderLineItem!]List of related OrderLineItem records.
-
ProductProductThe related Product record.
-
ProductVariantsCreditRedemptionConfigs[ProductVariantsCreditRedemptionConfigs!]List of related ProductVariantsCreditRedemptionConfigs records.
-
SellingPlanGroupResources[SellingPlanGroupResource!]List of related SellingPlanGroupResource records.
-
SubscriptionLines[SubscriptionLine!]List of related SubscriptionLine records.
{
"compareAtPrice": 29.99,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"image": "example",
"marketPrices": {},
"outOfStockAt": null,
"platformId": "gid://shopify/ProductVariant/1899019594",
"position": 1,
"price": 29.99,
"productId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"requiresShipping": false,
"sku": "COFFEE-12OZ",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
List products
Products
Returns products in your store. Deleted products have deletedAt set.
Arguments
-
distinct_on[Product_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[Product_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereProduct_bool_expFilter the results. See Filtering & pagination.
Returns
A list of Product objects.
query ListProducts {
Products(where: {deletedAt: {_is_null: true}}, limit: 20) {
id
platformId
title
status
ProductVariants(where: {deletedAt: {_is_null: true}}) {
id
title
sku
price
}
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListProducts{ Products( where: { deletedAt: { _is_null: true} } , limit: 20) { id platformId title status ProductVariants( where: { deletedAt: { _is_null: true} } ) { id title sku price} } }"
}'
const query = `
query ListProducts {
Products(where: {deletedAt: {_is_null: true}}, limit: 20) {
id
platformId
title
status
ProductVariants(where: {deletedAt: {_is_null: true}}) {
id
title
sku
price
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListProducts {
Products(where: {deletedAt: {_is_null: true}}, limit: 20) {
id
platformId
title
status
ProductVariants(where: {deletedAt: {_is_null: true}}) {
id
title
sku
price
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query},
)
result = response.json()
{
"data": {
"Products": [
{
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"platformId": "gid://shopify/Product/2355179215",
"title": "Morning Blend Coffee",
"status": "ACTIVE",
"ProductVariants": [
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"title": "Morning Blend Coffee",
"sku": "COFFEE-12OZ",
"price": 29.99
}
]
}
]
}
}
Retrieve a product
ProductByPk
Returns one product by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Product object, or null if no record matches.
query ProductByPk($id: uuid!) {
ProductByPk(id: $id) {
DynamicBox {
fixedDiscount
id
percentDiscount
sizeInterval
sizeRange
}
ProductVariants {
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
}
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ProductByPk( $id: uuid!) { ProductByPk( id: $id) { DynamicBox{ fixedDiscount id percentDiscount sizeInterval sizeRange} ProductVariants{ compareAtPrice createdAt deletedAt id image marketPrices outOfStockAt platformId position price productId requiresShipping sku title updatedAt} Site{ appProxyPathPrefix currencyCode ianaTimezone id qaAuthSettings} Tags{ createdAt id orderId productId storefrontUserId tagId updatedAt} canUpsell createdAt deletedAt description hideOn1TimeUpsells id imageSrc images isDigitalOverride limitOneTimeUpsellQuantity metafields oneTimeUpsellPercentageOff platformId shopifyTags siteId slug smsOrder status title updatedAt} }",
"variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
query ProductByPk($id: uuid!) {
ProductByPk(id: $id) {
DynamicBox {
fixedDiscount
id
percentDiscount
sizeInterval
sizeRange
}
ProductVariants {
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ProductByPk($id: uuid!) {
ProductByPk(id: $id) {
DynamicBox {
fixedDiscount
id
percentDiscount
sizeInterval
sizeRange
}
ProductVariants {
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
Site {
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
Tags {
createdAt
id
orderId
productId
storefrontUserId
tagId
updatedAt
}
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"ProductByPk": {
"DynamicBox": {
"fixedDiscount": {},
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"percentDiscount": {},
"sizeInterval": {},
"sizeRange": {}
},
"ProductVariants": [
{
"compareAtPrice": 29.99,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"image": "example",
"marketPrices": {},
"outOfStockAt": null,
"platformId": "gid://shopify/ProductVariant/1899019594",
"position": 1,
"price": 29.99,
"productId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"requiresShipping": false,
"sku": "COFFEE-12OZ",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"Site": {
"appProxyPathPrefix": "example",
"currencyCode": "USD",
"ianaTimezone": "America/Chicago",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"qaAuthSettings": {}
},
"Tags": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"productId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"storefrontUserId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"tagId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"canUpsell": false,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"description": "example",
"hideOn1TimeUpsells": false,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"imageSrc": "example",
"images": {},
"isDigitalOverride": false,
"limitOneTimeUpsellQuantity": false,
"metafields": {},
"oneTimeUpsellPercentageOff": 1,
"platformId": "gid://shopify/Product/2355179215",
"shopifyTags": {},
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"slug": "example",
"smsOrder": 1,
"status": "ACTIVE",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
List product variants
ProductVariants
Returns product variants in your store. Use this to find a variant's Skio ID from its SKU or Shopify ID before adding it to a subscription.
Arguments
-
distinct_on[ProductVariant_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[ProductVariant_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
whereProductVariant_bool_expFilter the results. See Filtering & pagination.
Returns
A list of ProductVariant objects.
query FindVariant($sku: String!) {
ProductVariants(where: {sku: {_eq: $sku}}) {
id
platformId
title
sku
price
outOfStockAt
Product {
title
}
}
}
{
"sku": "COFFEE-12OZ"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query FindVariant( $sku: String!) { ProductVariants( where: { sku: { _eq: $sku} } ) { id platformId title sku price outOfStockAt Product{ title} } }",
"variables": {
"sku": "COFFEE-12OZ"
}
}'
const query = `
query FindVariant($sku: String!) {
ProductVariants(where: {sku: {_eq: $sku}}) {
id
platformId
title
sku
price
outOfStockAt
Product {
title
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"sku": "COFFEE-12OZ"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query FindVariant($sku: String!) {
ProductVariants(where: {sku: {_eq: $sku}}) {
id
platformId
title
sku
price
outOfStockAt
Product {
title
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"sku": "COFFEE-12OZ",
}},
)
result = response.json()
{
"data": {
"ProductVariants": [
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"platformId": "gid://shopify/ProductVariant/1899019594",
"title": "Morning Blend Coffee",
"sku": "COFFEE-12OZ",
"price": 29.99,
"outOfStockAt": null,
"Product": {
"title": "Morning Blend Coffee"
}
}
]
}
}
Retrieve a product variant
ProductVariantByPk
Returns one product variant by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single ProductVariant object, or null if no record matches.
query ProductVariantByPk($id: uuid!) {
ProductVariantByPk(id: $id) {
DynamicBox_SelectableProductVariants {
deletedAt
dynamicBoxId
productVariantId
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
Product {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
ProductVariantsCreditRedemptionConfigs {
createdAt
credits
enabled
id
productVariantId
removedAt
tierLevelId
updatedAt
}
SellingPlanGroupResources {
createdAt
id
productVariantId
sellingPlanGroupId
updatedAt
}
SubscriptionLines {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
}
{
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ProductVariantByPk( $id: uuid!) { ProductVariantByPk( id: $id) { DynamicBox_SelectableProductVariants{ deletedAt dynamicBoxId productVariantId} OrderLineItems{ attributionGroupId createdAt currencyCode customAttributes groupId id orderId platformId pricePresentmentAmount pricePresentmentCurrencyCode priceWithoutDiscount productVariantId quantity subscriptionLineId updatedAt} Product{ canUpsell createdAt deletedAt description hideOn1TimeUpsells id imageSrc images isDigitalOverride limitOneTimeUpsellQuantity metafields oneTimeUpsellPercentageOff platformId shopifyTags siteId slug smsOrder status title updatedAt} ProductVariantsCreditRedemptionConfigs{ createdAt credits enabled id productVariantId removedAt tierLevelId updatedAt} SellingPlanGroupResources{ createdAt id productVariantId sellingPlanGroupId updatedAt} SubscriptionLines{ createdAt customAttributes groupId id isPrepaid ordersRemaining platformId prepaidSubscriptionId priceWithoutDiscount productVariantId quantity reChargeId removedAt sellingPlanId subscriptionId taxable titleOverride updatedAt} compareAtPrice createdAt deletedAt id image marketPrices outOfStockAt platformId position price productId requiresShipping sku title updatedAt} }",
"variables": {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}'
const query = `
query ProductVariantByPk($id: uuid!) {
ProductVariantByPk(id: $id) {
DynamicBox_SelectableProductVariants {
deletedAt
dynamicBoxId
productVariantId
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
Product {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
ProductVariantsCreditRedemptionConfigs {
createdAt
credits
enabled
id
productVariantId
removedAt
tierLevelId
updatedAt
}
SellingPlanGroupResources {
createdAt
id
productVariantId
sellingPlanGroupId
updatedAt
}
SubscriptionLines {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ProductVariantByPk($id: uuid!) {
ProductVariantByPk(id: $id) {
DynamicBox_SelectableProductVariants {
deletedAt
dynamicBoxId
productVariantId
}
OrderLineItems {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
Product {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
ProductVariantsCreditRedemptionConfigs {
createdAt
credits
enabled
id
productVariantId
removedAt
tierLevelId
updatedAt
}
SellingPlanGroupResources {
createdAt
id
productVariantId
sellingPlanGroupId
updatedAt
}
SubscriptionLines {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
compareAtPrice
createdAt
deletedAt
id
image
marketPrices
outOfStockAt
platformId
position
price
productId
requiresShipping
sku
title
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
}},
)
result = response.json()
{
"data": {
"ProductVariantByPk": {
"DynamicBox_SelectableProductVariants": [
{
"deletedAt": null,
"dynamicBoxId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
],
"OrderLineItems": [
{
"attributionGroupId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/LineItem/1486378891",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"productVariantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"quantity": 2,
"subscriptionLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"Product": {
"canUpsell": false,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"description": "example",
"hideOn1TimeUpsells": false,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"imageSrc": "example",
"images": {},
"isDigitalOverride": false,
"limitOneTimeUpsellQuantity": false,
"metafields": {},
"oneTimeUpsellPercentageOff": 1,
"platformId": "gid://shopify/Product/2355179215",
"shopifyTags": {},
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"slug": "example",
"smsOrder": 1,
"status": "ACTIVE",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"ProductVariantsCreditRedemptionConfigs": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"credits": 29.99,
"enabled": false,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"removedAt": null,
"tierLevelId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SellingPlanGroupResources": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"sellingPlanGroupId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SubscriptionLines": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"isPrepaid": false,
"ordersRemaining": 42,
"platformId": "gid://shopify/SubscriptionLine/2358763311",
"prepaidSubscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"priceWithoutDiscount": 29.99,
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"quantity": 2,
"reChargeId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"removedAt": null,
"sellingPlanId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"taxable": false,
"titleOverride": null,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"compareAtPrice": 29.99,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"image": "example",
"marketPrices": {},
"outOfStockAt": null,
"platformId": "gid://shopify/ProductVariant/1899019594",
"position": 1,
"price": 29.99,
"productId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"requiresShipping": false,
"sku": "COFFEE-12OZ",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
Add a variant to a selling plan group
addProductVariantToSellingPlanGroup
Adds a product variant to a selling plan group on Shopify and in Skio, so customers can buy it as a subscription. If the variant is already in the group, nothing changes.
If the Shopify update fails, the response is ok: false (HTTP 200) instead of an error.
Input input
-
productVariantIduuid RequiredSkio ProductVariant ID.
-
sellingPlanGroupIduuid RequiredSkio SellingPlanGroup ID.
Returns
-
okBoolean
mutation addProductVariantToSellingPlanGroup($input: addProductVariantToSellingPlanGroupInput!) {
addProductVariantToSellingPlanGroup(input: $input) {
ok
}
}
{
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation addProductVariantToSellingPlanGroup( $input: addProductVariantToSellingPlanGroupInput!) { addProductVariantToSellingPlanGroup( input: $input) { ok} }",
"variables": {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
}'
const query = `
mutation addProductVariantToSellingPlanGroup($input: addProductVariantToSellingPlanGroupInput!) {
addProductVariantToSellingPlanGroup(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation addProductVariantToSellingPlanGroup($input: addProductVariantToSellingPlanGroupInput!) {
addProductVariantToSellingPlanGroup(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
},
}},
)
result = response.json()
{
"data": {
"addProductVariantToSellingPlanGroup": {
"ok": true
}
}
}
Remove a variant from a selling plan group
removeProductVariantFromSellingPlanGroup
Removes a product variant from a selling plan group on Shopify and in Skio. Existing subscriptions keep the variant.
If the Shopify update fails, the response is ok: false (HTTP 200) instead of an error.
Input input
-
productVariantIduuid RequiredSkio ProductVariant ID.
-
sellingPlanGroupIduuid RequiredSkio SellingPlanGroup ID.
Returns
-
okBoolean
mutation removeProductVariantFromSellingPlanGroup($input: removeProductVariantFromSellingPlanGroupInput!) {
removeProductVariantFromSellingPlanGroup(input: $input) {
ok
}
}
{
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation removeProductVariantFromSellingPlanGroup( $input: removeProductVariantFromSellingPlanGroupInput!) { removeProductVariantFromSellingPlanGroup( input: $input) { ok} }",
"variables": {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}
}'
const query = `
mutation removeProductVariantFromSellingPlanGroup($input: removeProductVariantFromSellingPlanGroupInput!) {
removeProductVariantFromSellingPlanGroup(input: $input) {
ok
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation removeProductVariantFromSellingPlanGroup($input: removeProductVariantFromSellingPlanGroupInput!) {
removeProductVariantFromSellingPlanGroup(input: $input) {
ok
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"productVariantId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"sellingPlanGroupId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
},
}},
)
result = response.json()
{
"data": {
"removeProductVariantFromSellingPlanGroup": {
"ok": true
}
}
}
Discounts & policies
Discounts applied to subscriptions and orders, billing and delivery cadence (policies), and selling plan pricing (pricing policies).
The Discount object
A discount on a subscription, subscription line, order line or shipping line.
Attributes
-
allocationPresentmentAmountnumeric nullable -
allocationPresentmentCurrencyCodeString nullable -
appliesOnEachItemBoolean nullableIf true, then the discount is applied to each of the entitled items. If false, then the amount is split across all of the entitled items.
-
cancelFlowSessionIduuid nullable -
createdAttimestamptz -
fixedValuenumeric nullableAmount off, if this is a fixed discount.
-
iduuid -
maxTimesUsedInt nullableHow many orders the discount applies to.
nullmeans unlimited. -
orderLineItemIduuid nullable -
percentagenumeric nullablePercentage off, if this is a percentage discount.
-
platformIdString nullable -
redeemCodeString nullableThe discount code.
-
shippingLineIduuid nullable -
subscriptionIduuid nullable -
subscriptionLineIduuid nullable -
timesUsedInt nullableHow many orders it has applied to so far.
-
titleString nullable -
typeString nullable -
updatedAttimestamptz
Relationships (5)
-
CancelFlowSessionCancelFlowSessionThe related CancelFlowSession record.
-
OrderLineItemOrderLineItemThe related OrderLineItem record.
-
ShippingLineShippingLineThe related ShippingLine record.
-
SubscriptionSubscriptionThe related Subscription record.
-
SubscriptionLineSubscriptionLineThe related SubscriptionLine record.
{
"allocationPresentmentAmount": 29.99,
"allocationPresentmentCurrencyCode": "USD",
"appliesOnEachItem": false,
"cancelFlowSessionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"fixedValue": 29.99,
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"maxTimesUsed": 1,
"orderLineItemId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"percentage": 1,
"platformId": "gid://shopify/Discount/1337828193",
"redeemCode": "WELCOME10",
"shippingLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"subscriptionLineId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"timesUsed": 1,
"title": "Morning Blend Coffee",
"type": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
The Policy object
A billing or delivery cadence.
Attributes
-
createdAttimestamptz -
iduuid -
intervalStringOne of
DAY,WEEK,MONTHorYEAR. -
intervalCountIntNumber of intervals between orders.
2withWEEKmeans every 2 weeks. -
isMaxCycleV2Boolean nullable -
maxCyclesInt nullableNumber of orders after which the subscription ends.
-
minCyclesInt nullableMinimum number of orders before the customer can cancel.
-
updatedAttimestamptz
Relationships (7)
-
Anchors[Anchor!]List of related Anchor records.
-
SellingPlansByBillingPolicy[SellingPlan!]List of related SellingPlan records.
-
SellingPlansByDeliveryPolicy[SellingPlan!]List of related SellingPlan records.
-
SellingPlansByPrepaidDeliveryPolicy[SellingPlan!]List of related SellingPlan records.
-
SubscriptionsByBillingPolicy[Subscription!]List of related Subscription records.
-
SubscriptionsByDeliveryPolicy[Subscription!]List of related Subscription records.
-
SubscriptionsByPrepaidDeliveryPolicy[Subscription!]List of related Subscription records.
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"interval": "MONTH",
"intervalCount": 1,
"isMaxCycleV2": false,
"maxCycles": 1,
"minCycles": 1,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
The PricingPolicy object
The price adjustment a selling plan applies.
Attributes
-
afterCycleInt nullableThe adjustment applies starting after this many cycles. Use this for tiered pricing.
-
createdAttimestamptz -
fixedPricenumeric nullable -
iduuid -
percentageOffnumeric nullable -
sellingPlanIduuid -
sellingPlanPricingPolicyAdjustmentTypeString nullableHow the price is adjusted: percentage off, fixed amount off, or a fixed price.
-
updatedAttimestamptz
Relationships (1)
-
SellingPlanSellingPlanThe related SellingPlan record.
{
"afterCycle": 1,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"fixedPrice": 29.99,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"percentageOff": 1,
"sellingPlanId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"sellingPlanPricingPolicyAdjustmentType": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
Retrieve a discount
DiscountByPk
Returns one discount by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Discount object, or null if no record matches.
query DiscountByPk($id: uuid!) {
DiscountByPk(id: $id) {
CancelFlowSession {
cancelFlowId
createdAt
id
status
subscriptionId
updatedAt
}
OrderLineItem {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
ShippingLine {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionLine {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
allocationPresentmentAmount
allocationPresentmentCurrencyCode
appliesOnEachItem
cancelFlowSessionId
createdAt
fixedValue
id
maxTimesUsed
orderLineItemId
percentage
platformId
redeemCode
shippingLineId
subscriptionId
subscriptionLineId
timesUsed
title
type
updatedAt
}
}
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query DiscountByPk( $id: uuid!) { DiscountByPk( id: $id) { CancelFlowSession{ cancelFlowId createdAt id status subscriptionId updatedAt} OrderLineItem{ attributionGroupId createdAt currencyCode customAttributes groupId id orderId platformId pricePresentmentAmount pricePresentmentCurrencyCode priceWithoutDiscount productVariantId quantity subscriptionLineId updatedAt} ShippingLine{ createdAt id orderId platformId pricePresentmentAmount pricePresentmentCurrencyCode priceWithoutDiscount title updatedAt} Subscription{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} SubscriptionLine{ createdAt customAttributes groupId id isPrepaid ordersRemaining platformId prepaidSubscriptionId priceWithoutDiscount productVariantId quantity reChargeId removedAt sellingPlanId subscriptionId taxable titleOverride updatedAt} allocationPresentmentAmount allocationPresentmentCurrencyCode appliesOnEachItem cancelFlowSessionId createdAt fixedValue id maxTimesUsed orderLineItemId percentage platformId redeemCode shippingLineId subscriptionId subscriptionLineId timesUsed title type updatedAt} }",
"variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
query DiscountByPk($id: uuid!) {
DiscountByPk(id: $id) {
CancelFlowSession {
cancelFlowId
createdAt
id
status
subscriptionId
updatedAt
}
OrderLineItem {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
ShippingLine {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionLine {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
allocationPresentmentAmount
allocationPresentmentCurrencyCode
appliesOnEachItem
cancelFlowSessionId
createdAt
fixedValue
id
maxTimesUsed
orderLineItemId
percentage
platformId
redeemCode
shippingLineId
subscriptionId
subscriptionLineId
timesUsed
title
type
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query DiscountByPk($id: uuid!) {
DiscountByPk(id: $id) {
CancelFlowSession {
cancelFlowId
createdAt
id
status
subscriptionId
updatedAt
}
OrderLineItem {
attributionGroupId
createdAt
currencyCode
customAttributes
groupId
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
productVariantId
quantity
subscriptionLineId
updatedAt
}
ShippingLine {
createdAt
id
orderId
platformId
pricePresentmentAmount
pricePresentmentCurrencyCode
priceWithoutDiscount
title
updatedAt
}
Subscription {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionLine {
createdAt
customAttributes
groupId
id
isPrepaid
ordersRemaining
platformId
prepaidSubscriptionId
priceWithoutDiscount
productVariantId
quantity
reChargeId
removedAt
sellingPlanId
subscriptionId
taxable
titleOverride
updatedAt
}
allocationPresentmentAmount
allocationPresentmentCurrencyCode
appliesOnEachItem
cancelFlowSessionId
createdAt
fixedValue
id
maxTimesUsed
orderLineItemId
percentage
platformId
redeemCode
shippingLineId
subscriptionId
subscriptionLineId
timesUsed
title
type
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"DiscountByPk": {
"CancelFlowSession": {
"cancelFlowId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"subscriptionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"OrderLineItem": {
"attributionGroupId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/LineItem/1486378891",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"productVariantId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"quantity": 2,
"subscriptionLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"ShippingLine": {
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"orderId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"platformId": "gid://shopify/ShippingLine/1234369310",
"pricePresentmentAmount": 29.99,
"pricePresentmentCurrencyCode": "USD",
"priceWithoutDiscount": 29.99,
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"Subscription": {
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"SubscriptionLine": {
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"groupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"isPrepaid": false,
"ordersRemaining": 42,
"platformId": "gid://shopify/SubscriptionLine/2358763311",
"prepaidSubscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"priceWithoutDiscount": 29.99,
"productVariantId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"quantity": 2,
"reChargeId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"removedAt": null,
"sellingPlanId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"taxable": false,
"titleOverride": null,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"allocationPresentmentAmount": 29.99,
"allocationPresentmentCurrencyCode": "USD",
"appliesOnEachItem": false,
"cancelFlowSessionId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"fixedValue": 29.99,
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"maxTimesUsed": 1,
"orderLineItemId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"percentage": 1,
"platformId": "gid://shopify/Discount/1337828193",
"redeemCode": "WELCOME10",
"shippingLineId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"subscriptionLineId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"timesUsed": 1,
"title": "Morning Blend Coffee",
"type": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
List policies
Policies
Returns billing and delivery policies. A policy sets a cadence, such as every 2 weeks.
Arguments
-
distinct_on[Policy_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[Policy_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
wherePolicy_bool_expFilter the results. See Filtering & pagination.
Returns
A list of Policy objects.
query ListPolicies {
Policies(limit: 10) {
id
interval
intervalCount
minCycles
maxCycles
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListPolicies{ Policies( limit: 10) { id interval intervalCount minCycles maxCycles} }"
}'
const query = `
query ListPolicies {
Policies(limit: 10) {
id
interval
intervalCount
minCycles
maxCycles
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListPolicies {
Policies(limit: 10) {
id
interval
intervalCount
minCycles
maxCycles
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query},
)
result = response.json()
{
"data": {
"Policies": [
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"interval": "MONTH",
"intervalCount": 1,
"minCycles": 1,
"maxCycles": 1
}
]
}
}
Retrieve a policy
PolicyByPk
Returns one billing or delivery policy by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Policy object, or null if no record matches.
query PolicyByPk($id: uuid!) {
PolicyByPk(id: $id) {
Anchors {
createdAt
cutoffDay
day
id
missedAnchorAllowance
month
policyId
strictness
type
updatedAt
}
SellingPlansByBillingPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByPrepaidDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SubscriptionsByBillingPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByPrepaidDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
createdAt
id
interval
intervalCount
isMaxCycleV2
maxCycles
minCycles
updatedAt
}
}
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query PolicyByPk( $id: uuid!) { PolicyByPk( id: $id) { Anchors{ createdAt cutoffDay day id missedAnchorAllowance month policyId strictness type updatedAt} SellingPlansByBillingPolicy{ availableInCustomerPortal availableInDashboard availableOnStorefront availableViaApi billingPolicyId createdAt deliveryPolicyId description id name option platformId position prepaidDeliveryPolicyId productVariantIdToSwapToAfterFirstOrder sellingPlanGroupId siteId updatedAt} SellingPlansByDeliveryPolicy{ availableInCustomerPortal availableInDashboard availableOnStorefront availableViaApi billingPolicyId createdAt deliveryPolicyId description id name option platformId position prepaidDeliveryPolicyId productVariantIdToSwapToAfterFirstOrder sellingPlanGroupId siteId updatedAt} SellingPlansByPrepaidDeliveryPolicy{ availableInCustomerPortal availableInDashboard availableOnStorefront availableViaApi billingPolicyId createdAt deliveryPolicyId description id name option platformId position prepaidDeliveryPolicyId productVariantIdToSwapToAfterFirstOrder sellingPlanGroupId siteId updatedAt} SubscriptionsByBillingPolicy{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} SubscriptionsByDeliveryPolicy{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} SubscriptionsByPrepaidDeliveryPolicy{ billingPolicyId cancelledAt churnPredictedAt churnRiskReasons churnScore createdAt currencyCode customAttributes cyclesCompleted deliveryPolicyId deliveryPrice deliveryPriceOverride id isPickup lastBillingAttemptAt maxStreakCount metadata migrationIndex nextBillingDate nextRenewalDate note originOrderId platformId prepaidDeliveryPolicyId prepaidProductPricesPerDelivery remainingCyclesUntilRenewal shippingAddressId siteId status statusContext storefrontUserId streakCount streakExpiresAt updatedAt} createdAt id interval intervalCount isMaxCycleV2 maxCycles minCycles updatedAt} }",
"variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
query PolicyByPk($id: uuid!) {
PolicyByPk(id: $id) {
Anchors {
createdAt
cutoffDay
day
id
missedAnchorAllowance
month
policyId
strictness
type
updatedAt
}
SellingPlansByBillingPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByPrepaidDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SubscriptionsByBillingPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByPrepaidDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
createdAt
id
interval
intervalCount
isMaxCycleV2
maxCycles
minCycles
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query PolicyByPk($id: uuid!) {
PolicyByPk(id: $id) {
Anchors {
createdAt
cutoffDay
day
id
missedAnchorAllowance
month
policyId
strictness
type
updatedAt
}
SellingPlansByBillingPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SellingPlansByPrepaidDeliveryPolicy {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
SubscriptionsByBillingPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
SubscriptionsByPrepaidDeliveryPolicy {
billingPolicyId
cancelledAt
churnPredictedAt
churnRiskReasons
churnScore
createdAt
currencyCode
customAttributes
cyclesCompleted
deliveryPolicyId
deliveryPrice
deliveryPriceOverride
id
isPickup
lastBillingAttemptAt
maxStreakCount
metadata
migrationIndex
nextBillingDate
nextRenewalDate
note
originOrderId
platformId
prepaidDeliveryPolicyId
prepaidProductPricesPerDelivery
remainingCyclesUntilRenewal
shippingAddressId
siteId
status
statusContext
storefrontUserId
streakCount
streakExpiresAt
updatedAt
}
createdAt
id
interval
intervalCount
isMaxCycleV2
maxCycles
minCycles
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"PolicyByPk": {
"Anchors": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"cutoffDay": 1,
"day": 1,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"missedAnchorAllowance": 1,
"month": 1,
"policyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"strictness": "example",
"type": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SellingPlansByBillingPolicy": [
{
"availableInCustomerPortal": false,
"availableInDashboard": false,
"availableOnStorefront": false,
"availableViaApi": false,
"billingPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deliveryPolicyId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"description": {},
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"option": "example",
"platformId": "gid://shopify/SellingPlan/3062691961",
"position": 1,
"prepaidDeliveryPolicyId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"productVariantIdToSwapToAfterFirstOrder": "example",
"sellingPlanGroupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"siteId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SellingPlansByDeliveryPolicy": [
{
"availableInCustomerPortal": false,
"availableInDashboard": false,
"availableOnStorefront": false,
"availableViaApi": false,
"billingPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deliveryPolicyId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"description": {},
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"option": "example",
"platformId": "gid://shopify/SellingPlan/3062691961",
"position": 1,
"prepaidDeliveryPolicyId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"productVariantIdToSwapToAfterFirstOrder": "example",
"sellingPlanGroupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"siteId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SellingPlansByPrepaidDeliveryPolicy": [
{
"availableInCustomerPortal": false,
"availableInDashboard": false,
"availableOnStorefront": false,
"availableViaApi": false,
"billingPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deliveryPolicyId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"description": {},
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"option": "example",
"platformId": "gid://shopify/SellingPlan/3062691961",
"position": 1,
"prepaidDeliveryPolicyId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"productVariantIdToSwapToAfterFirstOrder": "example",
"sellingPlanGroupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"siteId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SubscriptionsByBillingPolicy": [
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SubscriptionsByDeliveryPolicy": [
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SubscriptionsByPrepaidDeliveryPolicy": [
{
"billingPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"cancelledAt": null,
"churnPredictedAt": "2025-03-01T17:00:00.000000+00:00",
"churnRiskReasons": [
"skipped_last_order"
],
"churnScore": 0.12,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"currencyCode": "USD",
"customAttributes": [
{
"key": "gift_message",
"value": "Happy birthday!"
}
],
"cyclesCompleted": 3,
"deliveryPolicyId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"deliveryPrice": 5,
"deliveryPriceOverride": null,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPickup": false,
"lastBillingAttemptAt": "2025-03-01T17:00:00.000000+00:00",
"maxStreakCount": 42,
"metadata": {},
"migrationIndex": null,
"nextBillingDate": "2025-03-01T17:00:00.000000+00:00",
"nextRenewalDate": "2025-03-01T17:00:00.000000+00:00",
"note": "Leave at the front door",
"originOrderId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"platformId": "gid://shopify/SubscriptionContract/1505523517",
"prepaidDeliveryPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"prepaidProductPricesPerDelivery": {},
"remainingCyclesUntilRenewal": 1,
"shippingAddressId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"status": "ACTIVE",
"statusContext": null,
"storefrontUserId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"streakCount": 42,
"streakExpiresAt": "2025-03-01T17:00:00.000000+00:00",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"interval": "MONTH",
"intervalCount": 1,
"isMaxCycleV2": false,
"maxCycles": 1,
"minCycles": 1,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
List pricing policies
PricingPolicies
Returns selling plan pricing policies, the discount a selling plan applies (optionally only after a number of cycles).
Arguments
-
distinct_on[PricingPolicy_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[PricingPolicy_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
wherePricingPolicy_bool_expFilter the results. See Filtering & pagination.
Returns
A list of PricingPolicy objects.
query ListPricingPolicies {
PricingPolicies(limit: 10) {
id
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
percentageOff
fixedPrice
afterCycle
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListPricingPolicies{ PricingPolicies( limit: 10) { id sellingPlanId sellingPlanPricingPolicyAdjustmentType percentageOff fixedPrice afterCycle} }"
}'
const query = `
query ListPricingPolicies {
PricingPolicies(limit: 10) {
id
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
percentageOff
fixedPrice
afterCycle
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListPricingPolicies {
PricingPolicies(limit: 10) {
id
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
percentageOff
fixedPrice
afterCycle
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query},
)
result = response.json()
{
"data": {
"PricingPolicies": [
{
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"sellingPlanId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"sellingPlanPricingPolicyAdjustmentType": "example",
"percentageOff": 1,
"fixedPrice": 29.99,
"afterCycle": 1
}
]
}
}
Retrieve a pricing policy
PricingPolicyByPk
Returns one pricing policy by its Skio ID.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single PricingPolicy object, or null if no record matches.
query PricingPolicyByPk($id: uuid!) {
PricingPolicyByPk(id: $id) {
SellingPlan {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
afterCycle
createdAt
fixedPrice
id
percentageOff
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
updatedAt
}
}
{
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query PricingPolicyByPk( $id: uuid!) { PricingPolicyByPk( id: $id) { SellingPlan{ availableInCustomerPortal availableInDashboard availableOnStorefront availableViaApi billingPolicyId createdAt deliveryPolicyId description id name option platformId position prepaidDeliveryPolicyId productVariantIdToSwapToAfterFirstOrder sellingPlanGroupId siteId updatedAt} afterCycle createdAt fixedPrice id percentageOff sellingPlanId sellingPlanPricingPolicyAdjustmentType updatedAt} }",
"variables": {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
}
}'
const query = `
query PricingPolicyByPk($id: uuid!) {
PricingPolicyByPk(id: $id) {
SellingPlan {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
afterCycle
createdAt
fixedPrice
id
percentageOff
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
updatedAt
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query PricingPolicyByPk($id: uuid!) {
PricingPolicyByPk(id: $id) {
SellingPlan {
availableInCustomerPortal
availableInDashboard
availableOnStorefront
availableViaApi
billingPolicyId
createdAt
deliveryPolicyId
description
id
name
option
platformId
position
prepaidDeliveryPolicyId
productVariantIdToSwapToAfterFirstOrder
sellingPlanGroupId
siteId
updatedAt
}
afterCycle
createdAt
fixedPrice
id
percentageOff
sellingPlanId
sellingPlanPricingPolicyAdjustmentType
updatedAt
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
}},
)
result = response.json()
{
"data": {
"PricingPolicyByPk": {
"SellingPlan": {
"availableInCustomerPortal": false,
"availableInDashboard": false,
"availableOnStorefront": false,
"availableViaApi": false,
"billingPolicyId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deliveryPolicyId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"description": {},
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"name": "#1042",
"option": "example",
"platformId": "gid://shopify/SellingPlan/3062691961",
"position": 1,
"prepaidDeliveryPolicyId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"productVariantIdToSwapToAfterFirstOrder": "example",
"sellingPlanGroupId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"siteId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
},
"afterCycle": 1,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"fixedPrice": 29.99,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"percentageOff": 1,
"sellingPlanId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"sellingPlanPricingPolicyAdjustmentType": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
}
}
Store
Settings for the store that owns your API token.
The Site object
Your store.
Attributes
-
appProxyPathPrefixString nullableShopify app proxy path for the customer portal.
-
currencyCodeString -
ianaTimezoneString nullableStore time zone, e.g.
America/New_York. -
iduuid -
qaAuthSettingsjsonb nullable
Relationships (10)
-
CancelFlowV3s[CancelFlowV3!]List of related CancelFlowV3 records.
-
CreditRewards[CreditRewards!]List of related CreditRewards records.
-
Holidays[Holiday!]List of related Holiday records.
-
Notifications[Notification!]List of related Notification records.
-
Products[Product!]List of related Product records.
-
SkioSmsMessagingHistory[SkioSmsMessagingHistory!]List of related SkioSmsMessagingHistory records.
-
StorefrontUsers[StorefrontUser!]List of related StorefrontUser records.
-
Tags[Tag!]List of related Tag records.
-
ThemeThemeThe related Theme record.
-
Theme2Theme2The related Theme2 record.
{
"appProxyPathPrefix": "example",
"currencyCode": "USD",
"ianaTimezone": "America/Chicago",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"qaAuthSettings": {}
}
Retrieve your store
SiteByPk
Returns the store that owns your API token. Pass your own store's Skio ID; other stores return null.
Arguments
-
iduuid RequiredThe Skio ID (UUID) of the record.
Returns
A single Site object, or null if no record matches.
query SiteByPk($id: uuid!) {
SiteByPk(id: $id) {
CancelFlowV3s {
cancelFlowId
createdAt
edges
enabledAt
name
nodes
ranking
settings
siteId
status
updatedAt
versionNumber
}
CreditRewards {
enabled
id
removedAt
type
value
}
Holidays {
id
}
Notifications {
enabledAt
id
}
Products {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
SkioSmsMessagingHistory {
createdAt
customerMessage
id
response
sessionId
siteId
storefrontUserId
updatedAt
}
StorefrontUsers {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Tags {
createdAt
id
name
siteId
type
updatedAt
}
Theme {
id
}
Theme2 {
accentColor
accentTextColor
badgeBGColor
badgeTextColor
buttonBGColor
buttonBorderRadius
buttonTextColor
cardBorderRadius
cardBorderWidth
carouselSlideSeconds
disableHalfSkip
expandAllButtons
headingColor
headingWeight
hideQuantityEditing
id
isPreview
loyaltyGradientEndColor
loyaltyGradientStartColor
loyaltyIconBgColor
loyaltyIconColor
neverHideOTUCards
noSecondaryButtons
primaryColor
qaPrimaryAccentColor
qaSecondaryAccentColor
radioBorderRadius
showTaxAndDuties
siteId
tagBGColor
tagBorderRadius
tagTextColor
textAnchorColor
textApplyDiscountCode
textCancelNow
textColor
textEditFrequency
textOrderNow
textWeight
updated_at
}
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
}
{
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query SiteByPk( $id: uuid!) { SiteByPk( id: $id) { CancelFlowV3s{ cancelFlowId createdAt edges enabledAt name nodes ranking settings siteId status updatedAt versionNumber} CreditRewards{ enabled id removedAt type value} Holidays{ id} Notifications{ enabledAt id} Products{ canUpsell createdAt deletedAt description hideOn1TimeUpsells id imageSrc images isDigitalOverride limitOneTimeUpsellQuantity metafields oneTimeUpsellPercentageOff platformId shopifyTags siteId slug smsOrder status title updatedAt} SkioSmsMessagingHistory{ createdAt customerMessage id response sessionId siteId storefrontUserId updatedAt} StorefrontUsers{ createdAt email emailLower firstName id lastName phoneNumber platformId qaToken redactedAt removedAt shopifyTags siteId smsTransactionalOptIn tempSmsTransactionalOptIn updatedAt} Tags{ createdAt id name siteId type updatedAt} Theme{ id} Theme2{ accentColor accentTextColor badgeBGColor badgeTextColor buttonBGColor buttonBorderRadius buttonTextColor cardBorderRadius cardBorderWidth carouselSlideSeconds disableHalfSkip expandAllButtons headingColor headingWeight hideQuantityEditing id isPreview loyaltyGradientEndColor loyaltyGradientStartColor loyaltyIconBgColor loyaltyIconColor neverHideOTUCards noSecondaryButtons primaryColor qaPrimaryAccentColor qaSecondaryAccentColor radioBorderRadius showTaxAndDuties siteId tagBGColor tagBorderRadius tagTextColor textAnchorColor textApplyDiscountCode textCancelNow textColor textEditFrequency textOrderNow textWeight updated_at} appProxyPathPrefix currencyCode ianaTimezone id qaAuthSettings} }",
"variables": {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
}
}'
const query = `
query SiteByPk($id: uuid!) {
SiteByPk(id: $id) {
CancelFlowV3s {
cancelFlowId
createdAt
edges
enabledAt
name
nodes
ranking
settings
siteId
status
updatedAt
versionNumber
}
CreditRewards {
enabled
id
removedAt
type
value
}
Holidays {
id
}
Notifications {
enabledAt
id
}
Products {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
SkioSmsMessagingHistory {
createdAt
customerMessage
id
response
sessionId
siteId
storefrontUserId
updatedAt
}
StorefrontUsers {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Tags {
createdAt
id
name
siteId
type
updatedAt
}
Theme {
id
}
Theme2 {
accentColor
accentTextColor
badgeBGColor
badgeTextColor
buttonBGColor
buttonBorderRadius
buttonTextColor
cardBorderRadius
cardBorderWidth
carouselSlideSeconds
disableHalfSkip
expandAllButtons
headingColor
headingWeight
hideQuantityEditing
id
isPreview
loyaltyGradientEndColor
loyaltyGradientStartColor
loyaltyIconBgColor
loyaltyIconColor
neverHideOTUCards
noSecondaryButtons
primaryColor
qaPrimaryAccentColor
qaSecondaryAccentColor
radioBorderRadius
showTaxAndDuties
siteId
tagBGColor
tagBorderRadius
tagTextColor
textAnchorColor
textApplyDiscountCode
textCancelNow
textColor
textEditFrequency
textOrderNow
textWeight
updated_at
}
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query SiteByPk($id: uuid!) {
SiteByPk(id: $id) {
CancelFlowV3s {
cancelFlowId
createdAt
edges
enabledAt
name
nodes
ranking
settings
siteId
status
updatedAt
versionNumber
}
CreditRewards {
enabled
id
removedAt
type
value
}
Holidays {
id
}
Notifications {
enabledAt
id
}
Products {
canUpsell
createdAt
deletedAt
description
hideOn1TimeUpsells
id
imageSrc
images
isDigitalOverride
limitOneTimeUpsellQuantity
metafields
oneTimeUpsellPercentageOff
platformId
shopifyTags
siteId
slug
smsOrder
status
title
updatedAt
}
SkioSmsMessagingHistory {
createdAt
customerMessage
id
response
sessionId
siteId
storefrontUserId
updatedAt
}
StorefrontUsers {
createdAt
email
emailLower
firstName
id
lastName
phoneNumber
platformId
qaToken
redactedAt
removedAt
shopifyTags
siteId
smsTransactionalOptIn
tempSmsTransactionalOptIn
updatedAt
}
Tags {
createdAt
id
name
siteId
type
updatedAt
}
Theme {
id
}
Theme2 {
accentColor
accentTextColor
badgeBGColor
badgeTextColor
buttonBGColor
buttonBorderRadius
buttonTextColor
cardBorderRadius
cardBorderWidth
carouselSlideSeconds
disableHalfSkip
expandAllButtons
headingColor
headingWeight
hideQuantityEditing
id
isPreview
loyaltyGradientEndColor
loyaltyGradientStartColor
loyaltyIconBgColor
loyaltyIconColor
neverHideOTUCards
noSecondaryButtons
primaryColor
qaPrimaryAccentColor
qaSecondaryAccentColor
radioBorderRadius
showTaxAndDuties
siteId
tagBGColor
tagBorderRadius
tagTextColor
textAnchorColor
textApplyDiscountCode
textCancelNow
textColor
textEditFrequency
textOrderNow
textWeight
updated_at
}
appProxyPathPrefix
currencyCode
ianaTimezone
id
qaAuthSettings
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
}},
)
result = response.json()
{
"data": {
"SiteByPk": {
"CancelFlowV3s": [
{
"cancelFlowId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"edges": {},
"enabledAt": "2025-03-01T17:00:00.000000+00:00",
"name": "#1042",
"nodes": {},
"ranking": 1,
"settings": {},
"siteId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"status": "ACTIVE",
"updatedAt": "2025-03-01T17:00:00.000000+00:00",
"versionNumber": 1
}
],
"CreditRewards": [
{
"enabled": false,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"removedAt": null,
"type": "example",
"value": 2
}
],
"Holidays": [
{
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
],
"Notifications": [
{
"enabledAt": "2025-03-01T17:00:00.000000+00:00",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
],
"Products": [
{
"canUpsell": false,
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"deletedAt": null,
"description": "example",
"hideOn1TimeUpsells": false,
"id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
"imageSrc": "example",
"images": {},
"isDigitalOverride": false,
"limitOneTimeUpsellQuantity": false,
"metafields": {},
"oneTimeUpsellPercentageOff": 1,
"platformId": "gid://shopify/Product/2355179215",
"shopifyTags": {},
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"slug": "example",
"smsOrder": 1,
"status": "ACTIVE",
"title": "Morning Blend Coffee",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"SkioSmsMessagingHistory": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"customerMessage": "example",
"id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"response": "example",
"sessionId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"siteId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"storefrontUserId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"StorefrontUsers": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"email": "jane@example.com",
"emailLower": "jane@example.com",
"firstName": "Jane",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"lastName": "Doe",
"phoneNumber": "+15125550123",
"platformId": "gid://shopify/Customer/2522352627",
"qaToken": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"redactedAt": "2025-03-01T17:00:00.000000+00:00",
"removedAt": null,
"shopifyTags": {},
"siteId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"smsTransactionalOptIn": false,
"tempSmsTransactionalOptIn": false,
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"Tags": [
{
"createdAt": "2025-03-01T17:00:00.000000+00:00",
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"name": "#1042",
"siteId": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"type": "example",
"updatedAt": "2025-03-01T17:00:00.000000+00:00"
}
],
"Theme": {
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
},
"Theme2": {
"accentColor": "example",
"accentTextColor": "example",
"badgeBGColor": "example",
"badgeTextColor": "example",
"buttonBGColor": "example",
"buttonBorderRadius": 1,
"buttonTextColor": "example",
"cardBorderRadius": 1,
"cardBorderWidth": 1,
"carouselSlideSeconds": 1,
"disableHalfSkip": false,
"expandAllButtons": false,
"headingColor": "example",
"headingWeight": "example",
"hideQuantityEditing": false,
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"isPreview": false,
"loyaltyGradientEndColor": "example",
"loyaltyGradientStartColor": "example",
"loyaltyIconBgColor": "example",
"loyaltyIconColor": "example",
"neverHideOTUCards": false,
"noSecondaryButtons": false,
"primaryColor": "example",
"qaPrimaryAccentColor": "example",
"qaSecondaryAccentColor": "example",
"radioBorderRadius": 1,
"showTaxAndDuties": false,
"siteId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
"tagBGColor": "example",
"tagBorderRadius": 1,
"tagTextColor": "example",
"textAnchorColor": "example",
"textApplyDiscountCode": "example",
"textCancelNow": "example",
"textColor": "example",
"textEditFrequency": "example",
"textOrderNow": "example",
"textWeight": "example",
"updated_at": "2025-03-01T17:00:00.000000+00:00"
},
"appProxyPathPrefix": "example",
"currencyCode": "USD",
"ianaTimezone": "America/Chicago",
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
"qaAuthSettings": {}
}
}
}
Update store settings
updateSiteByPk
Updates store settings. Through the public API only useFlycodeDunning can be changed. When it is true, Skio's failed-payment retries skip your subscriptions because you handle dunning with Flycode. Pass your own store's ID in pk_columns.
Arguments
-
_setSite_set_inputsets the columns of the filtered rows to the given values
-
_set.useFlycodeDunningBooleanSkip Skio failed-payment retries because Flycode handles dunning.
-
pk_columnsSite_pk_columns_input RequiredYour store's Skio ID, as
{id: ...}.
Returns
The updated Site object.
mutation UpdateSite($id: uuid!) {
updateSiteByPk(pk_columns: {id: $id}, _set: {useFlycodeDunning: true}) {
id
}
}
{
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "mutation UpdateSite( $id: uuid!) { updateSiteByPk( pk_columns: { id: $id} , _set: { useFlycodeDunning: true} ) { id} }",
"variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
}
}'
const query = `
mutation UpdateSite($id: uuid!) {
updateSiteByPk(pk_columns: {id: $id}, _set: {useFlycodeDunning: true}) {
id
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
mutation UpdateSite($id: uuid!) {
updateSiteByPk(pk_columns: {id: $id}, _set: {useFlycodeDunning: true}) {
id
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"id": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
}},
)
result = response.json()
{
"data": {
"updateSiteByPk": {
"id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
}
}
}
Analytics
Aggregated revenue and subscriber metrics. To export raw data in bulk, use the BigQuery integration.
Get daily revenue metrics
getDailyRevenueMetrics
Returns one row per day of revenue, order and subscriber metrics for your store. Both dates are inclusive. Data comes from Skio's analytics warehouse and is updated in batches, so the latest day may be incomplete.
Input input
-
dateEndString RequiredLast day,
YYYY-MM-DD(inclusive). -
dateStartString RequiredFirst day,
YYYY-MM-DD(inclusive).
Returns
-
revenueMetrics[DailyRevenueMetricsRow] -
revenueMetrics[].activeSubscribersCountInt -
revenueMetrics[].activeSubscriptionsCountInt -
revenueMetrics[].allOrdersInt -
revenueMetrics[].allOrdersSubscribersInt -
revenueMetrics[].cancelledSubscribersCountInt -
revenueMetrics[].cancelledSubscriptionsCountInt -
revenueMetrics[].dateString -
revenueMetrics[].domainString -
revenueMetrics[].failedSubscribersCountInt -
revenueMetrics[].failedSubscriptionsCountInt -
revenueMetrics[].firstTimeOrdersInt -
revenueMetrics[].firstTimeRevenueFloat -
revenueMetrics[].firstTimeRevenueOrderLineDiscountsFloat -
revenueMetrics[].firstTimeRevenueOrderLineTaxesFloat -
revenueMetrics[].firstTimeRevenueShippingLineFloat -
revenueMetrics[].firstTimeRevenueShippingLineDiscountsFloat -
revenueMetrics[].firstTimeRevenueShippingLineTaxesFloat -
revenueMetrics[].firstTimeSubscribersInt -
revenueMetrics[].nonSubscriptionOrdersInt -
revenueMetrics[].nonSubscriptionRevenueFloat -
revenueMetrics[].nonSubscriptionRevenueOrderLineDiscountsFloat -
revenueMetrics[].nonSubscriptionRevenueOrderLineTaxesFloat -
revenueMetrics[].nonSubscriptionRevenueShippingLineFloat -
revenueMetrics[].nonSubscriptionRevenueShippingLineDiscountsFloat -
revenueMetrics[].nonSubscriptionRevenueShippingLineTaxesFloat -
revenueMetrics[].nonSubscriptionSubscribersInt -
revenueMetrics[].oneTimeOrdersInt -
revenueMetrics[].oneTimeRevenueFloat -
revenueMetrics[].oneTimeRevenueOrderLineDiscountsFloat -
revenueMetrics[].oneTimeRevenueOrderLineTaxesFloat -
revenueMetrics[].oneTimeSubscribersInt -
revenueMetrics[].pausedSubscribersCountInt -
revenueMetrics[].pausedSubscriptionsCountInt -
revenueMetrics[].recurringOrdersInt -
revenueMetrics[].recurringRevenueFloat -
revenueMetrics[].recurringRevenueOrderLineDiscountsFloat -
revenueMetrics[].recurringRevenueOrderLineTaxesFloat -
revenueMetrics[].recurringRevenueShippingLineFloat -
revenueMetrics[].recurringRevenueShippingLineDiscountsFloat -
revenueMetrics[].recurringRevenueShippingLineTaxesFloat -
revenueMetrics[].recurringSubscribersInt -
revenueMetrics[].siteIdString
query DailyRevenue($input: DailyRevenueMetricsInput!) {
getDailyRevenueMetrics(input: $input) {
revenueMetrics {
date
recurringRevenue
firstTimeRevenue
recurringOrders
firstTimeOrders
activeSubscriptionsCount
cancelledSubscriptionsCount
}
}
}
{
"input": {
"dateStart": "2025-03-01",
"dateEnd": "2025-03-07"
}
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query DailyRevenue( $input: DailyRevenueMetricsInput!) { getDailyRevenueMetrics( input: $input) { revenueMetrics{ date recurringRevenue firstTimeRevenue recurringOrders firstTimeOrders activeSubscriptionsCount cancelledSubscriptionsCount} } }",
"variables": {
"input": {
"dateStart": "2025-03-01",
"dateEnd": "2025-03-07"
}
}
}'
const query = `
query DailyRevenue($input: DailyRevenueMetricsInput!) {
getDailyRevenueMetrics(input: $input) {
revenueMetrics {
date
recurringRevenue
firstTimeRevenue
recurringOrders
firstTimeOrders
activeSubscriptionsCount
cancelledSubscriptionsCount
}
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"input": {
"dateStart": "2025-03-01",
"dateEnd": "2025-03-07"
}
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query DailyRevenue($input: DailyRevenueMetricsInput!) {
getDailyRevenueMetrics(input: $input) {
revenueMetrics {
date
recurringRevenue
firstTimeRevenue
recurringOrders
firstTimeOrders
activeSubscriptionsCount
cancelledSubscriptionsCount
}
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"input": {
"dateStart": "2025-03-01",
"dateEnd": "2025-03-07",
},
}},
)
result = response.json()
{
"data": {
"getDailyRevenueMetrics": {
"revenueMetrics": [
{
"date": "2025-03-01",
"recurringRevenue": 29.99,
"firstTimeRevenue": 29.99,
"recurringOrders": 42,
"firstTimeOrders": 42,
"activeSubscriptionsCount": 42,
"cancelledSubscriptionsCount": 42
}
]
}
}
}
List Surprise & Delight sessions
SurpriseDelightSessions
Returns each time a Surprise & Delight rule ran on one of your subscriptions.
Arguments
-
distinct_on[SurpriseDelightSessions_select_column!]Return only rows with distinct values for the given fields.
-
limitIntMaximum number of records to return.
-
offsetIntNumber of records to skip. Use together with
order_byto paginate. -
order_by[SurpriseDelightSessions_order_by!]Sort the results by one or more fields, e.g.
{createdAt: desc}. -
Filter the results. See Filtering & pagination.
Returns
-
SubscriptionSubscriptionAn object relationship
-
Subscription.AuditLogs[AuditLog!]An array relationship
-
Subscription.BillingPolicyPolicyAn object relationship
-
Subscription.CancelFlowSessions[CancelFlowSession!]An array relationship
-
Subscription.CancelFlowV2Sessions[CancelFlowV2Session!]An array relationship
-
Subscription.CancelFlowV3Sessions[CancelFlowV3Session!]An array relationship
-
Subscription.DeliveryPolicyPolicyAn object relationship
-
Subscription.Discounts[Discount!]An array relationship
-
Subscription.FulfillmentOrders[Order!]An array relationship
-
Subscription.NotificationLogs[NotificationLog!]An array relationship
-
Subscription.Orders[Order!]An array relationship
-
Subscription.PaymentMethodPaymentMethodAn object relationship
-
Subscription.PrepaidDeliveryPolicyPolicyAn object relationship
-
Subscription.PrepaidGiftRecipientStorefrontUserAn object relationship
-
Subscription.PrepaidSubscriptionLines[SubscriptionLine!]An array relationship
-
Subscription.ShippingAddressAddressAn object relationship
-
Subscription.SiteSiteAn object relationship
-
Subscription.StorefrontUserStorefrontUserAn object relationship
-
Subscription.SubscriptionLines[SubscriptionLine!]An array relationship
-
Subscription.SurpriseDelightSessions[SurpriseDelightSessions!]An array relationship
-
Subscription.billingPolicyIduuid -
Subscription.cancelledAttimestamptz -
Subscription.churnPredictedAttimestamptz -
Subscription.churnRiskReasons[String!] -
Subscription.churnScorenumeric -
Subscription.createdAttimestamptz -
Subscription.currencyCodeString -
Subscription.customAttributesjsonb -
Subscription.cyclesCompletedInt -
Subscription.deliveryPolicyIduuid -
Subscription.deliveryPricenumeric -
Subscription.deliveryPriceOverrideInt -
Subscription.iduuid -
Subscription.isPickupBoolean -
Subscription.lastBillingAttemptAttimestamptz -
Subscription.maxStreakCountInt -
Subscription.metadatajsonb -
Subscription.migrationIndexInt -
Subscription.nextBillingDatetimestamptz -
Subscription.nextRenewalDatetimestamptzFor prepaid, estimated date when the prepaid subscription will bill for the next period
-
Subscription.noteString -
Subscription.originOrderOrderAn object relationship
-
Subscription.originOrderIduuid -
Subscription.platformIdString -
Subscription.prepaidDeliveryPolicyIduuid -
Subscription.prepaidProductPricesPerDeliveryjsonb -
Subscription.remainingCyclesUntilRenewalIntFor prepaid, orders remaining before the subscription bills again
-
Subscription.shippingAddressIduuid -
Subscription.siteIduuid -
Subscription.statusString -
Subscription.statusContextString -
Subscription.storefrontUserIduuid -
Subscription.streakCountInt -
Subscription.streakExpiresAttimestamptz -
Subscription.updatedAttimestamptz -
created_attimestamptz -
groupString -
iduuid -
ruleIduuid -
statusString -
subscriptionIduuid
query ListSurpriseDelight($subscriptionId: uuid!) {
SurpriseDelightSessions(where: {subscriptionId: {_eq: $subscriptionId}}) {
id
ruleId
status
group
created_at
}
}
{
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
curl -X POST https://graphql.skio.com/v1/graphql \
-H 'Content-Type: application/json' \
-H 'Authorization: API <your-api-token>' \
-d '{
"query": "query ListSurpriseDelight( $subscriptionId: uuid!) { SurpriseDelightSessions( where: { subscriptionId: { _eq: $subscriptionId} } ) { id ruleId status group created_at} }",
"variables": {
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
}
}'
const query = `
query ListSurpriseDelight($subscriptionId: uuid!) {
SurpriseDelightSessions(where: {subscriptionId: {_eq: $subscriptionId}}) {
id
ruleId
status
group
created_at
}
}
`;
const response = await fetch('https://graphql.skio.com/v1/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
Authorization: `API ${process.env.SKIO_API_TOKEN}`,
},
body: JSON.stringify({
query,
variables: {
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71"
},
}),
});
const { data, errors } = await response.json();
import os
import requests
query = """
query ListSurpriseDelight($subscriptionId: uuid!) {
SurpriseDelightSessions(where: {subscriptionId: {_eq: $subscriptionId}}) {
id
ruleId
status
group
created_at
}
}
"""
response = requests.post(
"https://graphql.skio.com/v1/graphql",
headers={"Authorization": f"API {os.environ['SKIO_API_TOKEN']}"},
json={"query": query, "variables": {
"subscriptionId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
}},
)
result = response.json()
{
"data": {
"SurpriseDelightSessions": [
{
"id": "4a1b7e2c-9d3f-4c8a-b5e6-0f2d1c3b4a59",
"ruleId": "9b0c2d4e-6f8a-4b1c-8d3e-5f7a9b1c3d28",
"status": "ACTIVE",
"group": "default",
"created_at": "2025-03-01T17:00:00.000000+00:00"
}
]
}
}
Schema reference
Every other type in the API: filter (_bool_exp) and sort (_order_by) inputs, enums, scalars and secondary objects.
Show all 459 schema types
addProductVariantToSellingPlanGroupInput
addProductVariantToSellingPlanGroupOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
Address_aggregate_order_by
Description
order by aggregate values of table "Address"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - Address_max_order_by
|
|
min - Address_min_order_by
|
Example
{
"count": "asc",
"max": Address_max_order_by,
"min": Address_min_order_by
}
Address_bool_exp
Description
Boolean expression to filter rows from the table "Address". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
PaymentMethod - PaymentMethod_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscriptions - Subscription_bool_exp
|
|
_and - [Address_bool_exp!]
|
|
_not - Address_bool_exp
|
|
_or - [Address_bool_exp!]
|
|
address1 - String_comparison_exp
|
|
address2 - String_comparison_exp
|
|
city - String_comparison_exp
|
|
company - String_comparison_exp
|
|
country - String_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
doorCode - String_comparison_exp
|
|
firstName - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
lastName - String_comparison_exp
|
|
phoneNumber - String_comparison_exp
|
|
platformId - String_comparison_exp
|
|
province - String_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
|
zip - String_comparison_exp
|
Example
{
"PaymentMethod": PaymentMethod_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Subscriptions": Subscription_bool_exp,
"_and": [Address_bool_exp],
"_not": Address_bool_exp,
"_or": [Address_bool_exp],
"address1": String_comparison_exp,
"address2": String_comparison_exp,
"city": String_comparison_exp,
"company": String_comparison_exp,
"country": String_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"doorCode": String_comparison_exp,
"firstName": String_comparison_exp,
"id": uuid_comparison_exp,
"lastName": String_comparison_exp,
"phoneNumber": String_comparison_exp,
"platformId": String_comparison_exp,
"province": String_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp,
"zip": String_comparison_exp
}
Address_max_order_by
Description
order by max() on columns of table "Address"
Fields
| Input Field | Description |
|---|---|
address1 - order_by
|
|
address2 - order_by
|
|
city - order_by
|
|
company - order_by
|
|
country - order_by
|
|
createdAt - order_by
|
|
doorCode - order_by
|
|
firstName - order_by
|
|
id - order_by
|
|
lastName - order_by
|
|
phoneNumber - order_by
|
|
platformId - order_by
|
|
province - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
|
zip - order_by
|
Example
{
"address1": "asc",
"address2": "asc",
"city": "asc",
"company": "asc",
"country": "asc",
"createdAt": "asc",
"doorCode": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"province": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc",
"zip": "asc"
}
Address_min_order_by
Description
order by min() on columns of table "Address"
Fields
| Input Field | Description |
|---|---|
address1 - order_by
|
|
address2 - order_by
|
|
city - order_by
|
|
company - order_by
|
|
country - order_by
|
|
createdAt - order_by
|
|
doorCode - order_by
|
|
firstName - order_by
|
|
id - order_by
|
|
lastName - order_by
|
|
phoneNumber - order_by
|
|
platformId - order_by
|
|
province - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
|
zip - order_by
|
Example
{
"address1": "asc",
"address2": "asc",
"city": "asc",
"company": "asc",
"country": "asc",
"createdAt": "asc",
"doorCode": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"province": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc",
"zip": "asc"
}
Address_order_by
Description
Ordering options when selecting data from "Address".
Fields
| Input Field | Description |
|---|---|
PaymentMethod - PaymentMethod_order_by
|
|
StorefrontUser - StorefrontUser_order_by
|
|
Subscriptions_aggregate - Subscription_aggregate_order_by
|
|
address1 - order_by
|
|
address2 - order_by
|
|
city - order_by
|
|
company - order_by
|
|
country - order_by
|
|
createdAt - order_by
|
|
doorCode - order_by
|
|
firstName - order_by
|
|
id - order_by
|
|
lastName - order_by
|
|
phoneNumber - order_by
|
|
platformId - order_by
|
|
province - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
|
zip - order_by
|
Example
{
"PaymentMethod": PaymentMethod_order_by,
"StorefrontUser": StorefrontUser_order_by,
"Subscriptions_aggregate": Subscription_aggregate_order_by,
"address1": "asc",
"address2": "asc",
"city": "asc",
"company": "asc",
"country": "asc",
"createdAt": "asc",
"doorCode": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"province": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc",
"zip": "asc"
}
Address_select_column
Description
select columns of table "Address"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"address1"
AddSubscriptionLineBulkInput
Fields
| Input Field | Description |
|---|---|
items - [AddSubscriptionLineInput!]!
|
Example
{"items": [AddSubscriptionLineInput]}
AddSubscriptionLineBulkOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": false}
AddSubscriptionLineInput
AddSubscriptionLineOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": false}
Anchor
Description
storefront user select/insert/update kinda funny. select is for seeing all anchor types (I think?!) and insert/update for modifying date
Example
{
"Policy": Policy,
"createdAt": timestamptz,
"cutoffDay": 123,
"day": 987,
"id": uuid,
"missedAnchorAllowance": 123,
"month": 987,
"policyId": uuid,
"strictness": "xyz789",
"type": "abc123",
"updatedAt": timestamptz
}
Anchor_aggregate_order_by
Description
order by aggregate values of table "Anchor"
Fields
| Input Field | Description |
|---|---|
avg - Anchor_avg_order_by
|
|
count - order_by
|
|
max - Anchor_max_order_by
|
|
min - Anchor_min_order_by
|
|
stddev - Anchor_stddev_order_by
|
|
stddev_pop - Anchor_stddev_pop_order_by
|
|
stddev_samp - Anchor_stddev_samp_order_by
|
|
sum - Anchor_sum_order_by
|
|
var_pop - Anchor_var_pop_order_by
|
|
var_samp - Anchor_var_samp_order_by
|
|
variance - Anchor_variance_order_by
|
Example
{
"avg": Anchor_avg_order_by,
"count": "asc",
"max": Anchor_max_order_by,
"min": Anchor_min_order_by,
"stddev": Anchor_stddev_order_by,
"stddev_pop": Anchor_stddev_pop_order_by,
"stddev_samp": Anchor_stddev_samp_order_by,
"sum": Anchor_sum_order_by,
"var_pop": Anchor_var_pop_order_by,
"var_samp": Anchor_var_samp_order_by,
"variance": Anchor_variance_order_by
}
Anchor_avg_order_by
Anchor_bool_exp
Description
Boolean expression to filter rows from the table "Anchor". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Policy - Policy_bool_exp
|
|
_and - [Anchor_bool_exp!]
|
|
_not - Anchor_bool_exp
|
|
_or - [Anchor_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
cutoffDay - Int_comparison_exp
|
|
day - Int_comparison_exp
|
|
id - uuid_comparison_exp
|
|
missedAnchorAllowance - Int_comparison_exp
|
|
month - Int_comparison_exp
|
|
policyId - uuid_comparison_exp
|
|
strictness - String_comparison_exp
|
|
type - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Policy": Policy_bool_exp,
"_and": [Anchor_bool_exp],
"_not": Anchor_bool_exp,
"_or": [Anchor_bool_exp],
"createdAt": timestamptz_comparison_exp,
"cutoffDay": Int_comparison_exp,
"day": Int_comparison_exp,
"id": uuid_comparison_exp,
"missedAnchorAllowance": Int_comparison_exp,
"month": Int_comparison_exp,
"policyId": uuid_comparison_exp,
"strictness": String_comparison_exp,
"type": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Anchor_max_order_by
Description
order by max() on columns of table "Anchor"
Example
{
"createdAt": "asc",
"cutoffDay": "asc",
"day": "asc",
"id": "asc",
"missedAnchorAllowance": "asc",
"month": "asc",
"policyId": "asc",
"strictness": "asc",
"type": "asc",
"updatedAt": "asc"
}
Anchor_min_order_by
Description
order by min() on columns of table "Anchor"
Example
{
"createdAt": "asc",
"cutoffDay": "asc",
"day": "asc",
"id": "asc",
"missedAnchorAllowance": "asc",
"month": "asc",
"policyId": "asc",
"strictness": "asc",
"type": "asc",
"updatedAt": "asc"
}
Anchor_stddev_order_by
Anchor_stddev_pop_order_by
Anchor_stddev_samp_order_by
Anchor_sum_order_by
Anchor_var_pop_order_by
Anchor_var_samp_order_by
Anchor_variance_order_by
ApplyDiscountCodeInput
ApplyDiscountCodeOutput
AuditLog
Description
columns and relationships of "AuditLog"
Fields
| Field Name | Description |
|---|---|
StorefrontUser - StorefrontUser
|
An object relationship |
Subscription - Subscription
|
An object relationship |
createdAt - timestamptz!
|
|
eventData - jsonb!
|
|
eventType - String!
|
|
id - uuid!
|
|
storefrontUserId - uuid
|
|
subscriptionId - uuid
|
|
updatedAt - timestamptz!
|
Example
{
"StorefrontUser": StorefrontUser,
"Subscription": Subscription,
"createdAt": timestamptz,
"eventData": jsonb,
"eventType": "xyz789",
"id": uuid,
"storefrontUserId": uuid,
"subscriptionId": uuid,
"updatedAt": timestamptz
}
AuditLog_aggregate_order_by
Description
order by aggregate values of table "AuditLog"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - AuditLog_max_order_by
|
|
min - AuditLog_min_order_by
|
Example
{
"count": "asc",
"max": AuditLog_max_order_by,
"min": AuditLog_min_order_by
}
AuditLog_bool_exp
Description
Boolean expression to filter rows from the table "AuditLog". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [AuditLog_bool_exp!]
|
|
_not - AuditLog_bool_exp
|
|
_or - [AuditLog_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
eventData - jsonb_comparison_exp
|
|
eventType - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"StorefrontUser": StorefrontUser_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [AuditLog_bool_exp],
"_not": AuditLog_bool_exp,
"_or": [AuditLog_bool_exp],
"createdAt": timestamptz_comparison_exp,
"eventData": jsonb_comparison_exp,
"eventType": String_comparison_exp,
"id": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
AuditLog_max_order_by
Description
order by max() on columns of table "AuditLog"
Example
{
"createdAt": "asc",
"eventType": "asc",
"id": "asc",
"storefrontUserId": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
AuditLog_min_order_by
Description
order by min() on columns of table "AuditLog"
Example
{
"createdAt": "asc",
"eventType": "asc",
"id": "asc",
"storefrontUserId": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
BillingAttempt_bool_exp
Description
Boolean expression to filter rows from the table "BillingAttempt". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Subscription - Subscription_bool_exp
|
|
_and - [BillingAttempt_bool_exp!]
|
|
_not - BillingAttempt_bool_exp
|
|
_or - [BillingAttempt_bool_exp!]
|
|
billingAttemptedAt - timestamptz_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
errorCode - String_comparison_exp
|
|
errorMessage - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderPlatformId - String_comparison_exp
|
|
platformId - String_comparison_exp
|
|
subscriptionBillingDate - timestamptz_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Subscription": Subscription_bool_exp,
"_and": [BillingAttempt_bool_exp],
"_not": BillingAttempt_bool_exp,
"_or": [BillingAttempt_bool_exp],
"billingAttemptedAt": timestamptz_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"errorCode": String_comparison_exp,
"errorMessage": String_comparison_exp,
"id": uuid_comparison_exp,
"orderPlatformId": String_comparison_exp,
"platformId": String_comparison_exp,
"subscriptionBillingDate": timestamptz_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Boolean
Boolean_comparison_exp
Description
Boolean expression to compare columns of type "Boolean". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_eq - Boolean
|
|
_gt - Boolean
|
|
_gte - Boolean
|
|
_in - [Boolean!]
|
|
_is_null - Boolean
|
|
_lt - Boolean
|
|
_lte - Boolean
|
|
_neq - Boolean
|
|
_nin - [Boolean!]
|
Example
{
"_eq": false,
"_gt": false,
"_gte": true,
"_in": [true],
"_is_null": false,
"_lt": true,
"_lte": false,
"_neq": false,
"_nin": [false]
}
CancelFlowReason
Description
This table is no longer used. Look at CancelFlowV2Reason instead
Fields
| Field Name | Description |
|---|---|
CancelFlowSession - CancelFlowSession
|
An object relationship |
cancelFlowId - uuid!
|
|
cancelFlowSessionId - uuid
|
|
createdAt - timestamptz!
|
|
id - uuid!
|
|
order - numeric!
|
|
otherReasonBody - String
|
|
reason - String!
|
|
rebuttal - String
|
|
updatedAt - timestamptz!
|
Example
{
"CancelFlowSession": CancelFlowSession,
"cancelFlowId": uuid,
"cancelFlowSessionId": uuid,
"createdAt": timestamptz,
"id": uuid,
"order": numeric,
"otherReasonBody": "xyz789",
"reason": "abc123",
"rebuttal": "abc123",
"updatedAt": timestamptz
}
CancelFlowReason_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowReason". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowSession - CancelFlowSession_bool_exp
|
|
_and - [CancelFlowReason_bool_exp!]
|
|
_not - CancelFlowReason_bool_exp
|
|
_or - [CancelFlowReason_bool_exp!]
|
|
cancelFlowId - uuid_comparison_exp
|
|
cancelFlowSessionId - uuid_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
order - numeric_comparison_exp
|
|
otherReasonBody - String_comparison_exp
|
|
reason - String_comparison_exp
|
|
rebuttal - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"CancelFlowSession": CancelFlowSession_bool_exp,
"_and": [CancelFlowReason_bool_exp],
"_not": CancelFlowReason_bool_exp,
"_or": [CancelFlowReason_bool_exp],
"cancelFlowId": uuid_comparison_exp,
"cancelFlowSessionId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"order": numeric_comparison_exp,
"otherReasonBody": String_comparison_exp,
"reason": String_comparison_exp,
"rebuttal": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
CancelFlowReason_order_by
Description
Ordering options when selecting data from "CancelFlowReason".
Example
{
"CancelFlowSession": CancelFlowSession_order_by,
"cancelFlowId": "asc",
"cancelFlowSessionId": "asc",
"createdAt": "asc",
"id": "asc",
"order": "asc",
"otherReasonBody": "asc",
"reason": "asc",
"rebuttal": "asc",
"updatedAt": "asc"
}
CancelFlowSession
Description
This table is no longer used. Look at CancelFlowV2Session
Fields
| Field Name | Description |
|---|---|
CancelFlowReason - CancelFlowReason
|
An object relationship |
Discounts - [Discount!]!
|
An array relationship |
Subscription - Subscription!
|
An object relationship |
cancelFlowId - uuid!
|
|
createdAt - timestamptz!
|
|
id - uuid!
|
|
status - String
|
|
subscriptionId - uuid!
|
|
updatedAt - timestamptz!
|
Example
{
"CancelFlowReason": CancelFlowReason,
"Discounts": [Discount],
"Subscription": Subscription,
"cancelFlowId": uuid,
"createdAt": timestamptz,
"id": uuid,
"status": "xyz789",
"subscriptionId": uuid,
"updatedAt": timestamptz
}
CancelFlowSession_aggregate_order_by
Description
order by aggregate values of table "CancelFlowSession"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - CancelFlowSession_max_order_by
|
|
min - CancelFlowSession_min_order_by
|
Example
{
"count": "asc",
"max": CancelFlowSession_max_order_by,
"min": CancelFlowSession_min_order_by
}
CancelFlowSession_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowSession". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowReason - CancelFlowReason_bool_exp
|
|
Discounts - Discount_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [CancelFlowSession_bool_exp!]
|
|
_not - CancelFlowSession_bool_exp
|
|
_or - [CancelFlowSession_bool_exp!]
|
|
cancelFlowId - uuid_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
status - String_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"CancelFlowReason": CancelFlowReason_bool_exp,
"Discounts": Discount_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [CancelFlowSession_bool_exp],
"_not": CancelFlowSession_bool_exp,
"_or": [CancelFlowSession_bool_exp],
"cancelFlowId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"status": String_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
CancelFlowSession_max_order_by
Description
order by max() on columns of table "CancelFlowSession"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"id": "asc",
"status": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
CancelFlowSession_min_order_by
Description
order by min() on columns of table "CancelFlowSession"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"id": "asc",
"status": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
CancelFlowSession_order_by
Description
Ordering options when selecting data from "CancelFlowSession".
Fields
| Input Field | Description |
|---|---|
CancelFlowReason - CancelFlowReason_order_by
|
|
Discounts_aggregate - Discount_aggregate_order_by
|
|
Subscription - Subscription_order_by
|
|
cancelFlowId - order_by
|
|
createdAt - order_by
|
|
id - order_by
|
|
status - order_by
|
|
subscriptionId - order_by
|
|
updatedAt - order_by
|
Example
{
"CancelFlowReason": CancelFlowReason_order_by,
"Discounts_aggregate": Discount_aggregate_order_by,
"Subscription": Subscription_order_by,
"cancelFlowId": "asc",
"createdAt": "asc",
"id": "asc",
"status": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
CancelFlowV2Reason
Description
Explanations for fields can be found here https://www.notion.so/CancelFlowV2Reason-Schema-497069ec1c1e4ef1ac6b90e917cc84f7?pvs=4
Fields
| Field Name | Description |
|---|---|
CancelFlowV2Rebuttals - [CancelFlowV2Rebuttal!]!
|
An array relationship |
cancelFlowId - uuid!
|
|
childrenReasonIds - jsonb
|
|
created_at - timestamptz!
|
|
enableCustomerInput - Boolean!
|
|
enabled - Boolean!
|
|
id - uuid!
|
|
isMultipleActions - Boolean!
|
|
parentReasonId - uuid
|
|
reason - String!
|
|
removed_at - timestamptz
|
|
updated_at - timestamptz!
|
Example
{
"CancelFlowV2Rebuttals": [CancelFlowV2Rebuttal],
"cancelFlowId": uuid,
"childrenReasonIds": jsonb,
"created_at": timestamptz,
"enableCustomerInput": true,
"enabled": false,
"id": uuid,
"isMultipleActions": true,
"parentReasonId": uuid,
"reason": "abc123",
"removed_at": timestamptz,
"updated_at": timestamptz
}
CancelFlowV2Reason_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowV2Reason". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowV2Rebuttals - CancelFlowV2Rebuttal_bool_exp
|
|
_and - [CancelFlowV2Reason_bool_exp!]
|
|
_not - CancelFlowV2Reason_bool_exp
|
|
_or - [CancelFlowV2Reason_bool_exp!]
|
|
cancelFlowId - uuid_comparison_exp
|
|
childrenReasonIds - jsonb_comparison_exp
|
|
created_at - timestamptz_comparison_exp
|
|
enableCustomerInput - Boolean_comparison_exp
|
|
enabled - Boolean_comparison_exp
|
|
id - uuid_comparison_exp
|
|
isMultipleActions - Boolean_comparison_exp
|
|
parentReasonId - uuid_comparison_exp
|
|
reason - String_comparison_exp
|
|
removed_at - timestamptz_comparison_exp
|
|
updated_at - timestamptz_comparison_exp
|
Example
{
"CancelFlowV2Rebuttals": CancelFlowV2Rebuttal_bool_exp,
"_and": [CancelFlowV2Reason_bool_exp],
"_not": CancelFlowV2Reason_bool_exp,
"_or": [CancelFlowV2Reason_bool_exp],
"cancelFlowId": uuid_comparison_exp,
"childrenReasonIds": jsonb_comparison_exp,
"created_at": timestamptz_comparison_exp,
"enableCustomerInput": Boolean_comparison_exp,
"enabled": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"isMultipleActions": Boolean_comparison_exp,
"parentReasonId": uuid_comparison_exp,
"reason": String_comparison_exp,
"removed_at": timestamptz_comparison_exp,
"updated_at": timestamptz_comparison_exp
}
CancelFlowV2Rebuttal
Description
Explanations for fields can be found here. https://www.notion.so/CancelFlowV2Rebuttal-Schema-3dd686bbd2e0426da6415d749f265b12?pvs=4
Fields
| Field Name | Description |
|---|---|
CancelFlowV2Reason - CancelFlowV2Reason
|
An object relationship |
action - String!
|
|
actions - jsonb
|
|
cancelFlowReasonId - uuid
|
|
condition - jsonb
|
|
conditionsV2 - jsonb
|
|
created_at - timestamptz!
|
|
enabled - Boolean!
|
|
id - uuid!
|
|
isRebuttalURL - Boolean!
|
|
nextRebuttalId - uuid
|
|
options - jsonb
|
|
parentRebuttalId - uuid
|
|
rebuttal - String!
|
|
rebuttalMediaUrl - String
|
|
removed_at - timestamptz
|
|
treatmentDescriptionHTML - String
|
|
updated_at - timestamptz!
|
Example
{
"CancelFlowV2Reason": CancelFlowV2Reason,
"action": "xyz789",
"actions": jsonb,
"cancelFlowReasonId": uuid,
"condition": jsonb,
"conditionsV2": jsonb,
"created_at": timestamptz,
"enabled": false,
"id": uuid,
"isRebuttalURL": true,
"nextRebuttalId": uuid,
"options": jsonb,
"parentRebuttalId": uuid,
"rebuttal": "xyz789",
"rebuttalMediaUrl": "xyz789",
"removed_at": timestamptz,
"treatmentDescriptionHTML": "abc123",
"updated_at": timestamptz
}
CancelFlowV2Rebuttal_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowV2Rebuttal". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowV2Reason - CancelFlowV2Reason_bool_exp
|
|
_and - [CancelFlowV2Rebuttal_bool_exp!]
|
|
_not - CancelFlowV2Rebuttal_bool_exp
|
|
_or - [CancelFlowV2Rebuttal_bool_exp!]
|
|
action - String_comparison_exp
|
|
actions - jsonb_comparison_exp
|
|
cancelFlowReasonId - uuid_comparison_exp
|
|
condition - jsonb_comparison_exp
|
|
conditionsV2 - jsonb_comparison_exp
|
|
created_at - timestamptz_comparison_exp
|
|
enabled - Boolean_comparison_exp
|
|
id - uuid_comparison_exp
|
|
isRebuttalURL - Boolean_comparison_exp
|
|
nextRebuttalId - uuid_comparison_exp
|
|
options - jsonb_comparison_exp
|
|
parentRebuttalId - uuid_comparison_exp
|
|
rebuttal - String_comparison_exp
|
|
rebuttalMediaUrl - String_comparison_exp
|
|
removed_at - timestamptz_comparison_exp
|
|
treatmentDescriptionHTML - String_comparison_exp
|
|
updated_at - timestamptz_comparison_exp
|
Example
{
"CancelFlowV2Reason": CancelFlowV2Reason_bool_exp,
"_and": [CancelFlowV2Rebuttal_bool_exp],
"_not": CancelFlowV2Rebuttal_bool_exp,
"_or": [CancelFlowV2Rebuttal_bool_exp],
"action": String_comparison_exp,
"actions": jsonb_comparison_exp,
"cancelFlowReasonId": uuid_comparison_exp,
"condition": jsonb_comparison_exp,
"conditionsV2": jsonb_comparison_exp,
"created_at": timestamptz_comparison_exp,
"enabled": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"isRebuttalURL": Boolean_comparison_exp,
"nextRebuttalId": uuid_comparison_exp,
"options": jsonb_comparison_exp,
"parentRebuttalId": uuid_comparison_exp,
"rebuttal": String_comparison_exp,
"rebuttalMediaUrl": String_comparison_exp,
"removed_at": timestamptz_comparison_exp,
"treatmentDescriptionHTML": String_comparison_exp,
"updated_at": timestamptz_comparison_exp
}
CancelFlowV2Session
Description
Explanation for fields can be found here https://www.notion.so/CancelFlowV2Session-Schema-49caa9d13ff14bf9b2d029e9512379eb?pvs=4
Fields
| Field Name | Description |
|---|---|
CancelFlowSession - CancelFlowSession
|
An object relationship |
Site - Site
|
An object relationship |
Subscription - Subscription!
|
An object relationship |
action - String
|
|
actions - jsonb
|
|
actionsV2 - jsonb
|
|
actionsV2MultiStep - jsonb
|
|
cancelFlowId - uuid!
|
|
conditions - jsonb
|
|
conditionsV2 - jsonb
|
|
created_at - timestamptz!
|
|
id - uuid!
|
|
isMultipleActions - Boolean!
|
|
isOtherReason - Boolean!
|
|
isSplashScreen - Boolean
|
|
reason - String
|
|
reasonPath - jsonb
|
|
rebuttal - String
|
|
rebuttalOptions - jsonb
|
|
shownActions - jsonb
|
|
shownReasons - jsonb
|
|
shownRebuttals - jsonb
|
|
siteId - uuid
|
|
status - String
|
|
subscriptionId - uuid!
|
|
updated_at - timestamptz!
|
Example
{
"CancelFlowSession": CancelFlowSession,
"Site": Site,
"Subscription": Subscription,
"action": "abc123",
"actions": jsonb,
"actionsV2": jsonb,
"actionsV2MultiStep": jsonb,
"cancelFlowId": uuid,
"conditions": jsonb,
"conditionsV2": jsonb,
"created_at": timestamptz,
"id": uuid,
"isMultipleActions": true,
"isOtherReason": false,
"isSplashScreen": true,
"reason": "xyz789",
"reasonPath": jsonb,
"rebuttal": "xyz789",
"rebuttalOptions": jsonb,
"shownActions": jsonb,
"shownReasons": jsonb,
"shownRebuttals": jsonb,
"siteId": uuid,
"status": "abc123",
"subscriptionId": uuid,
"updated_at": timestamptz
}
CancelFlowV2Session_aggregate_order_by
Description
order by aggregate values of table "CancelFlowV2Session"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - CancelFlowV2Session_max_order_by
|
|
min - CancelFlowV2Session_min_order_by
|
Example
{
"count": "asc",
"max": CancelFlowV2Session_max_order_by,
"min": CancelFlowV2Session_min_order_by
}
CancelFlowV2Session_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowV2Session". All fields are combined with a logical 'AND'.
Fields
Example
{
"CancelFlowSession": CancelFlowSession_bool_exp,
"Site": Site_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [CancelFlowV2Session_bool_exp],
"_not": CancelFlowV2Session_bool_exp,
"_or": [CancelFlowV2Session_bool_exp],
"action": String_comparison_exp,
"actions": jsonb_comparison_exp,
"actionsV2": jsonb_comparison_exp,
"actionsV2MultiStep": jsonb_comparison_exp,
"cancelFlowId": uuid_comparison_exp,
"conditions": jsonb_comparison_exp,
"conditionsV2": jsonb_comparison_exp,
"created_at": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"isMultipleActions": Boolean_comparison_exp,
"isOtherReason": Boolean_comparison_exp,
"isSplashScreen": Boolean_comparison_exp,
"reason": String_comparison_exp,
"reasonPath": jsonb_comparison_exp,
"rebuttal": String_comparison_exp,
"rebuttalOptions": jsonb_comparison_exp,
"shownActions": jsonb_comparison_exp,
"shownReasons": jsonb_comparison_exp,
"shownRebuttals": jsonb_comparison_exp,
"siteId": uuid_comparison_exp,
"status": String_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updated_at": timestamptz_comparison_exp
}
CancelFlowV2Session_max_order_by
Description
order by max() on columns of table "CancelFlowV2Session"
Example
{
"action": "asc",
"cancelFlowId": "asc",
"created_at": "asc",
"id": "asc",
"reason": "asc",
"rebuttal": "asc",
"siteId": "asc",
"status": "asc",
"subscriptionId": "asc",
"updated_at": "asc"
}
CancelFlowV2Session_min_order_by
Description
order by min() on columns of table "CancelFlowV2Session"
Example
{
"action": "asc",
"cancelFlowId": "asc",
"created_at": "asc",
"id": "asc",
"reason": "asc",
"rebuttal": "asc",
"siteId": "asc",
"status": "asc",
"subscriptionId": "asc",
"updated_at": "asc"
}
CancelFlowV3
Description
columns and relationships of "CancelFlowV3"
Fields
| Field Name | Description |
|---|---|
Site - Site
|
An object relationship |
cancelFlowId - uuid!
|
|
createdAt - timestamptz!
|
|
edges - jsonb!
|
|
enabledAt - timestamptz
|
|
name - String!
|
|
nodes - jsonb!
|
|
ranking - Int!
|
|
settings - jsonb!
|
|
siteId - uuid!
|
|
status - String!
|
|
updatedAt - timestamptz!
|
|
versionNumber - Int!
|
Example
{
"Site": Site,
"cancelFlowId": uuid,
"createdAt": timestamptz,
"edges": jsonb,
"enabledAt": timestamptz,
"name": "abc123",
"nodes": jsonb,
"ranking": 987,
"settings": jsonb,
"siteId": uuid,
"status": "abc123",
"updatedAt": timestamptz,
"versionNumber": 987
}
CancelFlowV3_aggregate_order_by
Description
order by aggregate values of table "CancelFlowV3"
Fields
| Input Field | Description |
|---|---|
avg - CancelFlowV3_avg_order_by
|
|
count - order_by
|
|
max - CancelFlowV3_max_order_by
|
|
min - CancelFlowV3_min_order_by
|
|
stddev - CancelFlowV3_stddev_order_by
|
|
stddev_pop - CancelFlowV3_stddev_pop_order_by
|
|
stddev_samp - CancelFlowV3_stddev_samp_order_by
|
|
sum - CancelFlowV3_sum_order_by
|
|
var_pop - CancelFlowV3_var_pop_order_by
|
|
var_samp - CancelFlowV3_var_samp_order_by
|
|
variance - CancelFlowV3_variance_order_by
|
Example
{
"avg": CancelFlowV3_avg_order_by,
"count": "asc",
"max": CancelFlowV3_max_order_by,
"min": CancelFlowV3_min_order_by,
"stddev": CancelFlowV3_stddev_order_by,
"stddev_pop": CancelFlowV3_stddev_pop_order_by,
"stddev_samp": CancelFlowV3_stddev_samp_order_by,
"sum": CancelFlowV3_sum_order_by,
"var_pop": CancelFlowV3_var_pop_order_by,
"var_samp": CancelFlowV3_var_samp_order_by,
"variance": CancelFlowV3_variance_order_by
}
CancelFlowV3_avg_order_by
CancelFlowV3_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowV3". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [CancelFlowV3_bool_exp!]
|
|
_not - CancelFlowV3_bool_exp
|
|
_or - [CancelFlowV3_bool_exp!]
|
|
cancelFlowId - uuid_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
edges - jsonb_comparison_exp
|
|
enabledAt - timestamptz_comparison_exp
|
|
name - String_comparison_exp
|
|
nodes - jsonb_comparison_exp
|
|
ranking - Int_comparison_exp
|
|
settings - jsonb_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
status - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
|
versionNumber - Int_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [CancelFlowV3_bool_exp],
"_not": CancelFlowV3_bool_exp,
"_or": [CancelFlowV3_bool_exp],
"cancelFlowId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"edges": jsonb_comparison_exp,
"enabledAt": timestamptz_comparison_exp,
"name": String_comparison_exp,
"nodes": jsonb_comparison_exp,
"ranking": Int_comparison_exp,
"settings": jsonb_comparison_exp,
"siteId": uuid_comparison_exp,
"status": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp,
"versionNumber": Int_comparison_exp
}
CancelFlowV3_max_order_by
Description
order by max() on columns of table "CancelFlowV3"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"enabledAt": "asc",
"name": "asc",
"ranking": "asc",
"siteId": "asc",
"status": "asc",
"updatedAt": "asc",
"versionNumber": "asc"
}
CancelFlowV3_min_order_by
Description
order by min() on columns of table "CancelFlowV3"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"enabledAt": "asc",
"name": "asc",
"ranking": "asc",
"siteId": "asc",
"status": "asc",
"updatedAt": "asc",
"versionNumber": "asc"
}
CancelFlowV3_stddev_order_by
CancelFlowV3_stddev_pop_order_by
CancelFlowV3_stddev_samp_order_by
CancelFlowV3_sum_order_by
CancelFlowV3_var_pop_order_by
CancelFlowV3_var_samp_order_by
CancelFlowV3_variance_order_by
CancelFlowV3Session
Description
columns and relationships of "CancelFlowV3Session"
Fields
| Field Name | Description |
|---|---|
CancelFlowV3 - CancelFlowV3
|
An object relationship |
Site - Site
|
An object relationship |
Subscription - Subscription
|
An object relationship |
cancelFlowId - uuid!
|
|
createdAt - timestamptz!
|
|
id - uuid!
|
|
pathTaken - jsonb!
|
|
siteId - uuid!
|
|
status - String
|
|
subscriptionId - uuid!
|
|
type - String!
|
|
updatedAt - timestamptz!
|
|
versionNumber - Int!
|
Example
{
"CancelFlowV3": CancelFlowV3,
"Site": Site,
"Subscription": Subscription,
"cancelFlowId": uuid,
"createdAt": timestamptz,
"id": uuid,
"pathTaken": jsonb,
"siteId": uuid,
"status": "abc123",
"subscriptionId": uuid,
"type": "xyz789",
"updatedAt": timestamptz,
"versionNumber": 123
}
CancelFlowV3Session_aggregate_order_by
Description
order by aggregate values of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
avg - CancelFlowV3Session_avg_order_by
|
|
count - order_by
|
|
max - CancelFlowV3Session_max_order_by
|
|
min - CancelFlowV3Session_min_order_by
|
|
stddev - CancelFlowV3Session_stddev_order_by
|
|
stddev_pop - CancelFlowV3Session_stddev_pop_order_by
|
|
stddev_samp - CancelFlowV3Session_stddev_samp_order_by
|
|
sum - CancelFlowV3Session_sum_order_by
|
|
var_pop - CancelFlowV3Session_var_pop_order_by
|
|
var_samp - CancelFlowV3Session_var_samp_order_by
|
|
variance - CancelFlowV3Session_variance_order_by
|
Example
{
"avg": CancelFlowV3Session_avg_order_by,
"count": "asc",
"max": CancelFlowV3Session_max_order_by,
"min": CancelFlowV3Session_min_order_by,
"stddev": CancelFlowV3Session_stddev_order_by,
"stddev_pop": CancelFlowV3Session_stddev_pop_order_by,
"stddev_samp": CancelFlowV3Session_stddev_samp_order_by,
"sum": CancelFlowV3Session_sum_order_by,
"var_pop": CancelFlowV3Session_var_pop_order_by,
"var_samp": CancelFlowV3Session_var_samp_order_by,
"variance": CancelFlowV3Session_variance_order_by
}
CancelFlowV3Session_avg_order_by
Description
order by avg() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_bool_exp
Description
Boolean expression to filter rows from the table "CancelFlowV3Session". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowV3 - CancelFlowV3_bool_exp
|
|
Site - Site_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [CancelFlowV3Session_bool_exp!]
|
|
_not - CancelFlowV3Session_bool_exp
|
|
_or - [CancelFlowV3Session_bool_exp!]
|
|
cancelFlowId - uuid_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
pathTaken - jsonb_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
status - String_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
type - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
|
versionNumber - Int_comparison_exp
|
Example
{
"CancelFlowV3": CancelFlowV3_bool_exp,
"Site": Site_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [CancelFlowV3Session_bool_exp],
"_not": CancelFlowV3Session_bool_exp,
"_or": [CancelFlowV3Session_bool_exp],
"cancelFlowId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"pathTaken": jsonb_comparison_exp,
"siteId": uuid_comparison_exp,
"status": String_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"type": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp,
"versionNumber": Int_comparison_exp
}
CancelFlowV3Session_max_order_by
Description
order by max() on columns of table "CancelFlowV3Session"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"id": "asc",
"siteId": "asc",
"status": "asc",
"subscriptionId": "asc",
"type": "asc",
"updatedAt": "asc",
"versionNumber": "asc"
}
CancelFlowV3Session_min_order_by
Description
order by min() on columns of table "CancelFlowV3Session"
Example
{
"cancelFlowId": "asc",
"createdAt": "asc",
"id": "asc",
"siteId": "asc",
"status": "asc",
"subscriptionId": "asc",
"type": "asc",
"updatedAt": "asc",
"versionNumber": "asc"
}
CancelFlowV3Session_stddev_order_by
Description
order by stddev() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_sum_order_by
Description
order by sum() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_var_pop_order_by
Description
order by var_pop() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_var_samp_order_by
Description
order by var_samp() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelFlowV3Session_variance_order_by
Description
order by variance() on columns of table "CancelFlowV3Session"
Fields
| Input Field | Description |
|---|---|
versionNumber - order_by
|
Example
{"versionNumber": "asc"}
CancelSubscriptionInput
Example
{
"cancelSessionId": "xyz789",
"invokeSubscriptionCancelJourneys": false,
"permanentlyCancel": false,
"shouldSendNotif": true,
"subscriptionId": uuid
}
CancelSubscriptionOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
CreateSubscriptionCustomAttribute
CreateSubscriptionInput
Fields
| Input Field | Description |
|---|---|
addressId - uuid!
|
|
billingPolicyInfo - CreateSubscriptionPolicyInfo!
|
|
customAttributes - [CreateSubscriptionCustomAttribute!]
|
|
deliveryPriceOverride - Float
|
|
discountCode - String
|
|
nextBillingDate - String
|
|
paymentMethodId - uuid
|
|
prepaidPolicyInfo - CreateSubscriptionPolicyInfo
|
|
storefrontUserId - uuid!
|
|
subscriptionLines - [CreateSubscriptionLine!]!
|
|
subscriptionType - CreateSubscriptionType!
|
Example
{
"addressId": uuid,
"billingPolicyInfo": CreateSubscriptionPolicyInfo,
"customAttributes": [CreateSubscriptionCustomAttribute],
"deliveryPriceOverride": 123.45,
"discountCode": "xyz789",
"nextBillingDate": "xyz789",
"paymentMethodId": uuid,
"prepaidPolicyInfo": CreateSubscriptionPolicyInfo,
"storefrontUserId": uuid,
"subscriptionLines": [CreateSubscriptionLine],
"subscriptionType": "PREPAID"
}
CreateSubscriptionLine
CreateSubscriptionOutput
CreateSubscriptionPolicyInfo
Fields
| Input Field | Description |
|---|---|
interval - SellingPlanIntervalEnum!
|
|
intervalCount - Int!
|
Example
{"interval": "DAY", "intervalCount": 123}
CreateSubscriptionType
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
Example
"PREPAID"
CreditRewards
Description
site credit rewards configuration
Example
{
"Site": Site,
"enabled": true,
"id": uuid,
"removedAt": timestamptz,
"type": "abc123",
"value": jsonb
}
CreditRewards_aggregate_order_by
Description
order by aggregate values of table "CreditRewards"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - CreditRewards_max_order_by
|
|
min - CreditRewards_min_order_by
|
Example
{
"count": "asc",
"max": CreditRewards_max_order_by,
"min": CreditRewards_min_order_by
}
CreditRewards_bool_exp
Description
Boolean expression to filter rows from the table "CreditRewards". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [CreditRewards_bool_exp!]
|
|
_not - CreditRewards_bool_exp
|
|
_or - [CreditRewards_bool_exp!]
|
|
enabled - Boolean_comparison_exp
|
|
id - uuid_comparison_exp
|
|
removedAt - timestamptz_comparison_exp
|
|
type - String_comparison_exp
|
|
value - jsonb_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [CreditRewards_bool_exp],
"_not": CreditRewards_bool_exp,
"_or": [CreditRewards_bool_exp],
"enabled": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"type": String_comparison_exp,
"value": jsonb_comparison_exp
}
CreditRewards_max_order_by
CreditRewards_min_order_by
DailyRevenueMetricsInput
DailyRevenueMetricsOutput
Fields
| Field Name | Description |
|---|---|
revenueMetrics - [DailyRevenueMetricsRow]
|
Example
{"revenueMetrics": [DailyRevenueMetricsRow]}
DailyRevenueMetricsRow
Fields
| Field Name | Description |
|---|---|
activeSubscribersCount - Int
|
|
activeSubscriptionsCount - Int
|
|
allOrders - Int
|
|
allOrdersSubscribers - Int
|
|
cancelledSubscribersCount - Int
|
|
cancelledSubscriptionsCount - Int
|
|
date - String
|
|
domain - String
|
|
failedSubscribersCount - Int
|
|
failedSubscriptionsCount - Int
|
|
firstTimeOrders - Int
|
|
firstTimeRevenue - Float
|
|
firstTimeRevenueOrderLineDiscounts - Float
|
|
firstTimeRevenueOrderLineTaxes - Float
|
|
firstTimeRevenueShippingLine - Float
|
|
firstTimeRevenueShippingLineDiscounts - Float
|
|
firstTimeRevenueShippingLineTaxes - Float
|
|
firstTimeSubscribers - Int
|
|
nonSubscriptionOrders - Int
|
|
nonSubscriptionRevenue - Float
|
|
nonSubscriptionRevenueOrderLineDiscounts - Float
|
|
nonSubscriptionRevenueOrderLineTaxes - Float
|
|
nonSubscriptionRevenueShippingLine - Float
|
|
nonSubscriptionRevenueShippingLineDiscounts - Float
|
|
nonSubscriptionRevenueShippingLineTaxes - Float
|
|
nonSubscriptionSubscribers - Int
|
|
oneTimeOrders - Int
|
|
oneTimeRevenue - Float
|
|
oneTimeRevenueOrderLineDiscounts - Float
|
|
oneTimeRevenueOrderLineTaxes - Float
|
|
oneTimeSubscribers - Int
|
|
pausedSubscribersCount - Int
|
|
pausedSubscriptionsCount - Int
|
|
recurringOrders - Int
|
|
recurringRevenue - Float
|
|
recurringRevenueOrderLineDiscounts - Float
|
|
recurringRevenueOrderLineTaxes - Float
|
|
recurringRevenueShippingLine - Float
|
|
recurringRevenueShippingLineDiscounts - Float
|
|
recurringRevenueShippingLineTaxes - Float
|
|
recurringSubscribers - Int
|
|
siteId - String
|
Example
{
"activeSubscribersCount": 987,
"activeSubscriptionsCount": 123,
"allOrders": 123,
"allOrdersSubscribers": 123,
"cancelledSubscribersCount": 123,
"cancelledSubscriptionsCount": 987,
"date": "abc123",
"domain": "abc123",
"failedSubscribersCount": 987,
"failedSubscriptionsCount": 123,
"firstTimeOrders": 987,
"firstTimeRevenue": 987.65,
"firstTimeRevenueOrderLineDiscounts": 123.45,
"firstTimeRevenueOrderLineTaxes": 123.45,
"firstTimeRevenueShippingLine": 123.45,
"firstTimeRevenueShippingLineDiscounts": 987.65,
"firstTimeRevenueShippingLineTaxes": 987.65,
"firstTimeSubscribers": 123,
"nonSubscriptionOrders": 987,
"nonSubscriptionRevenue": 987.65,
"nonSubscriptionRevenueOrderLineDiscounts": 987.65,
"nonSubscriptionRevenueOrderLineTaxes": 123.45,
"nonSubscriptionRevenueShippingLine": 123.45,
"nonSubscriptionRevenueShippingLineDiscounts": 987.65,
"nonSubscriptionRevenueShippingLineTaxes": 987.65,
"nonSubscriptionSubscribers": 987,
"oneTimeOrders": 123,
"oneTimeRevenue": 987.65,
"oneTimeRevenueOrderLineDiscounts": 987.65,
"oneTimeRevenueOrderLineTaxes": 987.65,
"oneTimeSubscribers": 123,
"pausedSubscribersCount": 987,
"pausedSubscriptionsCount": 123,
"recurringOrders": 987,
"recurringRevenue": 987.65,
"recurringRevenueOrderLineDiscounts": 123.45,
"recurringRevenueOrderLineTaxes": 987.65,
"recurringRevenueShippingLine": 987.65,
"recurringRevenueShippingLineDiscounts": 987.65,
"recurringRevenueShippingLineTaxes": 987.65,
"recurringSubscribers": 987,
"siteId": "xyz789"
}
Discount_aggregate_order_by
Description
order by aggregate values of table "Discount"
Fields
| Input Field | Description |
|---|---|
avg - Discount_avg_order_by
|
|
count - order_by
|
|
max - Discount_max_order_by
|
|
min - Discount_min_order_by
|
|
stddev - Discount_stddev_order_by
|
|
stddev_pop - Discount_stddev_pop_order_by
|
|
stddev_samp - Discount_stddev_samp_order_by
|
|
sum - Discount_sum_order_by
|
|
var_pop - Discount_var_pop_order_by
|
|
var_samp - Discount_var_samp_order_by
|
|
variance - Discount_variance_order_by
|
Example
{
"avg": Discount_avg_order_by,
"count": "asc",
"max": Discount_max_order_by,
"min": Discount_min_order_by,
"stddev": Discount_stddev_order_by,
"stddev_pop": Discount_stddev_pop_order_by,
"stddev_samp": Discount_stddev_samp_order_by,
"sum": Discount_sum_order_by,
"var_pop": Discount_var_pop_order_by,
"var_samp": Discount_var_samp_order_by,
"variance": Discount_variance_order_by
}
Discount_avg_order_by
Description
order by avg() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_bool_exp
Description
Boolean expression to filter rows from the table "Discount". All fields are combined with a logical 'AND'.
Fields
Example
{
"CancelFlowSession": CancelFlowSession_bool_exp,
"OrderLineItem": OrderLineItem_bool_exp,
"ShippingLine": ShippingLine_bool_exp,
"Subscription": Subscription_bool_exp,
"SubscriptionLine": SubscriptionLine_bool_exp,
"_and": [Discount_bool_exp],
"_not": Discount_bool_exp,
"_or": [Discount_bool_exp],
"allocationPresentmentAmount": numeric_comparison_exp,
"allocationPresentmentCurrencyCode": String_comparison_exp,
"appliesOnEachItem": Boolean_comparison_exp,
"cancelFlowSessionId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"fixedValue": numeric_comparison_exp,
"id": uuid_comparison_exp,
"maxTimesUsed": Int_comparison_exp,
"orderLineItemId": uuid_comparison_exp,
"percentage": numeric_comparison_exp,
"platformId": String_comparison_exp,
"redeemCode": String_comparison_exp,
"shippingLineId": uuid_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"subscriptionLineId": uuid_comparison_exp,
"timesUsed": Int_comparison_exp,
"title": String_comparison_exp,
"type": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Discount_max_order_by
Description
order by max() on columns of table "Discount"
Fields
| Input Field | Description |
|---|---|
allocationPresentmentAmount - order_by
|
|
allocationPresentmentCurrencyCode - order_by
|
|
cancelFlowSessionId - order_by
|
|
createdAt - order_by
|
|
fixedValue - order_by
|
|
id - order_by
|
|
maxTimesUsed - order_by
|
|
orderLineItemId - order_by
|
|
percentage - order_by
|
|
platformId - order_by
|
|
redeemCode - order_by
|
|
shippingLineId - order_by
|
|
subscriptionId - order_by
|
|
subscriptionLineId - order_by
|
|
timesUsed - order_by
|
|
title - order_by
|
|
type - order_by
|
|
updatedAt - order_by
|
Example
{
"allocationPresentmentAmount": "asc",
"allocationPresentmentCurrencyCode": "asc",
"cancelFlowSessionId": "asc",
"createdAt": "asc",
"fixedValue": "asc",
"id": "asc",
"maxTimesUsed": "asc",
"orderLineItemId": "asc",
"percentage": "asc",
"platformId": "asc",
"redeemCode": "asc",
"shippingLineId": "asc",
"subscriptionId": "asc",
"subscriptionLineId": "asc",
"timesUsed": "asc",
"title": "asc",
"type": "asc",
"updatedAt": "asc"
}
Discount_min_order_by
Description
order by min() on columns of table "Discount"
Fields
| Input Field | Description |
|---|---|
allocationPresentmentAmount - order_by
|
|
allocationPresentmentCurrencyCode - order_by
|
|
cancelFlowSessionId - order_by
|
|
createdAt - order_by
|
|
fixedValue - order_by
|
|
id - order_by
|
|
maxTimesUsed - order_by
|
|
orderLineItemId - order_by
|
|
percentage - order_by
|
|
platformId - order_by
|
|
redeemCode - order_by
|
|
shippingLineId - order_by
|
|
subscriptionId - order_by
|
|
subscriptionLineId - order_by
|
|
timesUsed - order_by
|
|
title - order_by
|
|
type - order_by
|
|
updatedAt - order_by
|
Example
{
"allocationPresentmentAmount": "asc",
"allocationPresentmentCurrencyCode": "asc",
"cancelFlowSessionId": "asc",
"createdAt": "asc",
"fixedValue": "asc",
"id": "asc",
"maxTimesUsed": "asc",
"orderLineItemId": "asc",
"percentage": "asc",
"platformId": "asc",
"redeemCode": "asc",
"shippingLineId": "asc",
"subscriptionId": "asc",
"subscriptionLineId": "asc",
"timesUsed": "asc",
"title": "asc",
"type": "asc",
"updatedAt": "asc"
}
Discount_stddev_order_by
Description
order by stddev() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_sum_order_by
Description
order by sum() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_var_pop_order_by
Description
order by var_pop() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_var_samp_order_by
Description
order by var_samp() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
Discount_variance_order_by
Description
order by variance() on columns of table "Discount"
Example
{
"allocationPresentmentAmount": "asc",
"fixedValue": "asc",
"maxTimesUsed": "asc",
"percentage": "asc",
"timesUsed": "asc"
}
DynamicBox
Description
columns and relationships of "DynamicBox"
Example
{
"DynamicBox_SelectableProductVariants": [
DynamicBox_SelectableProductVariant
],
"Product": Product,
"fixedDiscount": jsonb,
"id": uuid,
"percentDiscount": jsonb,
"sizeInterval": jsonb,
"sizeRange": jsonb
}
DynamicBox_bool_exp
Description
Boolean expression to filter rows from the table "DynamicBox". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
DynamicBox_SelectableProductVariants - DynamicBox_SelectableProductVariant_bool_exp
|
|
Product - Product_bool_exp
|
|
_and - [DynamicBox_bool_exp!]
|
|
_not - DynamicBox_bool_exp
|
|
_or - [DynamicBox_bool_exp!]
|
|
fixedDiscount - jsonb_comparison_exp
|
|
id - uuid_comparison_exp
|
|
percentDiscount - jsonb_comparison_exp
|
|
sizeInterval - jsonb_comparison_exp
|
|
sizeRange - jsonb_comparison_exp
|
Example
{
"DynamicBox_SelectableProductVariants": DynamicBox_SelectableProductVariant_bool_exp,
"Product": Product_bool_exp,
"_and": [DynamicBox_bool_exp],
"_not": DynamicBox_bool_exp,
"_or": [DynamicBox_bool_exp],
"fixedDiscount": jsonb_comparison_exp,
"id": uuid_comparison_exp,
"percentDiscount": jsonb_comparison_exp,
"sizeInterval": jsonb_comparison_exp,
"sizeRange": jsonb_comparison_exp
}
DynamicBox_order_by
Description
Ordering options when selecting data from "DynamicBox".
Fields
| Input Field | Description |
|---|---|
DynamicBox_SelectableProductVariants_aggregate - DynamicBox_SelectableProductVariant_aggregate_order_by
|
|
Product - Product_order_by
|
|
fixedDiscount - order_by
|
|
id - order_by
|
|
percentDiscount - order_by
|
|
sizeInterval - order_by
|
|
sizeRange - order_by
|
Example
{
"DynamicBox_SelectableProductVariants_aggregate": DynamicBox_SelectableProductVariant_aggregate_order_by,
"Product": Product_order_by,
"fixedDiscount": "asc",
"id": "asc",
"percentDiscount": "asc",
"sizeInterval": "asc",
"sizeRange": "asc"
}
DynamicBox_SelectableProductVariant
Description
columns and relationships of "DynamicBox_SelectableProductVariant"
Fields
| Field Name | Description |
|---|---|
DynamicBox - DynamicBox!
|
An object relationship |
SelectableProductVariant - ProductVariant!
|
An object relationship |
deletedAt - timestamp
|
|
dynamicBoxId - uuid!
|
|
productVariantId - uuid!
|
Example
{
"DynamicBox": DynamicBox,
"SelectableProductVariant": ProductVariant,
"deletedAt": timestamp,
"dynamicBoxId": uuid,
"productVariantId": uuid
}
DynamicBox_SelectableProductVariant_aggregate_order_by
Description
order by aggregate values of table "DynamicBox_SelectableProductVariant"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - DynamicBox_SelectableProductVariant_max_order_by
|
|
min - DynamicBox_SelectableProductVariant_min_order_by
|
Example
{
"count": "asc",
"max": DynamicBox_SelectableProductVariant_max_order_by,
"min": DynamicBox_SelectableProductVariant_min_order_by
}
DynamicBox_SelectableProductVariant_bool_exp
Description
Boolean expression to filter rows from the table "DynamicBox_SelectableProductVariant". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
DynamicBox - DynamicBox_bool_exp
|
|
SelectableProductVariant - ProductVariant_bool_exp
|
|
_and - [DynamicBox_SelectableProductVariant_bool_exp!]
|
|
_not - DynamicBox_SelectableProductVariant_bool_exp
|
|
_or - [DynamicBox_SelectableProductVariant_bool_exp!]
|
|
deletedAt - timestamp_comparison_exp
|
|
dynamicBoxId - uuid_comparison_exp
|
|
productVariantId - uuid_comparison_exp
|
Example
{
"DynamicBox": DynamicBox_bool_exp,
"SelectableProductVariant": ProductVariant_bool_exp,
"_and": [DynamicBox_SelectableProductVariant_bool_exp],
"_not": DynamicBox_SelectableProductVariant_bool_exp,
"_or": [DynamicBox_SelectableProductVariant_bool_exp],
"deletedAt": timestamp_comparison_exp,
"dynamicBoxId": uuid_comparison_exp,
"productVariantId": uuid_comparison_exp
}
DynamicBox_SelectableProductVariant_max_order_by
DynamicBox_SelectableProductVariant_min_order_by
DynamicBoxConfigInput
DynamicBoxContentInput
Float
Example
123.45
Float_comparison_exp
Description
Boolean expression to compare columns of type "Float". All fields are combined with logical 'AND'.
Example
{
"_eq": 987.65,
"_gt": 987.65,
"_gte": 987.65,
"_in": [987.65],
"_is_null": true,
"_lt": 987.65,
"_lte": 123.45,
"_neq": 987.65,
"_nin": [123.45]
}
GenerateMagicLinkInput
GenerateMagicLinkOutput
GenerateQuickActionTokenOutput
Fields
| Field Name | Description |
|---|---|
qaToken - String!
|
Example
{"qaToken": "abc123"}
GetCustomerCreditBalanceInput
GetCustomerCreditBalanceOutput
Example
{
"credits": 987.65,
"currencyCode": "xyz789",
"currencyStringValue": "abc123",
"currencyValue": 123.45,
"siteCurrencyCode": "abc123",
"siteCurrencyStringValue": "xyz789",
"siteCurrencyValue": 123.45,
"storefrontUserId": "xyz789"
}
Holiday
Holiday_aggregate_order_by
Description
order by aggregate values of table "Holiday"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - Holiday_max_order_by
|
|
min - Holiday_min_order_by
|
Example
{
"count": "asc",
"max": Holiday_max_order_by,
"min": Holiday_min_order_by
}
Holiday_bool_exp
Description
Boolean expression to filter rows from the table "Holiday". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [Holiday_bool_exp!]
|
|
_not - Holiday_bool_exp
|
|
_or - [Holiday_bool_exp!]
|
|
id - uuid_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [Holiday_bool_exp],
"_not": Holiday_bool_exp,
"_or": [Holiday_bool_exp],
"id": uuid_comparison_exp
}
Holiday_max_order_by
Description
order by max() on columns of table "Holiday"
Fields
| Input Field | Description |
|---|---|
id - order_by
|
Example
{"id": "asc"}
Holiday_min_order_by
Description
order by min() on columns of table "Holiday"
Fields
| Input Field | Description |
|---|---|
id - order_by
|
Example
{"id": "asc"}
Int
Example
987
Int_comparison_exp
Description
Boolean expression to compare columns of type "Int". All fields are combined with logical 'AND'.
Example
{
"_eq": 987,
"_gt": 123,
"_gte": 123,
"_in": [987],
"_is_null": true,
"_lt": 987,
"_lte": 987,
"_neq": 123,
"_nin": [123]
}
JourneyLandingPage_bool_exp
Description
Boolean expression to filter rows from the table "JourneyLandingPage". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
QuickActionsV3Stack - QuickActionsV3Stack_bool_exp
|
|
Site - Site_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [JourneyLandingPage_bool_exp!]
|
|
_not - JourneyLandingPage_bool_exp
|
|
_or - [JourneyLandingPage_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
expirationDate - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
journeyId - uuid_comparison_exp
|
|
journeyVersionId - uuid_comparison_exp
|
|
quickActionsStackId - uuid_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"QuickActionsV3Stack": QuickActionsV3Stack_bool_exp,
"Site": Site_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [JourneyLandingPage_bool_exp],
"_not": JourneyLandingPage_bool_exp,
"_or": [JourneyLandingPage_bool_exp],
"createdAt": timestamptz_comparison_exp,
"expirationDate": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"journeyId": uuid_comparison_exp,
"journeyVersionId": uuid_comparison_exp,
"quickActionsStackId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
jsonb
Example
jsonb
jsonb_cast_exp
Fields
| Input Field | Description |
|---|---|
String - String_comparison_exp
|
Example
{"String": String_comparison_exp}
jsonb_comparison_exp
Description
Boolean expression to compare columns of type "jsonb". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_cast - jsonb_cast_exp
|
|
_contained_in - jsonb
|
is the column contained in the given json value |
_contains - jsonb
|
does the column contain the given json value at the top level |
_eq - jsonb
|
|
_gt - jsonb
|
|
_gte - jsonb
|
|
_has_key - String
|
does the string exist as a top-level key in the column |
_has_keys_all - [String!]
|
do all of these strings exist as top-level keys in the column |
_has_keys_any - [String!]
|
do any of these strings exist as top-level keys in the column |
_in - [jsonb!]
|
|
_is_null - Boolean
|
|
_jsonb_path_exists - String
|
does the jsonpath return any item for the specified JSON value |
_jsonb_path_match - String
|
does the jsonpath predicate check return true for the specified JSON value |
_lt - jsonb
|
|
_lte - jsonb
|
|
_neq - jsonb
|
|
_nin - [jsonb!]
|
Example
{
"_cast": jsonb_cast_exp,
"_contained_in": jsonb,
"_contains": jsonb,
"_eq": jsonb,
"_gt": jsonb,
"_gte": jsonb,
"_has_key": "abc123",
"_has_keys_all": ["xyz789"],
"_has_keys_any": ["xyz789"],
"_in": [jsonb],
"_is_null": false,
"_jsonb_path_exists": "abc123",
"_jsonb_path_match": "abc123",
"_lt": jsonb,
"_lte": jsonb,
"_neq": jsonb,
"_nin": [jsonb]
}
Notification
Description
columns and relationships of "Notification"
Fields
| Field Name | Description |
|---|---|
NotificationLogs - [NotificationLog!]!
|
An array relationship |
Site - Site!
|
An object relationship |
enabledAt - timestamp
|
Time that the notification was last enabled, not updated on other updates |
id - uuid!
|
Example
{
"NotificationLogs": [NotificationLog],
"Site": Site,
"enabledAt": timestamp,
"id": uuid
}
Notification_aggregate_order_by
Description
order by aggregate values of table "Notification"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - Notification_max_order_by
|
|
min - Notification_min_order_by
|
Example
{
"count": "asc",
"max": Notification_max_order_by,
"min": Notification_min_order_by
}
Notification_bool_exp
Description
Boolean expression to filter rows from the table "Notification". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
NotificationLogs - NotificationLog_bool_exp
|
|
Site - Site_bool_exp
|
|
_and - [Notification_bool_exp!]
|
|
_not - Notification_bool_exp
|
|
_or - [Notification_bool_exp!]
|
|
enabledAt - timestamp_comparison_exp
|
|
id - uuid_comparison_exp
|
Example
{
"NotificationLogs": NotificationLog_bool_exp,
"Site": Site_bool_exp,
"_and": [Notification_bool_exp],
"_not": Notification_bool_exp,
"_or": [Notification_bool_exp],
"enabledAt": timestamp_comparison_exp,
"id": uuid_comparison_exp
}
Notification_max_order_by
Notification_min_order_by
NotificationLog
Description
columns and relationships of "NotificationLog"
Fields
| Field Name | Description |
|---|---|
Notification - Notification!
|
An object relationship |
StorefrontUser - StorefrontUser
|
An object relationship |
Subscription - Subscription
|
An object relationship |
body - String
|
|
createdAt - timestamptz!
|
|
deliveredAt - timestamptz
|
|
email - String
|
|
id - uuid!
|
|
notificationId - uuid!
|
|
phoneNumber - String
|
|
status - String
|
|
subject - String
|
|
subscriptionId - uuid
|
|
updatedAt - timestamptz!
|
Example
{
"Notification": Notification,
"StorefrontUser": StorefrontUser,
"Subscription": Subscription,
"body": "xyz789",
"createdAt": timestamptz,
"deliveredAt": timestamptz,
"email": "abc123",
"id": uuid,
"notificationId": uuid,
"phoneNumber": "xyz789",
"status": "abc123",
"subject": "xyz789",
"subscriptionId": uuid,
"updatedAt": timestamptz
}
NotificationLog_aggregate_order_by
Description
order by aggregate values of table "NotificationLog"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - NotificationLog_max_order_by
|
|
min - NotificationLog_min_order_by
|
Example
{
"count": "asc",
"max": NotificationLog_max_order_by,
"min": NotificationLog_min_order_by
}
NotificationLog_bool_exp
Description
Boolean expression to filter rows from the table "NotificationLog". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Notification - Notification_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [NotificationLog_bool_exp!]
|
|
_not - NotificationLog_bool_exp
|
|
_or - [NotificationLog_bool_exp!]
|
|
body - String_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
deliveredAt - timestamptz_comparison_exp
|
|
email - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
notificationId - uuid_comparison_exp
|
|
phoneNumber - String_comparison_exp
|
|
status - String_comparison_exp
|
|
subject - String_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Notification": Notification_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [NotificationLog_bool_exp],
"_not": NotificationLog_bool_exp,
"_or": [NotificationLog_bool_exp],
"body": String_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"deliveredAt": timestamptz_comparison_exp,
"email": String_comparison_exp,
"id": uuid_comparison_exp,
"notificationId": uuid_comparison_exp,
"phoneNumber": String_comparison_exp,
"status": String_comparison_exp,
"subject": String_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
NotificationLog_max_order_by
Description
order by max() on columns of table "NotificationLog"
Example
{
"body": "asc",
"createdAt": "asc",
"deliveredAt": "asc",
"email": "asc",
"id": "asc",
"notificationId": "asc",
"phoneNumber": "asc",
"status": "asc",
"subject": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
NotificationLog_min_order_by
Description
order by min() on columns of table "NotificationLog"
Example
{
"body": "asc",
"createdAt": "asc",
"deliveredAt": "asc",
"email": "asc",
"id": "asc",
"notificationId": "asc",
"phoneNumber": "asc",
"status": "asc",
"subject": "asc",
"subscriptionId": "asc",
"updatedAt": "asc"
}
numeric
Example
numeric
numeric_comparison_exp
Description
Boolean expression to compare columns of type "numeric". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_eq - numeric
|
|
_gt - numeric
|
|
_gte - numeric
|
|
_in - [numeric!]
|
|
_is_null - Boolean
|
|
_lt - numeric
|
|
_lte - numeric
|
|
_neq - numeric
|
|
_nin - [numeric!]
|
Example
{
"_eq": numeric,
"_gt": numeric,
"_gte": numeric,
"_in": [numeric],
"_is_null": false,
"_lt": numeric,
"_lte": numeric,
"_neq": numeric,
"_nin": [numeric]
}
Order_aggregate_order_by
Description
order by aggregate values of table "Order"
Fields
| Input Field | Description |
|---|---|
avg - Order_avg_order_by
|
|
count - order_by
|
|
max - Order_max_order_by
|
|
min - Order_min_order_by
|
|
stddev - Order_stddev_order_by
|
|
stddev_pop - Order_stddev_pop_order_by
|
|
stddev_samp - Order_stddev_samp_order_by
|
|
sum - Order_sum_order_by
|
|
var_pop - Order_var_pop_order_by
|
|
var_samp - Order_var_samp_order_by
|
|
variance - Order_variance_order_by
|
Example
{
"avg": Order_avg_order_by,
"count": "asc",
"max": Order_max_order_by,
"min": Order_min_order_by,
"stddev": Order_stddev_order_by,
"stddev_pop": Order_stddev_pop_order_by,
"stddev_samp": Order_stddev_samp_order_by,
"sum": Order_sum_order_by,
"var_pop": Order_var_pop_order_by,
"var_samp": Order_var_samp_order_by,
"variance": Order_variance_order_by
}
Order_avg_order_by
Description
order by avg() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_bool_exp
Description
Boolean expression to filter rows from the table "Order". All fields are combined with a logical 'AND'.
Fields
Example
{
"OrderDiscountApplications": OrderDiscountApplication_bool_exp,
"OrderLineItems": OrderLineItem_bool_exp,
"OriginSubscriptions": Subscription_bool_exp,
"PrepaidSubscription": Subscription_bool_exp,
"ShippingAddress": Address_bool_exp,
"ShippingLines": ShippingLine_bool_exp,
"Site": Site_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Subscription": Subscription_bool_exp,
"Tags": TagRelationship_bool_exp,
"_and": [Order_bool_exp],
"_not": Order_bool_exp,
"_or": [Order_bool_exp],
"appId": String_comparison_exp,
"cancelledAt": timestamptz_comparison_exp,
"clientIp": String_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"currencyCode": String_comparison_exp,
"deletedAt": timestamptz_comparison_exp,
"deliveredAt": timestamptz_comparison_exp,
"firstOrderInPrepaidSequence": Boolean_comparison_exp,
"fulfillAt": timestamptz_comparison_exp,
"fulfillmentOrderCredit": Float_comparison_exp,
"id": uuid_comparison_exp,
"name": String_comparison_exp,
"note": String_comparison_exp,
"platformId": String_comparison_exp,
"platformNumber": String_comparison_exp,
"prepaidSubscriptionId": uuid_comparison_exp,
"processedAt": timestamptz_comparison_exp,
"shippingAddressId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"taxExempt": Boolean_comparison_exp,
"taxesIncluded": Boolean_comparison_exp,
"totalPrice": Float_comparison_exp,
"totalPricePresentmentAmount": Float_comparison_exp,
"updatedAt": timestamp_comparison_exp
}
order_by
Description
column ordering options
Values
| Enum Value | Description |
|---|---|
|
|
in ascending order, nulls last |
|
|
in ascending order, nulls first |
|
|
in ascending order, nulls last |
|
|
in descending order, nulls first |
|
|
in descending order, nulls first |
|
|
in descending order, nulls last |
Example
"asc"
Order_max_order_by
Description
order by max() on columns of table "Order"
Fields
| Input Field | Description |
|---|---|
appId - order_by
|
|
cancelledAt - order_by
|
|
clientIp - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
Set to customer currency code (same currency as presentmentAmount) |
deletedAt - order_by
|
|
deliveredAt - order_by
|
|
fulfillAt - order_by
|
|
fulfillmentOrderCredit - order_by
|
|
id - order_by
|
|
name - order_by
|
|
note - order_by
|
|
platformId - order_by
|
|
platformNumber - order_by
|
|
prepaidSubscriptionId - order_by
|
|
processedAt - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
storefrontUserId - order_by
|
|
subscriptionId - order_by
|
DEAD COLUMN — added May 2025 (#14439) but never written by any code path; always null. Do not build logic on this field. To detect subscription orders, use OrderLineItems -> SubscriptionLine. |
totalPrice - order_by
|
Total order price in the site currency code |
totalPricePresentmentAmount - order_by
|
In customers currency code (set in currencyCode field) |
updatedAt - order_by
|
Example
{
"appId": "asc",
"cancelledAt": "asc",
"clientIp": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"deletedAt": "asc",
"deliveredAt": "asc",
"fulfillAt": "asc",
"fulfillmentOrderCredit": "asc",
"id": "asc",
"name": "asc",
"note": "asc",
"platformId": "asc",
"platformNumber": "asc",
"prepaidSubscriptionId": "asc",
"processedAt": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"storefrontUserId": "asc",
"subscriptionId": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc",
"updatedAt": "asc"
}
Order_min_order_by
Description
order by min() on columns of table "Order"
Fields
| Input Field | Description |
|---|---|
appId - order_by
|
|
cancelledAt - order_by
|
|
clientIp - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
Set to customer currency code (same currency as presentmentAmount) |
deletedAt - order_by
|
|
deliveredAt - order_by
|
|
fulfillAt - order_by
|
|
fulfillmentOrderCredit - order_by
|
|
id - order_by
|
|
name - order_by
|
|
note - order_by
|
|
platformId - order_by
|
|
platformNumber - order_by
|
|
prepaidSubscriptionId - order_by
|
|
processedAt - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
storefrontUserId - order_by
|
|
subscriptionId - order_by
|
DEAD COLUMN — added May 2025 (#14439) but never written by any code path; always null. Do not build logic on this field. To detect subscription orders, use OrderLineItems -> SubscriptionLine. |
totalPrice - order_by
|
Total order price in the site currency code |
totalPricePresentmentAmount - order_by
|
In customers currency code (set in currencyCode field) |
updatedAt - order_by
|
Example
{
"appId": "asc",
"cancelledAt": "asc",
"clientIp": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"deletedAt": "asc",
"deliveredAt": "asc",
"fulfillAt": "asc",
"fulfillmentOrderCredit": "asc",
"id": "asc",
"name": "asc",
"note": "asc",
"platformId": "asc",
"platformNumber": "asc",
"prepaidSubscriptionId": "asc",
"processedAt": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"storefrontUserId": "asc",
"subscriptionId": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc",
"updatedAt": "asc"
}
Order_order_by
Description
Ordering options when selecting data from "Order".
Fields
| Input Field | Description |
|---|---|
OrderDiscountApplications_aggregate - OrderDiscountApplication_aggregate_order_by
|
|
OrderLineItems_aggregate - OrderLineItem_aggregate_order_by
|
|
OriginSubscriptions_aggregate - Subscription_aggregate_order_by
|
|
PrepaidSubscription - Subscription_order_by
|
|
ShippingAddress - Address_order_by
|
|
ShippingLines_aggregate - ShippingLine_aggregate_order_by
|
|
Site - Site_order_by
|
|
StorefrontUser - StorefrontUser_order_by
|
|
Subscription - Subscription_order_by
|
|
Tags_aggregate - TagRelationship_aggregate_order_by
|
|
appId - order_by
|
|
cancelledAt - order_by
|
|
clientIp - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
deletedAt - order_by
|
|
deliveredAt - order_by
|
|
firstOrderInPrepaidSequence - order_by
|
|
fulfillAt - order_by
|
|
fulfillmentOrderCredit - order_by
|
|
id - order_by
|
|
name - order_by
|
|
note - order_by
|
|
platformId - order_by
|
|
platformNumber - order_by
|
|
prepaidSubscriptionId - order_by
|
|
processedAt - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
storefrontUserId - order_by
|
|
subscriptionId - order_by
|
|
taxExempt - order_by
|
|
taxesIncluded - order_by
|
|
totalPrice - order_by
|
|
totalPricePresentmentAmount - order_by
|
|
updatedAt - order_by
|
Example
{
"OrderDiscountApplications_aggregate": OrderDiscountApplication_aggregate_order_by,
"OrderLineItems_aggregate": OrderLineItem_aggregate_order_by,
"OriginSubscriptions_aggregate": Subscription_aggregate_order_by,
"PrepaidSubscription": Subscription_order_by,
"ShippingAddress": Address_order_by,
"ShippingLines_aggregate": ShippingLine_aggregate_order_by,
"Site": Site_order_by,
"StorefrontUser": StorefrontUser_order_by,
"Subscription": Subscription_order_by,
"Tags_aggregate": TagRelationship_aggregate_order_by,
"appId": "asc",
"cancelledAt": "asc",
"clientIp": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"deletedAt": "asc",
"deliveredAt": "asc",
"firstOrderInPrepaidSequence": "asc",
"fulfillAt": "asc",
"fulfillmentOrderCredit": "asc",
"id": "asc",
"name": "asc",
"note": "asc",
"platformId": "asc",
"platformNumber": "asc",
"prepaidSubscriptionId": "asc",
"processedAt": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"storefrontUserId": "asc",
"subscriptionId": "asc",
"taxExempt": "asc",
"taxesIncluded": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc",
"updatedAt": "asc"
}
Order_select_column
Description
select columns of table "Order"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"appId"
Order_stddev_order_by
Description
order by stddev() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_sum_order_by
Description
order by sum() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_var_pop_order_by
Description
order by var_pop() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_var_samp_order_by
Description
order by var_samp() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
Order_variance_order_by
Description
order by variance() on columns of table "Order"
Example
{
"fulfillmentOrderCredit": "asc",
"totalPrice": "asc",
"totalPricePresentmentAmount": "asc"
}
OrderDiscountApplication
Description
columns and relationships of "OrderDiscountApplication"
Fields
| Field Name | Description |
|---|---|
Order - Order!
|
An object relationship |
allocationMethod - String!
|
|
code - String
|
|
created_at - timestamptz!
|
|
currencyCode - String
|
|
fixedValue - numeric
|
|
id - uuid!
|
|
index - numeric!
|
|
orderId - uuid!
|
|
percentage - numeric
|
|
targetSelection - String!
|
|
targetType - String!
|
|
title - String
|
|
type - String
|
|
updated_at - timestamptz!
|
Example
{
"Order": Order,
"allocationMethod": "xyz789",
"code": "abc123",
"created_at": timestamptz,
"currencyCode": "abc123",
"fixedValue": numeric,
"id": uuid,
"index": numeric,
"orderId": uuid,
"percentage": numeric,
"targetSelection": "abc123",
"targetType": "abc123",
"title": "xyz789",
"type": "xyz789",
"updated_at": timestamptz
}
OrderDiscountApplication_aggregate_order_by
Description
order by aggregate values of table "OrderDiscountApplication"
Fields
| Input Field | Description |
|---|---|
avg - OrderDiscountApplication_avg_order_by
|
|
count - order_by
|
|
max - OrderDiscountApplication_max_order_by
|
|
min - OrderDiscountApplication_min_order_by
|
|
stddev - OrderDiscountApplication_stddev_order_by
|
|
stddev_pop - OrderDiscountApplication_stddev_pop_order_by
|
|
stddev_samp - OrderDiscountApplication_stddev_samp_order_by
|
|
sum - OrderDiscountApplication_sum_order_by
|
|
var_pop - OrderDiscountApplication_var_pop_order_by
|
|
var_samp - OrderDiscountApplication_var_samp_order_by
|
|
variance - OrderDiscountApplication_variance_order_by
|
Example
{
"avg": OrderDiscountApplication_avg_order_by,
"count": "asc",
"max": OrderDiscountApplication_max_order_by,
"min": OrderDiscountApplication_min_order_by,
"stddev": OrderDiscountApplication_stddev_order_by,
"stddev_pop": OrderDiscountApplication_stddev_pop_order_by,
"stddev_samp": OrderDiscountApplication_stddev_samp_order_by,
"sum": OrderDiscountApplication_sum_order_by,
"var_pop": OrderDiscountApplication_var_pop_order_by,
"var_samp": OrderDiscountApplication_var_samp_order_by,
"variance": OrderDiscountApplication_variance_order_by
}
OrderDiscountApplication_avg_order_by
OrderDiscountApplication_bool_exp
Description
Boolean expression to filter rows from the table "OrderDiscountApplication". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Order - Order_bool_exp
|
|
_and - [OrderDiscountApplication_bool_exp!]
|
|
_not - OrderDiscountApplication_bool_exp
|
|
_or - [OrderDiscountApplication_bool_exp!]
|
|
allocationMethod - String_comparison_exp
|
|
code - String_comparison_exp
|
|
created_at - timestamptz_comparison_exp
|
|
currencyCode - String_comparison_exp
|
|
fixedValue - numeric_comparison_exp
|
|
id - uuid_comparison_exp
|
|
index - numeric_comparison_exp
|
|
orderId - uuid_comparison_exp
|
|
percentage - numeric_comparison_exp
|
|
targetSelection - String_comparison_exp
|
|
targetType - String_comparison_exp
|
|
title - String_comparison_exp
|
|
type - String_comparison_exp
|
|
updated_at - timestamptz_comparison_exp
|
Example
{
"Order": Order_bool_exp,
"_and": [OrderDiscountApplication_bool_exp],
"_not": OrderDiscountApplication_bool_exp,
"_or": [OrderDiscountApplication_bool_exp],
"allocationMethod": String_comparison_exp,
"code": String_comparison_exp,
"created_at": timestamptz_comparison_exp,
"currencyCode": String_comparison_exp,
"fixedValue": numeric_comparison_exp,
"id": uuid_comparison_exp,
"index": numeric_comparison_exp,
"orderId": uuid_comparison_exp,
"percentage": numeric_comparison_exp,
"targetSelection": String_comparison_exp,
"targetType": String_comparison_exp,
"title": String_comparison_exp,
"type": String_comparison_exp,
"updated_at": timestamptz_comparison_exp
}
OrderDiscountApplication_max_order_by
Description
order by max() on columns of table "OrderDiscountApplication"
Fields
| Input Field | Description |
|---|---|
allocationMethod - order_by
|
|
code - order_by
|
|
created_at - order_by
|
|
currencyCode - order_by
|
|
fixedValue - order_by
|
|
id - order_by
|
|
index - order_by
|
|
orderId - order_by
|
|
percentage - order_by
|
|
targetSelection - order_by
|
|
targetType - order_by
|
|
title - order_by
|
|
type - order_by
|
|
updated_at - order_by
|
Example
{
"allocationMethod": "asc",
"code": "asc",
"created_at": "asc",
"currencyCode": "asc",
"fixedValue": "asc",
"id": "asc",
"index": "asc",
"orderId": "asc",
"percentage": "asc",
"targetSelection": "asc",
"targetType": "asc",
"title": "asc",
"type": "asc",
"updated_at": "asc"
}
OrderDiscountApplication_min_order_by
Description
order by min() on columns of table "OrderDiscountApplication"
Fields
| Input Field | Description |
|---|---|
allocationMethod - order_by
|
|
code - order_by
|
|
created_at - order_by
|
|
currencyCode - order_by
|
|
fixedValue - order_by
|
|
id - order_by
|
|
index - order_by
|
|
orderId - order_by
|
|
percentage - order_by
|
|
targetSelection - order_by
|
|
targetType - order_by
|
|
title - order_by
|
|
type - order_by
|
|
updated_at - order_by
|
Example
{
"allocationMethod": "asc",
"code": "asc",
"created_at": "asc",
"currencyCode": "asc",
"fixedValue": "asc",
"id": "asc",
"index": "asc",
"orderId": "asc",
"percentage": "asc",
"targetSelection": "asc",
"targetType": "asc",
"title": "asc",
"type": "asc",
"updated_at": "asc"
}
OrderDiscountApplication_stddev_order_by
OrderDiscountApplication_stddev_pop_order_by
OrderDiscountApplication_stddev_samp_order_by
OrderDiscountApplication_sum_order_by
OrderDiscountApplication_var_pop_order_by
OrderDiscountApplication_var_samp_order_by
OrderDiscountApplication_variance_order_by
OrderLineItem_aggregate_order_by
Description
order by aggregate values of table "OrderLineItem"
Fields
| Input Field | Description |
|---|---|
avg - OrderLineItem_avg_order_by
|
|
count - order_by
|
|
max - OrderLineItem_max_order_by
|
|
min - OrderLineItem_min_order_by
|
|
stddev - OrderLineItem_stddev_order_by
|
|
stddev_pop - OrderLineItem_stddev_pop_order_by
|
|
stddev_samp - OrderLineItem_stddev_samp_order_by
|
|
sum - OrderLineItem_sum_order_by
|
|
var_pop - OrderLineItem_var_pop_order_by
|
|
var_samp - OrderLineItem_var_samp_order_by
|
|
variance - OrderLineItem_variance_order_by
|
Example
{
"avg": OrderLineItem_avg_order_by,
"count": "asc",
"max": OrderLineItem_max_order_by,
"min": OrderLineItem_min_order_by,
"stddev": OrderLineItem_stddev_order_by,
"stddev_pop": OrderLineItem_stddev_pop_order_by,
"stddev_samp": OrderLineItem_stddev_samp_order_by,
"sum": OrderLineItem_sum_order_by,
"var_pop": OrderLineItem_var_pop_order_by,
"var_samp": OrderLineItem_var_samp_order_by,
"variance": OrderLineItem_variance_order_by
}
OrderLineItem_avg_order_by
OrderLineItem_bool_exp
Description
Boolean expression to filter rows from the table "OrderLineItem". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Discounts - Discount_bool_exp
|
|
Order - Order_bool_exp
|
|
ProductVariant - ProductVariant_bool_exp
|
|
SubscriptionLine - SubscriptionLine_bool_exp
|
|
TaxLines - TaxLine_bool_exp
|
|
_and - [OrderLineItem_bool_exp!]
|
|
_not - OrderLineItem_bool_exp
|
|
_or - [OrderLineItem_bool_exp!]
|
|
attributionGroupId - uuid_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
currencyCode - String_comparison_exp
|
|
customAttributes - jsonb_comparison_exp
|
|
groupId - uuid_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderId - uuid_comparison_exp
|
|
platformId - String_comparison_exp
|
|
pricePresentmentAmount - numeric_comparison_exp
|
|
pricePresentmentCurrencyCode - String_comparison_exp
|
|
priceWithoutDiscount - numeric_comparison_exp
|
|
productVariantId - uuid_comparison_exp
|
|
quantity - Int_comparison_exp
|
|
subscriptionLineId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Discounts": Discount_bool_exp,
"Order": Order_bool_exp,
"ProductVariant": ProductVariant_bool_exp,
"SubscriptionLine": SubscriptionLine_bool_exp,
"TaxLines": TaxLine_bool_exp,
"_and": [OrderLineItem_bool_exp],
"_not": OrderLineItem_bool_exp,
"_or": [OrderLineItem_bool_exp],
"attributionGroupId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"currencyCode": String_comparison_exp,
"customAttributes": jsonb_comparison_exp,
"groupId": uuid_comparison_exp,
"id": uuid_comparison_exp,
"orderId": uuid_comparison_exp,
"platformId": String_comparison_exp,
"pricePresentmentAmount": numeric_comparison_exp,
"pricePresentmentCurrencyCode": String_comparison_exp,
"priceWithoutDiscount": numeric_comparison_exp,
"productVariantId": uuid_comparison_exp,
"quantity": Int_comparison_exp,
"subscriptionLineId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
OrderLineItem_max_order_by
Description
order by max() on columns of table "OrderLineItem"
Fields
| Input Field | Description |
|---|---|
attributionGroupId - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
groupId - order_by
|
|
id - order_by
|
|
orderId - order_by
|
|
platformId - order_by
|
|
pricePresentmentAmount - order_by
|
|
pricePresentmentCurrencyCode - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
subscriptionLineId - order_by
|
|
updatedAt - order_by
|
Example
{
"attributionGroupId": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"groupId": "asc",
"id": "asc",
"orderId": "asc",
"platformId": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"subscriptionLineId": "asc",
"updatedAt": "asc"
}
OrderLineItem_min_order_by
Description
order by min() on columns of table "OrderLineItem"
Fields
| Input Field | Description |
|---|---|
attributionGroupId - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
groupId - order_by
|
|
id - order_by
|
|
orderId - order_by
|
|
platformId - order_by
|
|
pricePresentmentAmount - order_by
|
|
pricePresentmentCurrencyCode - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
subscriptionLineId - order_by
|
|
updatedAt - order_by
|
Example
{
"attributionGroupId": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"groupId": "asc",
"id": "asc",
"orderId": "asc",
"platformId": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"subscriptionLineId": "asc",
"updatedAt": "asc"
}
OrderLineItem_order_by
Description
Ordering options when selecting data from "OrderLineItem".
Fields
| Input Field | Description |
|---|---|
Discounts_aggregate - Discount_aggregate_order_by
|
|
Order - Order_order_by
|
|
ProductVariant - ProductVariant_order_by
|
|
SubscriptionLine - SubscriptionLine_order_by
|
|
TaxLines_aggregate - TaxLine_aggregate_order_by
|
|
attributionGroupId - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
customAttributes - order_by
|
|
groupId - order_by
|
|
id - order_by
|
|
orderId - order_by
|
|
platformId - order_by
|
|
pricePresentmentAmount - order_by
|
|
pricePresentmentCurrencyCode - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
subscriptionLineId - order_by
|
|
updatedAt - order_by
|
Example
{
"Discounts_aggregate": Discount_aggregate_order_by,
"Order": Order_order_by,
"ProductVariant": ProductVariant_order_by,
"SubscriptionLine": SubscriptionLine_order_by,
"TaxLines_aggregate": TaxLine_aggregate_order_by,
"attributionGroupId": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"customAttributes": "asc",
"groupId": "asc",
"id": "asc",
"orderId": "asc",
"platformId": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"subscriptionLineId": "asc",
"updatedAt": "asc"
}
OrderLineItem_select_column
Description
select columns of table "OrderLineItem"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"attributionGroupId"
OrderLineItem_stddev_order_by
OrderLineItem_stddev_pop_order_by
OrderLineItem_stddev_samp_order_by
OrderLineItem_sum_order_by
OrderLineItem_var_pop_order_by
OrderLineItem_var_samp_order_by
OrderLineItem_variance_order_by
pauseSubscriptionInput
Fields
| Input Field | Description |
|---|---|
debugCaller - String
|
|
skipOption - SkipOption
|
|
subscriptionId - String!
|
Example
{
"debugCaller": "xyz789",
"skipOption": SkipOption,
"subscriptionId": "abc123"
}
pauseSubscriptionOutput
PaymentMethod
Description
columns and relationships of "PaymentMethod"
Fields
| Field Name | Description |
|---|---|
BillingAddress - Address
|
An object relationship |
StorefrontUser - StorefrontUser!
|
An object relationship |
Subscriptions - [Subscription!]!
|
An array relationship |
billingAddressId - uuid
|
|
brand - String
|
|
createdAt - timestamptz!
|
|
expiryMonth - numeric
|
|
expiryYear - numeric
|
|
id - uuid!
|
|
inactive - Boolean
|
|
instrumentType - String
|
|
lastDigits - numeric
|
|
paypalAccountEmail - String
|
|
platformId - String!
|
|
revokedAt - timestamptz
|
|
skioRevoke - Boolean
|
|
storefrontUserId - uuid!
|
|
updatedAt - timestamptz!
|
Example
{
"BillingAddress": Address,
"StorefrontUser": StorefrontUser,
"Subscriptions": [Subscription],
"billingAddressId": uuid,
"brand": "abc123",
"createdAt": timestamptz,
"expiryMonth": numeric,
"expiryYear": numeric,
"id": uuid,
"inactive": true,
"instrumentType": "xyz789",
"lastDigits": numeric,
"paypalAccountEmail": "abc123",
"platformId": "abc123",
"revokedAt": timestamptz,
"skioRevoke": false,
"storefrontUserId": uuid,
"updatedAt": timestamptz
}
PaymentMethod_aggregate_order_by
Description
order by aggregate values of table "PaymentMethod"
Fields
| Input Field | Description |
|---|---|
avg - PaymentMethod_avg_order_by
|
|
count - order_by
|
|
max - PaymentMethod_max_order_by
|
|
min - PaymentMethod_min_order_by
|
|
stddev - PaymentMethod_stddev_order_by
|
|
stddev_pop - PaymentMethod_stddev_pop_order_by
|
|
stddev_samp - PaymentMethod_stddev_samp_order_by
|
|
sum - PaymentMethod_sum_order_by
|
|
var_pop - PaymentMethod_var_pop_order_by
|
|
var_samp - PaymentMethod_var_samp_order_by
|
|
variance - PaymentMethod_variance_order_by
|
Example
{
"avg": PaymentMethod_avg_order_by,
"count": "asc",
"max": PaymentMethod_max_order_by,
"min": PaymentMethod_min_order_by,
"stddev": PaymentMethod_stddev_order_by,
"stddev_pop": PaymentMethod_stddev_pop_order_by,
"stddev_samp": PaymentMethod_stddev_samp_order_by,
"sum": PaymentMethod_sum_order_by,
"var_pop": PaymentMethod_var_pop_order_by,
"var_samp": PaymentMethod_var_samp_order_by,
"variance": PaymentMethod_variance_order_by
}
PaymentMethod_avg_order_by
PaymentMethod_bool_exp
Description
Boolean expression to filter rows from the table "PaymentMethod". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
BillingAddress - Address_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscriptions - Subscription_bool_exp
|
|
_and - [PaymentMethod_bool_exp!]
|
|
_not - PaymentMethod_bool_exp
|
|
_or - [PaymentMethod_bool_exp!]
|
|
billingAddressId - uuid_comparison_exp
|
|
brand - String_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
expiryMonth - numeric_comparison_exp
|
|
expiryYear - numeric_comparison_exp
|
|
id - uuid_comparison_exp
|
|
inactive - Boolean_comparison_exp
|
|
instrumentType - String_comparison_exp
|
|
lastDigits - numeric_comparison_exp
|
|
paypalAccountEmail - String_comparison_exp
|
|
platformId - String_comparison_exp
|
|
revokedAt - timestamptz_comparison_exp
|
|
skioRevoke - Boolean_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"BillingAddress": Address_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Subscriptions": Subscription_bool_exp,
"_and": [PaymentMethod_bool_exp],
"_not": PaymentMethod_bool_exp,
"_or": [PaymentMethod_bool_exp],
"billingAddressId": uuid_comparison_exp,
"brand": String_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"expiryMonth": numeric_comparison_exp,
"expiryYear": numeric_comparison_exp,
"id": uuid_comparison_exp,
"inactive": Boolean_comparison_exp,
"instrumentType": String_comparison_exp,
"lastDigits": numeric_comparison_exp,
"paypalAccountEmail": String_comparison_exp,
"platformId": String_comparison_exp,
"revokedAt": timestamptz_comparison_exp,
"skioRevoke": Boolean_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
PaymentMethod_max_order_by
Description
order by max() on columns of table "PaymentMethod"
Fields
| Input Field | Description |
|---|---|
billingAddressId - order_by
|
|
brand - order_by
|
|
createdAt - order_by
|
|
expiryMonth - order_by
|
|
expiryYear - order_by
|
|
id - order_by
|
|
instrumentType - order_by
|
|
lastDigits - order_by
|
|
paypalAccountEmail - order_by
|
|
platformId - order_by
|
|
revokedAt - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
Example
{
"billingAddressId": "asc",
"brand": "asc",
"createdAt": "asc",
"expiryMonth": "asc",
"expiryYear": "asc",
"id": "asc",
"instrumentType": "asc",
"lastDigits": "asc",
"paypalAccountEmail": "asc",
"platformId": "asc",
"revokedAt": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc"
}
PaymentMethod_min_order_by
Description
order by min() on columns of table "PaymentMethod"
Fields
| Input Field | Description |
|---|---|
billingAddressId - order_by
|
|
brand - order_by
|
|
createdAt - order_by
|
|
expiryMonth - order_by
|
|
expiryYear - order_by
|
|
id - order_by
|
|
instrumentType - order_by
|
|
lastDigits - order_by
|
|
paypalAccountEmail - order_by
|
|
platformId - order_by
|
|
revokedAt - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
Example
{
"billingAddressId": "asc",
"brand": "asc",
"createdAt": "asc",
"expiryMonth": "asc",
"expiryYear": "asc",
"id": "asc",
"instrumentType": "asc",
"lastDigits": "asc",
"paypalAccountEmail": "asc",
"platformId": "asc",
"revokedAt": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc"
}
PaymentMethod_order_by
Description
Ordering options when selecting data from "PaymentMethod".
Fields
| Input Field | Description |
|---|---|
BillingAddress - Address_order_by
|
|
StorefrontUser - StorefrontUser_order_by
|
|
Subscriptions_aggregate - Subscription_aggregate_order_by
|
|
billingAddressId - order_by
|
|
brand - order_by
|
|
createdAt - order_by
|
|
expiryMonth - order_by
|
|
expiryYear - order_by
|
|
id - order_by
|
|
inactive - order_by
|
|
instrumentType - order_by
|
|
lastDigits - order_by
|
|
paypalAccountEmail - order_by
|
|
platformId - order_by
|
|
revokedAt - order_by
|
|
skioRevoke - order_by
|
|
storefrontUserId - order_by
|
|
updatedAt - order_by
|
Example
{
"BillingAddress": Address_order_by,
"StorefrontUser": StorefrontUser_order_by,
"Subscriptions_aggregate": Subscription_aggregate_order_by,
"billingAddressId": "asc",
"brand": "asc",
"createdAt": "asc",
"expiryMonth": "asc",
"expiryYear": "asc",
"id": "asc",
"inactive": "asc",
"instrumentType": "asc",
"lastDigits": "asc",
"paypalAccountEmail": "asc",
"platformId": "asc",
"revokedAt": "asc",
"skioRevoke": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc"
}
PaymentMethod_stddev_order_by
PaymentMethod_stddev_pop_order_by
PaymentMethod_stddev_samp_order_by
PaymentMethod_sum_order_by
PaymentMethod_var_pop_order_by
PaymentMethod_var_samp_order_by
PaymentMethod_variance_order_by
Policy_bool_exp
Description
Boolean expression to filter rows from the table "Policy". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Anchors - Anchor_bool_exp
|
|
SellingPlansByBillingPolicy - SellingPlan_bool_exp
|
|
SellingPlansByDeliveryPolicy - SellingPlan_bool_exp
|
|
SellingPlansByPrepaidDeliveryPolicy - SellingPlan_bool_exp
|
|
SubscriptionsByBillingPolicy - Subscription_bool_exp
|
|
SubscriptionsByDeliveryPolicy - Subscription_bool_exp
|
|
SubscriptionsByPrepaidDeliveryPolicy - Subscription_bool_exp
|
|
_and - [Policy_bool_exp!]
|
|
_not - Policy_bool_exp
|
|
_or - [Policy_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
interval - String_comparison_exp
|
|
intervalCount - Int_comparison_exp
|
|
isMaxCycleV2 - Boolean_comparison_exp
|
|
maxCycles - Int_comparison_exp
|
|
minCycles - Int_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Anchors": Anchor_bool_exp,
"SellingPlansByBillingPolicy": SellingPlan_bool_exp,
"SellingPlansByDeliveryPolicy": SellingPlan_bool_exp,
"SellingPlansByPrepaidDeliveryPolicy": SellingPlan_bool_exp,
"SubscriptionsByBillingPolicy": Subscription_bool_exp,
"SubscriptionsByDeliveryPolicy": Subscription_bool_exp,
"SubscriptionsByPrepaidDeliveryPolicy": Subscription_bool_exp,
"_and": [Policy_bool_exp],
"_not": Policy_bool_exp,
"_or": [Policy_bool_exp],
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"interval": String_comparison_exp,
"intervalCount": Int_comparison_exp,
"isMaxCycleV2": Boolean_comparison_exp,
"maxCycles": Int_comparison_exp,
"minCycles": Int_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Policy_order_by
Description
Ordering options when selecting data from "Policy".
Fields
| Input Field | Description |
|---|---|
Anchors_aggregate - Anchor_aggregate_order_by
|
|
SellingPlansByBillingPolicy_aggregate - SellingPlan_aggregate_order_by
|
|
SellingPlansByDeliveryPolicy_aggregate - SellingPlan_aggregate_order_by
|
|
SellingPlansByPrepaidDeliveryPolicy_aggregate - SellingPlan_aggregate_order_by
|
|
SubscriptionsByBillingPolicy_aggregate - Subscription_aggregate_order_by
|
|
SubscriptionsByDeliveryPolicy_aggregate - Subscription_aggregate_order_by
|
|
SubscriptionsByPrepaidDeliveryPolicy_aggregate - Subscription_aggregate_order_by
|
|
createdAt - order_by
|
|
id - order_by
|
|
interval - order_by
|
|
intervalCount - order_by
|
|
isMaxCycleV2 - order_by
|
|
maxCycles - order_by
|
|
minCycles - order_by
|
|
updatedAt - order_by
|
Example
{
"Anchors_aggregate": Anchor_aggregate_order_by,
"SellingPlansByBillingPolicy_aggregate": SellingPlan_aggregate_order_by,
"SellingPlansByDeliveryPolicy_aggregate": SellingPlan_aggregate_order_by,
"SellingPlansByPrepaidDeliveryPolicy_aggregate": SellingPlan_aggregate_order_by,
"SubscriptionsByBillingPolicy_aggregate": Subscription_aggregate_order_by,
"SubscriptionsByDeliveryPolicy_aggregate": Subscription_aggregate_order_by,
"SubscriptionsByPrepaidDeliveryPolicy_aggregate": Subscription_aggregate_order_by,
"createdAt": "asc",
"id": "asc",
"interval": "asc",
"intervalCount": "asc",
"isMaxCycleV2": "asc",
"maxCycles": "asc",
"minCycles": "asc",
"updatedAt": "asc"
}
Policy_select_column
Description
select columns of table "Policy"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"createdAt"
PricingPolicy_aggregate_order_by
Description
order by aggregate values of table "PricingPolicy"
Fields
| Input Field | Description |
|---|---|
avg - PricingPolicy_avg_order_by
|
|
count - order_by
|
|
max - PricingPolicy_max_order_by
|
|
min - PricingPolicy_min_order_by
|
|
stddev - PricingPolicy_stddev_order_by
|
|
stddev_pop - PricingPolicy_stddev_pop_order_by
|
|
stddev_samp - PricingPolicy_stddev_samp_order_by
|
|
sum - PricingPolicy_sum_order_by
|
|
var_pop - PricingPolicy_var_pop_order_by
|
|
var_samp - PricingPolicy_var_samp_order_by
|
|
variance - PricingPolicy_variance_order_by
|
Example
{
"avg": PricingPolicy_avg_order_by,
"count": "asc",
"max": PricingPolicy_max_order_by,
"min": PricingPolicy_min_order_by,
"stddev": PricingPolicy_stddev_order_by,
"stddev_pop": PricingPolicy_stddev_pop_order_by,
"stddev_samp": PricingPolicy_stddev_samp_order_by,
"sum": PricingPolicy_sum_order_by,
"var_pop": PricingPolicy_var_pop_order_by,
"var_samp": PricingPolicy_var_samp_order_by,
"variance": PricingPolicy_variance_order_by
}
PricingPolicy_avg_order_by
PricingPolicy_bool_exp
Description
Boolean expression to filter rows from the table "PricingPolicy". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
SellingPlan - SellingPlan_bool_exp
|
|
_and - [PricingPolicy_bool_exp!]
|
|
_not - PricingPolicy_bool_exp
|
|
_or - [PricingPolicy_bool_exp!]
|
|
afterCycle - Int_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
fixedPrice - numeric_comparison_exp
|
|
id - uuid_comparison_exp
|
|
percentageOff - numeric_comparison_exp
|
|
sellingPlanId - uuid_comparison_exp
|
|
sellingPlanPricingPolicyAdjustmentType - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"SellingPlan": SellingPlan_bool_exp,
"_and": [PricingPolicy_bool_exp],
"_not": PricingPolicy_bool_exp,
"_or": [PricingPolicy_bool_exp],
"afterCycle": Int_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"fixedPrice": numeric_comparison_exp,
"id": uuid_comparison_exp,
"percentageOff": numeric_comparison_exp,
"sellingPlanId": uuid_comparison_exp,
"sellingPlanPricingPolicyAdjustmentType": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
PricingPolicy_max_order_by
Description
order by max() on columns of table "PricingPolicy"
Example
{
"afterCycle": "asc",
"createdAt": "asc",
"fixedPrice": "asc",
"id": "asc",
"percentageOff": "asc",
"sellingPlanId": "asc",
"sellingPlanPricingPolicyAdjustmentType": "asc",
"updatedAt": "asc"
}
PricingPolicy_min_order_by
Description
order by min() on columns of table "PricingPolicy"
Example
{
"afterCycle": "asc",
"createdAt": "asc",
"fixedPrice": "asc",
"id": "asc",
"percentageOff": "asc",
"sellingPlanId": "asc",
"sellingPlanPricingPolicyAdjustmentType": "asc",
"updatedAt": "asc"
}
PricingPolicy_order_by
Description
Ordering options when selecting data from "PricingPolicy".
Example
{
"SellingPlan": SellingPlan_order_by,
"afterCycle": "asc",
"createdAt": "asc",
"fixedPrice": "asc",
"id": "asc",
"percentageOff": "asc",
"sellingPlanId": "asc",
"sellingPlanPricingPolicyAdjustmentType": "asc",
"updatedAt": "asc"
}
PricingPolicy_select_column
Description
select columns of table "PricingPolicy"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"afterCycle"
PricingPolicy_stddev_order_by
PricingPolicy_stddev_pop_order_by
PricingPolicy_stddev_samp_order_by
PricingPolicy_sum_order_by
PricingPolicy_var_pop_order_by
PricingPolicy_var_samp_order_by
PricingPolicy_variance_order_by
Product_aggregate_order_by
Description
order by aggregate values of table "Product"
Fields
| Input Field | Description |
|---|---|
avg - Product_avg_order_by
|
|
count - order_by
|
|
max - Product_max_order_by
|
|
min - Product_min_order_by
|
|
stddev - Product_stddev_order_by
|
|
stddev_pop - Product_stddev_pop_order_by
|
|
stddev_samp - Product_stddev_samp_order_by
|
|
sum - Product_sum_order_by
|
|
var_pop - Product_var_pop_order_by
|
|
var_samp - Product_var_samp_order_by
|
|
variance - Product_variance_order_by
|
Example
{
"avg": Product_avg_order_by,
"count": "asc",
"max": Product_max_order_by,
"min": Product_min_order_by,
"stddev": Product_stddev_order_by,
"stddev_pop": Product_stddev_pop_order_by,
"stddev_samp": Product_stddev_samp_order_by,
"sum": Product_sum_order_by,
"var_pop": Product_var_pop_order_by,
"var_samp": Product_var_samp_order_by,
"variance": Product_variance_order_by
}
Product_avg_order_by
Product_bool_exp
Description
Boolean expression to filter rows from the table "Product". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
DynamicBox - DynamicBox_bool_exp
|
|
ProductVariants - ProductVariant_bool_exp
|
|
Site - Site_bool_exp
|
|
Tags - TagRelationship_bool_exp
|
|
_and - [Product_bool_exp!]
|
|
_not - Product_bool_exp
|
|
_or - [Product_bool_exp!]
|
|
canUpsell - Boolean_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
deletedAt - timestamptz_comparison_exp
|
|
description - String_comparison_exp
|
|
hideOn1TimeUpsells - Boolean_comparison_exp
|
|
id - uuid_comparison_exp
|
|
imageSrc - String_comparison_exp
|
|
images - jsonb_comparison_exp
|
|
isDigitalOverride - Boolean_comparison_exp
|
|
limitOneTimeUpsellQuantity - Boolean_comparison_exp
|
|
metafields - jsonb_comparison_exp
|
|
oneTimeUpsellPercentageOff - numeric_comparison_exp
|
|
platformId - String_comparison_exp
|
|
shopifyTags - jsonb_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
slug - String_comparison_exp
|
|
smsOrder - Int_comparison_exp
|
|
status - String_comparison_exp
|
|
title - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"DynamicBox": DynamicBox_bool_exp,
"ProductVariants": ProductVariant_bool_exp,
"Site": Site_bool_exp,
"Tags": TagRelationship_bool_exp,
"_and": [Product_bool_exp],
"_not": Product_bool_exp,
"_or": [Product_bool_exp],
"canUpsell": Boolean_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"deletedAt": timestamptz_comparison_exp,
"description": String_comparison_exp,
"hideOn1TimeUpsells": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"imageSrc": String_comparison_exp,
"images": jsonb_comparison_exp,
"isDigitalOverride": Boolean_comparison_exp,
"limitOneTimeUpsellQuantity": Boolean_comparison_exp,
"metafields": jsonb_comparison_exp,
"oneTimeUpsellPercentageOff": numeric_comparison_exp,
"platformId": String_comparison_exp,
"shopifyTags": jsonb_comparison_exp,
"siteId": uuid_comparison_exp,
"slug": String_comparison_exp,
"smsOrder": Int_comparison_exp,
"status": String_comparison_exp,
"title": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Product_max_order_by
Description
order by max() on columns of table "Product"
Example
{
"createdAt": "asc",
"deletedAt": "asc",
"description": "asc",
"id": "asc",
"imageSrc": "asc",
"oneTimeUpsellPercentageOff": "asc",
"platformId": "asc",
"siteId": "asc",
"slug": "asc",
"smsOrder": "asc",
"status": "asc",
"title": "asc",
"updatedAt": "asc"
}
Product_min_order_by
Description
order by min() on columns of table "Product"
Example
{
"createdAt": "asc",
"deletedAt": "asc",
"description": "asc",
"id": "asc",
"imageSrc": "asc",
"oneTimeUpsellPercentageOff": "asc",
"platformId": "asc",
"siteId": "asc",
"slug": "asc",
"smsOrder": "asc",
"status": "asc",
"title": "asc",
"updatedAt": "asc"
}
Product_order_by
Description
Ordering options when selecting data from "Product".
Fields
| Input Field | Description |
|---|---|
DynamicBox - DynamicBox_order_by
|
|
ProductVariants_aggregate - ProductVariant_aggregate_order_by
|
|
Site - Site_order_by
|
|
Tags_aggregate - TagRelationship_aggregate_order_by
|
|
canUpsell - order_by
|
|
createdAt - order_by
|
|
deletedAt - order_by
|
|
description - order_by
|
|
hideOn1TimeUpsells - order_by
|
|
id - order_by
|
|
imageSrc - order_by
|
|
images - order_by
|
|
isDigitalOverride - order_by
|
|
limitOneTimeUpsellQuantity - order_by
|
|
metafields - order_by
|
|
oneTimeUpsellPercentageOff - order_by
|
|
platformId - order_by
|
|
shopifyTags - order_by
|
|
siteId - order_by
|
|
slug - order_by
|
|
smsOrder - order_by
|
|
status - order_by
|
|
title - order_by
|
|
updatedAt - order_by
|
Example
{
"DynamicBox": DynamicBox_order_by,
"ProductVariants_aggregate": ProductVariant_aggregate_order_by,
"Site": Site_order_by,
"Tags_aggregate": TagRelationship_aggregate_order_by,
"canUpsell": "asc",
"createdAt": "asc",
"deletedAt": "asc",
"description": "asc",
"hideOn1TimeUpsells": "asc",
"id": "asc",
"imageSrc": "asc",
"images": "asc",
"isDigitalOverride": "asc",
"limitOneTimeUpsellQuantity": "asc",
"metafields": "asc",
"oneTimeUpsellPercentageOff": "asc",
"platformId": "asc",
"shopifyTags": "asc",
"siteId": "asc",
"slug": "asc",
"smsOrder": "asc",
"status": "asc",
"title": "asc",
"updatedAt": "asc"
}
Product_select_column
Description
select columns of table "Product"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"canUpsell"
Product_stddev_order_by
Product_stddev_pop_order_by
Product_stddev_samp_order_by
Product_sum_order_by
Product_var_pop_order_by
Product_var_samp_order_by
Product_variance_order_by
ProductVariant_aggregate_order_by
Description
order by aggregate values of table "ProductVariant"
Fields
| Input Field | Description |
|---|---|
avg - ProductVariant_avg_order_by
|
|
count - order_by
|
|
max - ProductVariant_max_order_by
|
|
min - ProductVariant_min_order_by
|
|
stddev - ProductVariant_stddev_order_by
|
|
stddev_pop - ProductVariant_stddev_pop_order_by
|
|
stddev_samp - ProductVariant_stddev_samp_order_by
|
|
sum - ProductVariant_sum_order_by
|
|
var_pop - ProductVariant_var_pop_order_by
|
|
var_samp - ProductVariant_var_samp_order_by
|
|
variance - ProductVariant_variance_order_by
|
Example
{
"avg": ProductVariant_avg_order_by,
"count": "asc",
"max": ProductVariant_max_order_by,
"min": ProductVariant_min_order_by,
"stddev": ProductVariant_stddev_order_by,
"stddev_pop": ProductVariant_stddev_pop_order_by,
"stddev_samp": ProductVariant_stddev_samp_order_by,
"sum": ProductVariant_sum_order_by,
"var_pop": ProductVariant_var_pop_order_by,
"var_samp": ProductVariant_var_samp_order_by,
"variance": ProductVariant_variance_order_by
}
ProductVariant_avg_order_by
ProductVariant_bool_exp
Description
Boolean expression to filter rows from the table "ProductVariant". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
DynamicBox_SelectableProductVariants - DynamicBox_SelectableProductVariant_bool_exp
|
|
OrderLineItems - OrderLineItem_bool_exp
|
|
Product - Product_bool_exp
|
|
ProductVariantsCreditRedemptionConfigs - ProductVariantsCreditRedemptionConfigs_bool_exp
|
|
SellingPlanGroupResources - SellingPlanGroupResource_bool_exp
|
|
SubscriptionLines - SubscriptionLine_bool_exp
|
|
_and - [ProductVariant_bool_exp!]
|
|
_not - ProductVariant_bool_exp
|
|
_or - [ProductVariant_bool_exp!]
|
|
compareAtPrice - numeric_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
deletedAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
image - String_comparison_exp
|
|
marketPrices - jsonb_comparison_exp
|
|
outOfStockAt - timestamptz_comparison_exp
|
|
platformId - String_comparison_exp
|
|
position - Int_comparison_exp
|
|
price - numeric_comparison_exp
|
|
productId - uuid_comparison_exp
|
|
requiresShipping - Boolean_comparison_exp
|
|
sku - String_comparison_exp
|
|
title - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"DynamicBox_SelectableProductVariants": DynamicBox_SelectableProductVariant_bool_exp,
"OrderLineItems": OrderLineItem_bool_exp,
"Product": Product_bool_exp,
"ProductVariantsCreditRedemptionConfigs": ProductVariantsCreditRedemptionConfigs_bool_exp,
"SellingPlanGroupResources": SellingPlanGroupResource_bool_exp,
"SubscriptionLines": SubscriptionLine_bool_exp,
"_and": [ProductVariant_bool_exp],
"_not": ProductVariant_bool_exp,
"_or": [ProductVariant_bool_exp],
"compareAtPrice": numeric_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"deletedAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"image": String_comparison_exp,
"marketPrices": jsonb_comparison_exp,
"outOfStockAt": timestamptz_comparison_exp,
"platformId": String_comparison_exp,
"position": Int_comparison_exp,
"price": numeric_comparison_exp,
"productId": uuid_comparison_exp,
"requiresShipping": Boolean_comparison_exp,
"sku": String_comparison_exp,
"title": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
ProductVariant_max_order_by
Description
order by max() on columns of table "ProductVariant"
Example
{
"compareAtPrice": "asc",
"createdAt": "asc",
"deletedAt": "asc",
"id": "asc",
"image": "asc",
"outOfStockAt": "asc",
"platformId": "asc",
"position": "asc",
"price": "asc",
"productId": "asc",
"sku": "asc",
"title": "asc",
"updatedAt": "asc"
}
ProductVariant_min_order_by
Description
order by min() on columns of table "ProductVariant"
Example
{
"compareAtPrice": "asc",
"createdAt": "asc",
"deletedAt": "asc",
"id": "asc",
"image": "asc",
"outOfStockAt": "asc",
"platformId": "asc",
"position": "asc",
"price": "asc",
"productId": "asc",
"sku": "asc",
"title": "asc",
"updatedAt": "asc"
}
ProductVariant_order_by
Description
Ordering options when selecting data from "ProductVariant".
Fields
| Input Field | Description |
|---|---|
DynamicBox_SelectableProductVariants_aggregate - DynamicBox_SelectableProductVariant_aggregate_order_by
|
|
OrderLineItems_aggregate - OrderLineItem_aggregate_order_by
|
|
Product - Product_order_by
|
|
ProductVariantsCreditRedemptionConfigs_aggregate - ProductVariantsCreditRedemptionConfigs_aggregate_order_by
|
|
SellingPlanGroupResources_aggregate - SellingPlanGroupResource_aggregate_order_by
|
|
SubscriptionLines_aggregate - SubscriptionLine_aggregate_order_by
|
|
compareAtPrice - order_by
|
|
createdAt - order_by
|
|
deletedAt - order_by
|
|
id - order_by
|
|
image - order_by
|
|
marketPrices - order_by
|
|
outOfStockAt - order_by
|
|
platformId - order_by
|
|
position - order_by
|
|
price - order_by
|
|
productId - order_by
|
|
requiresShipping - order_by
|
|
sku - order_by
|
|
title - order_by
|
|
updatedAt - order_by
|
Example
{
"DynamicBox_SelectableProductVariants_aggregate": DynamicBox_SelectableProductVariant_aggregate_order_by,
"OrderLineItems_aggregate": OrderLineItem_aggregate_order_by,
"Product": Product_order_by,
"ProductVariantsCreditRedemptionConfigs_aggregate": ProductVariantsCreditRedemptionConfigs_aggregate_order_by,
"SellingPlanGroupResources_aggregate": SellingPlanGroupResource_aggregate_order_by,
"SubscriptionLines_aggregate": SubscriptionLine_aggregate_order_by,
"compareAtPrice": "asc",
"createdAt": "asc",
"deletedAt": "asc",
"id": "asc",
"image": "asc",
"marketPrices": "asc",
"outOfStockAt": "asc",
"platformId": "asc",
"position": "asc",
"price": "asc",
"productId": "asc",
"requiresShipping": "asc",
"sku": "asc",
"title": "asc",
"updatedAt": "asc"
}
ProductVariant_select_column
Description
select columns of table "ProductVariant"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"compareAtPrice"
ProductVariant_stddev_order_by
ProductVariant_stddev_pop_order_by
ProductVariant_stddev_samp_order_by
ProductVariant_sum_order_by
ProductVariant_var_pop_order_by
ProductVariant_var_samp_order_by
ProductVariant_variance_order_by
ProductVariantsCreditRedemptionConfigs
Description
columns and relationships of "ProductVariantsCreditRedemptionConfigs"
Fields
| Field Name | Description |
|---|---|
ProductVariant - ProductVariant!
|
An object relationship |
TierLevel - TierLevel
|
An object relationship |
createdAt - timestamptz!
|
|
credits - numeric!
|
|
enabled - Boolean!
|
|
id - uuid!
|
|
productVariantId - uuid!
|
|
removedAt - timestamptz
|
|
tierLevelId - uuid
|
|
updatedAt - timestamptz!
|
Example
{
"ProductVariant": ProductVariant,
"TierLevel": TierLevel,
"createdAt": timestamptz,
"credits": numeric,
"enabled": true,
"id": uuid,
"productVariantId": uuid,
"removedAt": timestamptz,
"tierLevelId": uuid,
"updatedAt": timestamptz
}
ProductVariantsCreditRedemptionConfigs_aggregate_order_by
Description
order by aggregate values of table "ProductVariantsCreditRedemptionConfigs"
Fields
Example
{
"avg": ProductVariantsCreditRedemptionConfigs_avg_order_by,
"count": "asc",
"max": ProductVariantsCreditRedemptionConfigs_max_order_by,
"min": ProductVariantsCreditRedemptionConfigs_min_order_by,
"stddev": ProductVariantsCreditRedemptionConfigs_stddev_order_by,
"stddev_pop": ProductVariantsCreditRedemptionConfigs_stddev_pop_order_by,
"stddev_samp": ProductVariantsCreditRedemptionConfigs_stddev_samp_order_by,
"sum": ProductVariantsCreditRedemptionConfigs_sum_order_by,
"var_pop": ProductVariantsCreditRedemptionConfigs_var_pop_order_by,
"var_samp": ProductVariantsCreditRedemptionConfigs_var_samp_order_by,
"variance": ProductVariantsCreditRedemptionConfigs_variance_order_by
}
ProductVariantsCreditRedemptionConfigs_avg_order_by
Description
order by avg() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_bool_exp
Description
Boolean expression to filter rows from the table "ProductVariantsCreditRedemptionConfigs". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
ProductVariant - ProductVariant_bool_exp
|
|
TierLevel - TierLevel_bool_exp
|
|
_and - [ProductVariantsCreditRedemptionConfigs_bool_exp!]
|
|
_not - ProductVariantsCreditRedemptionConfigs_bool_exp
|
|
_or - [ProductVariantsCreditRedemptionConfigs_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
credits - numeric_comparison_exp
|
|
enabled - Boolean_comparison_exp
|
|
id - uuid_comparison_exp
|
|
productVariantId - uuid_comparison_exp
|
|
removedAt - timestamptz_comparison_exp
|
|
tierLevelId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"ProductVariant": ProductVariant_bool_exp,
"TierLevel": TierLevel_bool_exp,
"_and": [
ProductVariantsCreditRedemptionConfigs_bool_exp
],
"_not": ProductVariantsCreditRedemptionConfigs_bool_exp,
"_or": [
ProductVariantsCreditRedemptionConfigs_bool_exp
],
"createdAt": timestamptz_comparison_exp,
"credits": numeric_comparison_exp,
"enabled": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"productVariantId": uuid_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"tierLevelId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
ProductVariantsCreditRedemptionConfigs_max_order_by
Description
order by max() on columns of table "ProductVariantsCreditRedemptionConfigs"
Example
{
"createdAt": "asc",
"credits": "asc",
"id": "asc",
"productVariantId": "asc",
"removedAt": "asc",
"tierLevelId": "asc",
"updatedAt": "asc"
}
ProductVariantsCreditRedemptionConfigs_min_order_by
Description
order by min() on columns of table "ProductVariantsCreditRedemptionConfigs"
Example
{
"createdAt": "asc",
"credits": "asc",
"id": "asc",
"productVariantId": "asc",
"removedAt": "asc",
"tierLevelId": "asc",
"updatedAt": "asc"
}
ProductVariantsCreditRedemptionConfigs_stddev_order_by
Description
order by stddev() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_sum_order_by
Description
order by sum() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_var_pop_order_by
Description
order by var_pop() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_var_samp_order_by
Description
order by var_samp() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
ProductVariantsCreditRedemptionConfigs_variance_order_by
Description
order by variance() on columns of table "ProductVariantsCreditRedemptionConfigs"
Fields
| Input Field | Description |
|---|---|
credits - order_by
|
Example
{"credits": "asc"}
QuickActionsV3Stack_bool_exp
Description
Boolean expression to filter rows from the table "QuickActionsV3Stack". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [QuickActionsV3Stack_bool_exp!]
|
|
_not - QuickActionsV3Stack_bool_exp
|
|
_or - [QuickActionsV3Stack_bool_exp!]
|
|
actionConfigs - jsonb_comparison_exp
|
|
archivedAt - timestamptz_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
customTitle - String_comparison_exp
|
|
description - String_comparison_exp
|
|
enabled - Boolean_comparison_exp
|
|
expirationDate - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
isJourneyLandingPage - Boolean_comparison_exp
|
|
name - String_comparison_exp
|
|
savedAt - timestamptz_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
|
urlSettings - jsonb_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [QuickActionsV3Stack_bool_exp],
"_not": QuickActionsV3Stack_bool_exp,
"_or": [QuickActionsV3Stack_bool_exp],
"actionConfigs": jsonb_comparison_exp,
"archivedAt": timestamptz_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"customTitle": String_comparison_exp,
"description": String_comparison_exp,
"enabled": Boolean_comparison_exp,
"expirationDate": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"isJourneyLandingPage": Boolean_comparison_exp,
"name": String_comparison_exp,
"savedAt": timestamptz_comparison_exp,
"siteId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp,
"urlSettings": jsonb_comparison_exp
}
ReactivateSubscriptionInput
ReactivateSubscriptionOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
removeProductVariantFromSellingPlanGroupInput
removeProductVariantFromSellingPlanGroupOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
RewardCreditHistory
Description
track history of credits for each customer
Fields
| Field Name | Description |
|---|---|
CreditReward - CreditRewards
|
An object relationship |
Order - Order
|
An object relationship |
StorefrontUser - StorefrontUser!
|
An object relationship |
createdAt - timestamptz!
|
|
creditDelta - numeric
|
|
creditRewardId - uuid
|
|
expiredAt - timestamptz
|
|
id - uuid!
|
|
orderId - uuid
|
|
removedAt - timestamptz
|
|
rewardId - uuid
|
|
storefrontUserId - uuid!
|
|
type - String
|
Example
{
"CreditReward": CreditRewards,
"Order": Order,
"StorefrontUser": StorefrontUser,
"createdAt": timestamptz,
"creditDelta": numeric,
"creditRewardId": uuid,
"expiredAt": timestamptz,
"id": uuid,
"orderId": uuid,
"removedAt": timestamptz,
"rewardId": uuid,
"storefrontUserId": uuid,
"type": "abc123"
}
RewardCreditHistory_aggregate_order_by
Description
order by aggregate values of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
avg - RewardCreditHistory_avg_order_by
|
|
count - order_by
|
|
max - RewardCreditHistory_max_order_by
|
|
min - RewardCreditHistory_min_order_by
|
|
stddev - RewardCreditHistory_stddev_order_by
|
|
stddev_pop - RewardCreditHistory_stddev_pop_order_by
|
|
stddev_samp - RewardCreditHistory_stddev_samp_order_by
|
|
sum - RewardCreditHistory_sum_order_by
|
|
var_pop - RewardCreditHistory_var_pop_order_by
|
|
var_samp - RewardCreditHistory_var_samp_order_by
|
|
variance - RewardCreditHistory_variance_order_by
|
Example
{
"avg": RewardCreditHistory_avg_order_by,
"count": "asc",
"max": RewardCreditHistory_max_order_by,
"min": RewardCreditHistory_min_order_by,
"stddev": RewardCreditHistory_stddev_order_by,
"stddev_pop": RewardCreditHistory_stddev_pop_order_by,
"stddev_samp": RewardCreditHistory_stddev_samp_order_by,
"sum": RewardCreditHistory_sum_order_by,
"var_pop": RewardCreditHistory_var_pop_order_by,
"var_samp": RewardCreditHistory_var_samp_order_by,
"variance": RewardCreditHistory_variance_order_by
}
RewardCreditHistory_avg_order_by
Description
order by avg() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_bool_exp
Description
Boolean expression to filter rows from the table "RewardCreditHistory". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CreditReward - CreditRewards_bool_exp
|
|
Order - Order_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
_and - [RewardCreditHistory_bool_exp!]
|
|
_not - RewardCreditHistory_bool_exp
|
|
_or - [RewardCreditHistory_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
creditDelta - numeric_comparison_exp
|
|
creditRewardId - uuid_comparison_exp
|
|
expiredAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderId - uuid_comparison_exp
|
|
removedAt - timestamptz_comparison_exp
|
|
rewardId - uuid_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
type - String_comparison_exp
|
Example
{
"CreditReward": CreditRewards_bool_exp,
"Order": Order_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"_and": [RewardCreditHistory_bool_exp],
"_not": RewardCreditHistory_bool_exp,
"_or": [RewardCreditHistory_bool_exp],
"createdAt": timestamptz_comparison_exp,
"creditDelta": numeric_comparison_exp,
"creditRewardId": uuid_comparison_exp,
"expiredAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"orderId": uuid_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"rewardId": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"type": String_comparison_exp
}
RewardCreditHistory_max_order_by
Description
order by max() on columns of table "RewardCreditHistory"
Example
{
"createdAt": "asc",
"creditDelta": "asc",
"creditRewardId": "asc",
"expiredAt": "asc",
"id": "asc",
"orderId": "asc",
"removedAt": "asc",
"rewardId": "asc",
"storefrontUserId": "asc",
"type": "asc"
}
RewardCreditHistory_min_order_by
Description
order by min() on columns of table "RewardCreditHistory"
Example
{
"createdAt": "asc",
"creditDelta": "asc",
"creditRewardId": "asc",
"expiredAt": "asc",
"id": "asc",
"orderId": "asc",
"removedAt": "asc",
"rewardId": "asc",
"storefrontUserId": "asc",
"type": "asc"
}
RewardCreditHistory_stddev_order_by
Description
order by stddev() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_sum_order_by
Description
order by sum() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_var_pop_order_by
Description
order by var_pop() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_var_samp_order_by
Description
order by var_samp() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
RewardCreditHistory_variance_order_by
Description
order by variance() on columns of table "RewardCreditHistory"
Fields
| Input Field | Description |
|---|---|
creditDelta - order_by
|
Example
{"creditDelta": "asc"}
SellingPlan
Description
columns and relationships of "SellingPlan"
Fields
| Field Name | Description |
|---|---|
BillingPolicy - Policy!
|
An object relationship |
DeliveryPolicy - Policy!
|
An object relationship |
PrepaidDeliveryPolicy - Policy
|
An object relationship |
PricingPolicies - [PricingPolicy!]!
|
An array relationship |
SellingPlanGroup - SellingPlanGroup!
|
An object relationship |
Site - Site
|
An object relationship |
SkuSwaps - [SkuSwap!]!
|
An array relationship |
SubscriptionLines - [SubscriptionLine!]!
|
An array relationship |
availableInCustomerPortal - Boolean!
|
|
availableInDashboard - Boolean!
|
|
availableOnStorefront - Boolean!
|
|
availableViaApi - Boolean!
|
|
billingPolicyId - uuid!
|
|
createdAt - timestamptz!
|
|
deliveryPolicyId - uuid!
|
|
description - jsonb
|
|
id - uuid!
|
|
name - String!
|
|
option - String!
|
|
platformId - String!
|
|
position - Int!
|
|
prepaidDeliveryPolicyId - uuid
|
|
productVariantIdToSwapToAfterFirstOrder - String
|
|
sellingPlanGroupId - uuid!
|
|
siteId - uuid
|
|
updatedAt - timestamptz!
|
Example
{
"BillingPolicy": Policy,
"DeliveryPolicy": Policy,
"PrepaidDeliveryPolicy": Policy,
"PricingPolicies": [PricingPolicy],
"SellingPlanGroup": SellingPlanGroup,
"Site": Site,
"SkuSwaps": [SkuSwap],
"SubscriptionLines": [SubscriptionLine],
"availableInCustomerPortal": false,
"availableInDashboard": false,
"availableOnStorefront": false,
"availableViaApi": true,
"billingPolicyId": uuid,
"createdAt": timestamptz,
"deliveryPolicyId": uuid,
"description": jsonb,
"id": uuid,
"name": "abc123",
"option": "abc123",
"platformId": "abc123",
"position": 987,
"prepaidDeliveryPolicyId": uuid,
"productVariantIdToSwapToAfterFirstOrder": "abc123",
"sellingPlanGroupId": uuid,
"siteId": uuid,
"updatedAt": timestamptz
}
SellingPlan_aggregate_order_by
Description
order by aggregate values of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
avg - SellingPlan_avg_order_by
|
|
count - order_by
|
|
max - SellingPlan_max_order_by
|
|
min - SellingPlan_min_order_by
|
|
stddev - SellingPlan_stddev_order_by
|
|
stddev_pop - SellingPlan_stddev_pop_order_by
|
|
stddev_samp - SellingPlan_stddev_samp_order_by
|
|
sum - SellingPlan_sum_order_by
|
|
var_pop - SellingPlan_var_pop_order_by
|
|
var_samp - SellingPlan_var_samp_order_by
|
|
variance - SellingPlan_variance_order_by
|
Example
{
"avg": SellingPlan_avg_order_by,
"count": "asc",
"max": SellingPlan_max_order_by,
"min": SellingPlan_min_order_by,
"stddev": SellingPlan_stddev_order_by,
"stddev_pop": SellingPlan_stddev_pop_order_by,
"stddev_samp": SellingPlan_stddev_samp_order_by,
"sum": SellingPlan_sum_order_by,
"var_pop": SellingPlan_var_pop_order_by,
"var_samp": SellingPlan_var_samp_order_by,
"variance": SellingPlan_variance_order_by
}
SellingPlan_avg_order_by
Description
order by avg() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_bool_exp
Description
Boolean expression to filter rows from the table "SellingPlan". All fields are combined with a logical 'AND'.
Fields
Example
{
"BillingPolicy": Policy_bool_exp,
"DeliveryPolicy": Policy_bool_exp,
"PrepaidDeliveryPolicy": Policy_bool_exp,
"PricingPolicies": PricingPolicy_bool_exp,
"SellingPlanGroup": SellingPlanGroup_bool_exp,
"Site": Site_bool_exp,
"SkuSwaps": SkuSwap_bool_exp,
"SubscriptionLines": SubscriptionLine_bool_exp,
"_and": [SellingPlan_bool_exp],
"_not": SellingPlan_bool_exp,
"_or": [SellingPlan_bool_exp],
"availableInCustomerPortal": Boolean_comparison_exp,
"availableInDashboard": Boolean_comparison_exp,
"availableOnStorefront": Boolean_comparison_exp,
"availableViaApi": Boolean_comparison_exp,
"billingPolicyId": uuid_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"deliveryPolicyId": uuid_comparison_exp,
"description": jsonb_comparison_exp,
"id": uuid_comparison_exp,
"name": String_comparison_exp,
"option": String_comparison_exp,
"platformId": String_comparison_exp,
"position": Int_comparison_exp,
"prepaidDeliveryPolicyId": uuid_comparison_exp,
"productVariantIdToSwapToAfterFirstOrder": String_comparison_exp,
"sellingPlanGroupId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SellingPlan_max_order_by
Description
order by max() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
billingPolicyId - order_by
|
|
createdAt - order_by
|
|
deliveryPolicyId - order_by
|
|
id - order_by
|
|
name - order_by
|
|
option - order_by
|
|
platformId - order_by
|
|
position - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
productVariantIdToSwapToAfterFirstOrder - order_by
|
|
sellingPlanGroupId - order_by
|
|
siteId - order_by
|
|
updatedAt - order_by
|
Example
{
"billingPolicyId": "asc",
"createdAt": "asc",
"deliveryPolicyId": "asc",
"id": "asc",
"name": "asc",
"option": "asc",
"platformId": "asc",
"position": "asc",
"prepaidDeliveryPolicyId": "asc",
"productVariantIdToSwapToAfterFirstOrder": "asc",
"sellingPlanGroupId": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
SellingPlan_min_order_by
Description
order by min() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
billingPolicyId - order_by
|
|
createdAt - order_by
|
|
deliveryPolicyId - order_by
|
|
id - order_by
|
|
name - order_by
|
|
option - order_by
|
|
platformId - order_by
|
|
position - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
productVariantIdToSwapToAfterFirstOrder - order_by
|
|
sellingPlanGroupId - order_by
|
|
siteId - order_by
|
|
updatedAt - order_by
|
Example
{
"billingPolicyId": "asc",
"createdAt": "asc",
"deliveryPolicyId": "asc",
"id": "asc",
"name": "asc",
"option": "asc",
"platformId": "asc",
"position": "asc",
"prepaidDeliveryPolicyId": "asc",
"productVariantIdToSwapToAfterFirstOrder": "asc",
"sellingPlanGroupId": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
SellingPlan_order_by
Description
Ordering options when selecting data from "SellingPlan".
Fields
| Input Field | Description |
|---|---|
BillingPolicy - Policy_order_by
|
|
DeliveryPolicy - Policy_order_by
|
|
PrepaidDeliveryPolicy - Policy_order_by
|
|
PricingPolicies_aggregate - PricingPolicy_aggregate_order_by
|
|
SellingPlanGroup - SellingPlanGroup_order_by
|
|
Site - Site_order_by
|
|
SkuSwaps_aggregate - SkuSwap_aggregate_order_by
|
|
SubscriptionLines_aggregate - SubscriptionLine_aggregate_order_by
|
|
availableInCustomerPortal - order_by
|
|
availableInDashboard - order_by
|
|
availableOnStorefront - order_by
|
|
availableViaApi - order_by
|
|
billingPolicyId - order_by
|
|
createdAt - order_by
|
|
deliveryPolicyId - order_by
|
|
description - order_by
|
|
id - order_by
|
|
name - order_by
|
|
option - order_by
|
|
platformId - order_by
|
|
position - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
productVariantIdToSwapToAfterFirstOrder - order_by
|
|
sellingPlanGroupId - order_by
|
|
siteId - order_by
|
|
updatedAt - order_by
|
Example
{
"BillingPolicy": Policy_order_by,
"DeliveryPolicy": Policy_order_by,
"PrepaidDeliveryPolicy": Policy_order_by,
"PricingPolicies_aggregate": PricingPolicy_aggregate_order_by,
"SellingPlanGroup": SellingPlanGroup_order_by,
"Site": Site_order_by,
"SkuSwaps_aggregate": SkuSwap_aggregate_order_by,
"SubscriptionLines_aggregate": SubscriptionLine_aggregate_order_by,
"availableInCustomerPortal": "asc",
"availableInDashboard": "asc",
"availableOnStorefront": "asc",
"availableViaApi": "asc",
"billingPolicyId": "asc",
"createdAt": "asc",
"deliveryPolicyId": "asc",
"description": "asc",
"id": "asc",
"name": "asc",
"option": "asc",
"platformId": "asc",
"position": "asc",
"prepaidDeliveryPolicyId": "asc",
"productVariantIdToSwapToAfterFirstOrder": "asc",
"sellingPlanGroupId": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
SellingPlan_stddev_order_by
Description
order by stddev() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_sum_order_by
Description
order by sum() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_var_pop_order_by
Description
order by var_pop() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_var_samp_order_by
Description
order by var_samp() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlan_variance_order_by
Description
order by variance() on columns of table "SellingPlan"
Fields
| Input Field | Description |
|---|---|
position - order_by
|
Example
{"position": "asc"}
SellingPlanGroup
Description
columns and relationships of "SellingPlanGroup"
Fields
| Field Name | Description |
|---|---|
SellingPlanGroupResources - [SellingPlanGroupResource!]!
|
An array relationship |
SellingPlans - [SellingPlan!]!
|
An array relationship |
Site - Site
|
An object relationship |
byGroup - Boolean
|
|
createdAt - timestamptz!
|
|
customName - String
|
|
id - uuid!
|
|
name - String!
|
|
platformId - String!
|
|
siteId - uuid
|
|
updatedAt - timestamptz!
|
Example
{
"SellingPlanGroupResources": [SellingPlanGroupResource],
"SellingPlans": [SellingPlan],
"Site": Site,
"byGroup": false,
"createdAt": timestamptz,
"customName": "xyz789",
"id": uuid,
"name": "xyz789",
"platformId": "abc123",
"siteId": uuid,
"updatedAt": timestamptz
}
SellingPlanGroup_bool_exp
Description
Boolean expression to filter rows from the table "SellingPlanGroup". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
SellingPlanGroupResources - SellingPlanGroupResource_bool_exp
|
|
SellingPlans - SellingPlan_bool_exp
|
|
Site - Site_bool_exp
|
|
_and - [SellingPlanGroup_bool_exp!]
|
|
_not - SellingPlanGroup_bool_exp
|
|
_or - [SellingPlanGroup_bool_exp!]
|
|
byGroup - Boolean_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
customName - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
name - String_comparison_exp
|
|
platformId - String_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"SellingPlanGroupResources": SellingPlanGroupResource_bool_exp,
"SellingPlans": SellingPlan_bool_exp,
"Site": Site_bool_exp,
"_and": [SellingPlanGroup_bool_exp],
"_not": SellingPlanGroup_bool_exp,
"_or": [SellingPlanGroup_bool_exp],
"byGroup": Boolean_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"customName": String_comparison_exp,
"id": uuid_comparison_exp,
"name": String_comparison_exp,
"platformId": String_comparison_exp,
"siteId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SellingPlanGroup_order_by
Description
Ordering options when selecting data from "SellingPlanGroup".
Fields
| Input Field | Description |
|---|---|
SellingPlanGroupResources_aggregate - SellingPlanGroupResource_aggregate_order_by
|
|
SellingPlans_aggregate - SellingPlan_aggregate_order_by
|
|
Site - Site_order_by
|
|
byGroup - order_by
|
|
createdAt - order_by
|
|
customName - order_by
|
|
id - order_by
|
|
name - order_by
|
|
platformId - order_by
|
|
siteId - order_by
|
|
updatedAt - order_by
|
Example
{
"SellingPlanGroupResources_aggregate": SellingPlanGroupResource_aggregate_order_by,
"SellingPlans_aggregate": SellingPlan_aggregate_order_by,
"Site": Site_order_by,
"byGroup": "asc",
"createdAt": "asc",
"customName": "asc",
"id": "asc",
"name": "asc",
"platformId": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
SellingPlanGroupResource
Description
columns and relationships of "SellingPlanGroupResource"
Fields
| Field Name | Description |
|---|---|
ProductVariant - ProductVariant!
|
An object relationship |
SellingPlanGroup - SellingPlanGroup!
|
An object relationship |
createdAt - timestamptz!
|
|
id - uuid!
|
|
productVariantId - uuid!
|
|
sellingPlanGroupId - uuid!
|
|
updatedAt - timestamptz!
|
Example
{
"ProductVariant": ProductVariant,
"SellingPlanGroup": SellingPlanGroup,
"createdAt": timestamptz,
"id": uuid,
"productVariantId": uuid,
"sellingPlanGroupId": uuid,
"updatedAt": timestamptz
}
SellingPlanGroupResource_aggregate_order_by
Description
order by aggregate values of table "SellingPlanGroupResource"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - SellingPlanGroupResource_max_order_by
|
|
min - SellingPlanGroupResource_min_order_by
|
Example
{
"count": "asc",
"max": SellingPlanGroupResource_max_order_by,
"min": SellingPlanGroupResource_min_order_by
}
SellingPlanGroupResource_bool_exp
Description
Boolean expression to filter rows from the table "SellingPlanGroupResource". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
ProductVariant - ProductVariant_bool_exp
|
|
SellingPlanGroup - SellingPlanGroup_bool_exp
|
|
_and - [SellingPlanGroupResource_bool_exp!]
|
|
_not - SellingPlanGroupResource_bool_exp
|
|
_or - [SellingPlanGroupResource_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
productVariantId - uuid_comparison_exp
|
|
sellingPlanGroupId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"ProductVariant": ProductVariant_bool_exp,
"SellingPlanGroup": SellingPlanGroup_bool_exp,
"_and": [SellingPlanGroupResource_bool_exp],
"_not": SellingPlanGroupResource_bool_exp,
"_or": [SellingPlanGroupResource_bool_exp],
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"productVariantId": uuid_comparison_exp,
"sellingPlanGroupId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SellingPlanGroupResource_max_order_by
Description
order by max() on columns of table "SellingPlanGroupResource"
Example
{
"createdAt": "asc",
"id": "asc",
"productVariantId": "asc",
"sellingPlanGroupId": "asc",
"updatedAt": "asc"
}
SellingPlanGroupResource_min_order_by
Description
order by min() on columns of table "SellingPlanGroupResource"
Example
{
"createdAt": "asc",
"id": "asc",
"productVariantId": "asc",
"sellingPlanGroupId": "asc",
"updatedAt": "asc"
}
SellingPlanIntervalEnum
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
Example
"DAY"
SetCommitmentOfferInput
SetCommitmentOfferOutput
SetDeliveryPriceOverrideInput
SetDeliveryPriceOverrideOutput
Fields
| Field Name | Description |
|---|---|
subscriptionId - uuid!
|
Example
{"subscriptionId": uuid}
ShipNowInput
ShipNowOutput
ShippingLine
Description
columns and relationships of "ShippingLine"
Fields
| Field Name | Description |
|---|---|
Discounts - [Discount!]!
|
An array relationship |
Order - Order!
|
An object relationship |
TaxLines - [TaxLine!]!
|
An array relationship |
createdAt - timestamptz!
|
|
id - uuid!
|
|
orderId - uuid!
|
|
platformId - String!
|
|
pricePresentmentAmount - numeric
|
|
pricePresentmentCurrencyCode - String
|
|
priceWithoutDiscount - numeric!
|
|
title - String!
|
|
updatedAt - timestamptz!
|
Example
{
"Discounts": [Discount],
"Order": Order,
"TaxLines": [TaxLine],
"createdAt": timestamptz,
"id": uuid,
"orderId": uuid,
"platformId": "abc123",
"pricePresentmentAmount": numeric,
"pricePresentmentCurrencyCode": "abc123",
"priceWithoutDiscount": numeric,
"title": "abc123",
"updatedAt": timestamptz
}
ShippingLine_aggregate_order_by
Description
order by aggregate values of table "ShippingLine"
Fields
| Input Field | Description |
|---|---|
avg - ShippingLine_avg_order_by
|
|
count - order_by
|
|
max - ShippingLine_max_order_by
|
|
min - ShippingLine_min_order_by
|
|
stddev - ShippingLine_stddev_order_by
|
|
stddev_pop - ShippingLine_stddev_pop_order_by
|
|
stddev_samp - ShippingLine_stddev_samp_order_by
|
|
sum - ShippingLine_sum_order_by
|
|
var_pop - ShippingLine_var_pop_order_by
|
|
var_samp - ShippingLine_var_samp_order_by
|
|
variance - ShippingLine_variance_order_by
|
Example
{
"avg": ShippingLine_avg_order_by,
"count": "asc",
"max": ShippingLine_max_order_by,
"min": ShippingLine_min_order_by,
"stddev": ShippingLine_stddev_order_by,
"stddev_pop": ShippingLine_stddev_pop_order_by,
"stddev_samp": ShippingLine_stddev_samp_order_by,
"sum": ShippingLine_sum_order_by,
"var_pop": ShippingLine_var_pop_order_by,
"var_samp": ShippingLine_var_samp_order_by,
"variance": ShippingLine_variance_order_by
}
ShippingLine_avg_order_by
ShippingLine_bool_exp
Description
Boolean expression to filter rows from the table "ShippingLine". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Discounts - Discount_bool_exp
|
|
Order - Order_bool_exp
|
|
TaxLines - TaxLine_bool_exp
|
|
_and - [ShippingLine_bool_exp!]
|
|
_not - ShippingLine_bool_exp
|
|
_or - [ShippingLine_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderId - uuid_comparison_exp
|
|
platformId - String_comparison_exp
|
|
pricePresentmentAmount - numeric_comparison_exp
|
|
pricePresentmentCurrencyCode - String_comparison_exp
|
|
priceWithoutDiscount - numeric_comparison_exp
|
|
title - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Discounts": Discount_bool_exp,
"Order": Order_bool_exp,
"TaxLines": TaxLine_bool_exp,
"_and": [ShippingLine_bool_exp],
"_not": ShippingLine_bool_exp,
"_or": [ShippingLine_bool_exp],
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"orderId": uuid_comparison_exp,
"platformId": String_comparison_exp,
"pricePresentmentAmount": numeric_comparison_exp,
"pricePresentmentCurrencyCode": String_comparison_exp,
"priceWithoutDiscount": numeric_comparison_exp,
"title": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
ShippingLine_max_order_by
Description
order by max() on columns of table "ShippingLine"
Example
{
"createdAt": "asc",
"id": "asc",
"orderId": "asc",
"platformId": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"priceWithoutDiscount": "asc",
"title": "asc",
"updatedAt": "asc"
}
ShippingLine_min_order_by
Description
order by min() on columns of table "ShippingLine"
Example
{
"createdAt": "asc",
"id": "asc",
"orderId": "asc",
"platformId": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"priceWithoutDiscount": "asc",
"title": "asc",
"updatedAt": "asc"
}
ShippingLine_stddev_order_by
ShippingLine_stddev_pop_order_by
ShippingLine_stddev_samp_order_by
ShippingLine_sum_order_by
ShippingLine_var_pop_order_by
ShippingLine_var_samp_order_by
ShippingLine_variance_order_by
Site_bool_exp
Description
Boolean expression to filter rows from the table "Site". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
CancelFlowV3s - CancelFlowV3_bool_exp
|
|
CreditRewards - CreditRewards_bool_exp
|
|
Holidays - Holiday_bool_exp
|
|
Notifications - Notification_bool_exp
|
|
Products - Product_bool_exp
|
|
SkioSmsMessagingHistory - SkioSmsMessagingHistory_bool_exp
|
|
StorefrontUsers - StorefrontUser_bool_exp
|
|
Tags - Tag_bool_exp
|
|
Theme - Theme_bool_exp
|
|
Theme2 - Theme2_bool_exp
|
|
_and - [Site_bool_exp!]
|
|
_not - Site_bool_exp
|
|
_or - [Site_bool_exp!]
|
|
appProxyPathPrefix - String_comparison_exp
|
|
currencyCode - String_comparison_exp
|
|
ianaTimezone - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
qaAuthSettings - jsonb_comparison_exp
|
Example
{
"CancelFlowV3s": CancelFlowV3_bool_exp,
"CreditRewards": CreditRewards_bool_exp,
"Holidays": Holiday_bool_exp,
"Notifications": Notification_bool_exp,
"Products": Product_bool_exp,
"SkioSmsMessagingHistory": SkioSmsMessagingHistory_bool_exp,
"StorefrontUsers": StorefrontUser_bool_exp,
"Tags": Tag_bool_exp,
"Theme": Theme_bool_exp,
"Theme2": Theme2_bool_exp,
"_and": [Site_bool_exp],
"_not": Site_bool_exp,
"_or": [Site_bool_exp],
"appProxyPathPrefix": String_comparison_exp,
"currencyCode": String_comparison_exp,
"ianaTimezone": String_comparison_exp,
"id": uuid_comparison_exp,
"qaAuthSettings": jsonb_comparison_exp
}
Site_order_by
Description
Ordering options when selecting data from "Site".
Fields
| Input Field | Description |
|---|---|
CancelFlowV3s_aggregate - CancelFlowV3_aggregate_order_by
|
|
CreditRewards_aggregate - CreditRewards_aggregate_order_by
|
|
Holidays_aggregate - Holiday_aggregate_order_by
|
|
Notifications_aggregate - Notification_aggregate_order_by
|
|
Products_aggregate - Product_aggregate_order_by
|
|
SkioSmsMessagingHistory_aggregate - SkioSmsMessagingHistory_aggregate_order_by
|
|
StorefrontUsers_aggregate - StorefrontUser_aggregate_order_by
|
|
Tags_aggregate - Tag_aggregate_order_by
|
|
Theme - Theme_order_by
|
|
Theme2 - Theme2_order_by
|
|
appProxyPathPrefix - order_by
|
|
currencyCode - order_by
|
|
ianaTimezone - order_by
|
|
id - order_by
|
|
qaAuthSettings - order_by
|
Example
{
"CancelFlowV3s_aggregate": CancelFlowV3_aggregate_order_by,
"CreditRewards_aggregate": CreditRewards_aggregate_order_by,
"Holidays_aggregate": Holiday_aggregate_order_by,
"Notifications_aggregate": Notification_aggregate_order_by,
"Products_aggregate": Product_aggregate_order_by,
"SkioSmsMessagingHistory_aggregate": SkioSmsMessagingHistory_aggregate_order_by,
"StorefrontUsers_aggregate": StorefrontUser_aggregate_order_by,
"Tags_aggregate": Tag_aggregate_order_by,
"Theme": Theme_order_by,
"Theme2": Theme2_order_by,
"appProxyPathPrefix": "asc",
"currencyCode": "asc",
"ianaTimezone": "asc",
"id": "asc",
"qaAuthSettings": "asc"
}
Site_pk_columns_input
Description
primary key columns input for table: Site
Fields
| Input Field | Description |
|---|---|
id - uuid!
|
Example
{"id": uuid}
Site_set_input
Description
input type for updating data in table "Site"
Fields
| Input Field | Description |
|---|---|
useFlycodeDunning - Boolean
|
Example
{"useFlycodeDunning": false}
SkioSmsMessagingHistory
Description
Message logs for all SkioSMS messages, including static and SmsBot logs
Fields
| Field Name | Description |
|---|---|
Site - Site
|
An object relationship |
StorefrontUser - StorefrontUser!
|
An object relationship |
createdAt - timestamptz
|
|
customerMessage - String!
|
|
id - uuid!
|
|
response - String!
|
Response sent to the customer |
sessionId - uuid!
|
Groups messages by session, necessary for grouping logs+feeding history to bot prompts |
siteId - uuid
|
Can be null if site is deleted. Only storefrontUser deletions will cascade |
storefrontUserId - uuid!
|
|
updatedAt - timestamptz
|
Example
{
"Site": Site,
"StorefrontUser": StorefrontUser,
"createdAt": timestamptz,
"customerMessage": "abc123",
"id": uuid,
"response": "xyz789",
"sessionId": uuid,
"siteId": uuid,
"storefrontUserId": uuid,
"updatedAt": timestamptz
}
SkioSmsMessagingHistory_aggregate_order_by
Description
order by aggregate values of table "SkioSmsMessagingHistory"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - SkioSmsMessagingHistory_max_order_by
|
|
min - SkioSmsMessagingHistory_min_order_by
|
Example
{
"count": "asc",
"max": SkioSmsMessagingHistory_max_order_by,
"min": SkioSmsMessagingHistory_min_order_by
}
SkioSmsMessagingHistory_bool_exp
Description
Boolean expression to filter rows from the table "SkioSmsMessagingHistory". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
_and - [SkioSmsMessagingHistory_bool_exp!]
|
|
_not - SkioSmsMessagingHistory_bool_exp
|
|
_or - [SkioSmsMessagingHistory_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
customerMessage - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
response - String_comparison_exp
|
|
sessionId - uuid_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"_and": [SkioSmsMessagingHistory_bool_exp],
"_not": SkioSmsMessagingHistory_bool_exp,
"_or": [SkioSmsMessagingHistory_bool_exp],
"createdAt": timestamptz_comparison_exp,
"customerMessage": String_comparison_exp,
"id": uuid_comparison_exp,
"response": String_comparison_exp,
"sessionId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SkioSmsMessagingHistory_max_order_by
Description
order by max() on columns of table "SkioSmsMessagingHistory"
Fields
| Input Field | Description |
|---|---|
createdAt - order_by
|
|
customerMessage - order_by
|
|
id - order_by
|
|
response - order_by
|
Response sent to the customer |
sessionId - order_by
|
Groups messages by session, necessary for grouping logs+feeding history to bot prompts |
siteId - order_by
|
Can be null if site is deleted. Only storefrontUser deletions will cascade |
storefrontUserId - order_by
|
|
updatedAt - order_by
|
Example
{
"createdAt": "asc",
"customerMessage": "asc",
"id": "asc",
"response": "asc",
"sessionId": "asc",
"siteId": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc"
}
SkioSmsMessagingHistory_min_order_by
Description
order by min() on columns of table "SkioSmsMessagingHistory"
Fields
| Input Field | Description |
|---|---|
createdAt - order_by
|
|
customerMessage - order_by
|
|
id - order_by
|
|
response - order_by
|
Response sent to the customer |
sessionId - order_by
|
Groups messages by session, necessary for grouping logs+feeding history to bot prompts |
siteId - order_by
|
Can be null if site is deleted. Only storefrontUser deletions will cascade |
storefrontUserId - order_by
|
|
updatedAt - order_by
|
Example
{
"createdAt": "asc",
"customerMessage": "asc",
"id": "asc",
"response": "asc",
"sessionId": "asc",
"siteId": "asc",
"storefrontUserId": "asc",
"updatedAt": "asc"
}
SkipOption
SkipSubscriptionInput
Fields
| Input Field | Description |
|---|---|
debugCaller - String
|
|
skipOption - SkipOption
|
|
subscriptionId - uuid!
|
Example
{
"debugCaller": "xyz789",
"skipOption": SkipOption,
"subscriptionId": uuid
}
SkipSubscriptionOutput
SkuSwap
Description
columns and relationships of "SkuSwap"
Fields
| Field Name | Description |
|---|---|
SellingPlan - SellingPlan!
|
An object relationship |
afterOrderNumber - Int!
|
|
createdAt - timestamptz!
|
|
id - uuid!
|
|
newPrice - numeric
|
|
overrideDaysToNextBilling - Int
|
|
productVariantFromPlatformId - String
|
|
productVariantPlatformId - String
|
|
removedAt - timestamp
|
|
sellingPlanId - uuid!
|
|
siteId - uuid!
|
|
sku - String
|
|
updatedAt - timestamptz!
|
Example
{
"SellingPlan": SellingPlan,
"afterOrderNumber": 987,
"createdAt": timestamptz,
"id": uuid,
"newPrice": numeric,
"overrideDaysToNextBilling": 987,
"productVariantFromPlatformId": "abc123",
"productVariantPlatformId": "abc123",
"removedAt": timestamp,
"sellingPlanId": uuid,
"siteId": uuid,
"sku": "abc123",
"updatedAt": timestamptz
}
SkuSwap_aggregate_order_by
Description
order by aggregate values of table "SkuSwap"
Fields
| Input Field | Description |
|---|---|
avg - SkuSwap_avg_order_by
|
|
count - order_by
|
|
max - SkuSwap_max_order_by
|
|
min - SkuSwap_min_order_by
|
|
stddev - SkuSwap_stddev_order_by
|
|
stddev_pop - SkuSwap_stddev_pop_order_by
|
|
stddev_samp - SkuSwap_stddev_samp_order_by
|
|
sum - SkuSwap_sum_order_by
|
|
var_pop - SkuSwap_var_pop_order_by
|
|
var_samp - SkuSwap_var_samp_order_by
|
|
variance - SkuSwap_variance_order_by
|
Example
{
"avg": SkuSwap_avg_order_by,
"count": "asc",
"max": SkuSwap_max_order_by,
"min": SkuSwap_min_order_by,
"stddev": SkuSwap_stddev_order_by,
"stddev_pop": SkuSwap_stddev_pop_order_by,
"stddev_samp": SkuSwap_stddev_samp_order_by,
"sum": SkuSwap_sum_order_by,
"var_pop": SkuSwap_var_pop_order_by,
"var_samp": SkuSwap_var_samp_order_by,
"variance": SkuSwap_variance_order_by
}
SkuSwap_avg_order_by
SkuSwap_bool_exp
Description
Boolean expression to filter rows from the table "SkuSwap". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
SellingPlan - SellingPlan_bool_exp
|
|
_and - [SkuSwap_bool_exp!]
|
|
_not - SkuSwap_bool_exp
|
|
_or - [SkuSwap_bool_exp!]
|
|
afterOrderNumber - Int_comparison_exp
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
newPrice - numeric_comparison_exp
|
|
overrideDaysToNextBilling - Int_comparison_exp
|
|
productVariantFromPlatformId - String_comparison_exp
|
|
productVariantPlatformId - String_comparison_exp
|
|
removedAt - timestamp_comparison_exp
|
|
sellingPlanId - uuid_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
sku - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"SellingPlan": SellingPlan_bool_exp,
"_and": [SkuSwap_bool_exp],
"_not": SkuSwap_bool_exp,
"_or": [SkuSwap_bool_exp],
"afterOrderNumber": Int_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"newPrice": numeric_comparison_exp,
"overrideDaysToNextBilling": Int_comparison_exp,
"productVariantFromPlatformId": String_comparison_exp,
"productVariantPlatformId": String_comparison_exp,
"removedAt": timestamp_comparison_exp,
"sellingPlanId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"sku": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SkuSwap_max_order_by
Description
order by max() on columns of table "SkuSwap"
Fields
| Input Field | Description |
|---|---|
afterOrderNumber - order_by
|
|
createdAt - order_by
|
|
id - order_by
|
|
newPrice - order_by
|
|
overrideDaysToNextBilling - order_by
|
|
productVariantFromPlatformId - order_by
|
|
productVariantPlatformId - order_by
|
|
removedAt - order_by
|
|
sellingPlanId - order_by
|
|
siteId - order_by
|
|
sku - order_by
|
|
updatedAt - order_by
|
Example
{
"afterOrderNumber": "asc",
"createdAt": "asc",
"id": "asc",
"newPrice": "asc",
"overrideDaysToNextBilling": "asc",
"productVariantFromPlatformId": "asc",
"productVariantPlatformId": "asc",
"removedAt": "asc",
"sellingPlanId": "asc",
"siteId": "asc",
"sku": "asc",
"updatedAt": "asc"
}
SkuSwap_min_order_by
Description
order by min() on columns of table "SkuSwap"
Fields
| Input Field | Description |
|---|---|
afterOrderNumber - order_by
|
|
createdAt - order_by
|
|
id - order_by
|
|
newPrice - order_by
|
|
overrideDaysToNextBilling - order_by
|
|
productVariantFromPlatformId - order_by
|
|
productVariantPlatformId - order_by
|
|
removedAt - order_by
|
|
sellingPlanId - order_by
|
|
siteId - order_by
|
|
sku - order_by
|
|
updatedAt - order_by
|
Example
{
"afterOrderNumber": "asc",
"createdAt": "asc",
"id": "asc",
"newPrice": "asc",
"overrideDaysToNextBilling": "asc",
"productVariantFromPlatformId": "asc",
"productVariantPlatformId": "asc",
"removedAt": "asc",
"sellingPlanId": "asc",
"siteId": "asc",
"sku": "asc",
"updatedAt": "asc"
}
SkuSwap_stddev_order_by
SkuSwap_stddev_pop_order_by
SkuSwap_stddev_samp_order_by
SkuSwap_sum_order_by
SkuSwap_var_pop_order_by
SkuSwap_var_samp_order_by
SkuSwap_variance_order_by
StorefrontUser_aggregate_order_by
Description
order by aggregate values of table "StorefrontUser"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - StorefrontUser_max_order_by
|
|
min - StorefrontUser_min_order_by
|
Example
{
"count": "asc",
"max": StorefrontUser_max_order_by,
"min": StorefrontUser_min_order_by
}
StorefrontUser_bool_exp
Description
Boolean expression to filter rows from the table "StorefrontUser". All fields are combined with a logical 'AND'.
Fields
Example
{
"AuditLogs": AuditLog_bool_exp,
"BackupPaymentMethod": PaymentMethod_bool_exp,
"Orders": Order_bool_exp,
"PaymentMethods": PaymentMethod_bool_exp,
"RewardCreditHistories": RewardCreditHistory_bool_exp,
"ShippingAddresses": Address_bool_exp,
"Site": Site_bool_exp,
"SkioSmsMessagingHistory": SkioSmsMessagingHistory_bool_exp,
"StorefrontUserTiers": StorefrontUserTier_bool_exp,
"Subscriptions": Subscription_bool_exp,
"Tags": TagRelationship_bool_exp,
"User": User_bool_exp,
"_and": [StorefrontUser_bool_exp],
"_not": StorefrontUser_bool_exp,
"_or": [StorefrontUser_bool_exp],
"createdAt": timestamptz_comparison_exp,
"email": String_comparison_exp,
"emailLower": String_comparison_exp,
"firstName": String_comparison_exp,
"id": uuid_comparison_exp,
"lastName": String_comparison_exp,
"phoneNumber": String_comparison_exp,
"platformId": String_comparison_exp,
"qaToken": uuid_comparison_exp,
"redactedAt": timestamptz_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"shopifyTags": jsonb_comparison_exp,
"siteId": uuid_comparison_exp,
"smsTransactionalOptIn": Boolean_comparison_exp,
"tempSmsTransactionalOptIn": Boolean_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
StorefrontUser_max_order_by
Description
order by max() on columns of table "StorefrontUser"
Example
{
"createdAt": "asc",
"email": "asc",
"emailLower": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"qaToken": "asc",
"redactedAt": "asc",
"removedAt": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
StorefrontUser_min_order_by
Description
order by min() on columns of table "StorefrontUser"
Example
{
"createdAt": "asc",
"email": "asc",
"emailLower": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"qaToken": "asc",
"redactedAt": "asc",
"removedAt": "asc",
"siteId": "asc",
"updatedAt": "asc"
}
StorefrontUser_order_by
Description
Ordering options when selecting data from "StorefrontUser".
Fields
| Input Field | Description |
|---|---|
AuditLogs_aggregate - AuditLog_aggregate_order_by
|
|
BackupPaymentMethod - PaymentMethod_order_by
|
|
Orders_aggregate - Order_aggregate_order_by
|
|
PaymentMethods_aggregate - PaymentMethod_aggregate_order_by
|
|
RewardCreditHistories_aggregate - RewardCreditHistory_aggregate_order_by
|
|
ShippingAddresses_aggregate - Address_aggregate_order_by
|
|
Site - Site_order_by
|
|
SkioSmsMessagingHistory_aggregate - SkioSmsMessagingHistory_aggregate_order_by
|
|
StorefrontUserTiers_aggregate - StorefrontUserTier_aggregate_order_by
|
|
Subscriptions_aggregate - Subscription_aggregate_order_by
|
|
Tags_aggregate - TagRelationship_aggregate_order_by
|
|
User - User_order_by
|
|
createdAt - order_by
|
|
email - order_by
|
|
emailLower - order_by
|
|
firstName - order_by
|
|
id - order_by
|
|
lastName - order_by
|
|
phoneNumber - order_by
|
|
platformId - order_by
|
|
qaToken - order_by
|
|
redactedAt - order_by
|
|
removedAt - order_by
|
|
shopifyTags - order_by
|
|
siteId - order_by
|
|
smsTransactionalOptIn - order_by
|
|
tempSmsTransactionalOptIn - order_by
|
|
updatedAt - order_by
|
Example
{
"AuditLogs_aggregate": AuditLog_aggregate_order_by,
"BackupPaymentMethod": PaymentMethod_order_by,
"Orders_aggregate": Order_aggregate_order_by,
"PaymentMethods_aggregate": PaymentMethod_aggregate_order_by,
"RewardCreditHistories_aggregate": RewardCreditHistory_aggregate_order_by,
"ShippingAddresses_aggregate": Address_aggregate_order_by,
"Site": Site_order_by,
"SkioSmsMessagingHistory_aggregate": SkioSmsMessagingHistory_aggregate_order_by,
"StorefrontUserTiers_aggregate": StorefrontUserTier_aggregate_order_by,
"Subscriptions_aggregate": Subscription_aggregate_order_by,
"Tags_aggregate": TagRelationship_aggregate_order_by,
"User": User_order_by,
"createdAt": "asc",
"email": "asc",
"emailLower": "asc",
"firstName": "asc",
"id": "asc",
"lastName": "asc",
"phoneNumber": "asc",
"platformId": "asc",
"qaToken": "asc",
"redactedAt": "asc",
"removedAt": "asc",
"shopifyTags": "asc",
"siteId": "asc",
"smsTransactionalOptIn": "asc",
"tempSmsTransactionalOptIn": "asc",
"updatedAt": "asc"
}
StorefrontUser_select_column
Description
select columns of table "StorefrontUser"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"createdAt"
StorefrontUserTier
Description
track tier data for a customer
Fields
| Field Name | Description |
|---|---|
StorefrontUser - StorefrontUser!
|
An object relationship |
TierLevel - TierLevel!
|
An object relationship |
joinDate - timestamptz!
|
|
removedAt - timestamptz
|
|
storefrontUserId - uuid!
|
|
tierExpiresAt - timestamptz
|
|
tierLevelId - uuid!
|
Example
{
"StorefrontUser": StorefrontUser,
"TierLevel": TierLevel,
"joinDate": timestamptz,
"removedAt": timestamptz,
"storefrontUserId": uuid,
"tierExpiresAt": timestamptz,
"tierLevelId": uuid
}
StorefrontUserTier_aggregate_order_by
Description
order by aggregate values of table "StorefrontUserTier"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - StorefrontUserTier_max_order_by
|
|
min - StorefrontUserTier_min_order_by
|
Example
{
"count": "asc",
"max": StorefrontUserTier_max_order_by,
"min": StorefrontUserTier_min_order_by
}
StorefrontUserTier_bool_exp
Description
Boolean expression to filter rows from the table "StorefrontUserTier". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
StorefrontUser - StorefrontUser_bool_exp
|
|
TierLevel - TierLevel_bool_exp
|
|
_and - [StorefrontUserTier_bool_exp!]
|
|
_not - StorefrontUserTier_bool_exp
|
|
_or - [StorefrontUserTier_bool_exp!]
|
|
joinDate - timestamptz_comparison_exp
|
|
removedAt - timestamptz_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
tierExpiresAt - timestamptz_comparison_exp
|
|
tierLevelId - uuid_comparison_exp
|
Example
{
"StorefrontUser": StorefrontUser_bool_exp,
"TierLevel": TierLevel_bool_exp,
"_and": [StorefrontUserTier_bool_exp],
"_not": StorefrontUserTier_bool_exp,
"_or": [StorefrontUserTier_bool_exp],
"joinDate": timestamptz_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"tierExpiresAt": timestamptz_comparison_exp,
"tierLevelId": uuid_comparison_exp
}
StorefrontUserTier_max_order_by
Description
order by max() on columns of table "StorefrontUserTier"
Example
{
"joinDate": "asc",
"removedAt": "asc",
"storefrontUserId": "asc",
"tierExpiresAt": "asc",
"tierLevelId": "asc"
}
StorefrontUserTier_min_order_by
Description
order by min() on columns of table "StorefrontUserTier"
Example
{
"joinDate": "asc",
"removedAt": "asc",
"storefrontUserId": "asc",
"tierExpiresAt": "asc",
"tierLevelId": "asc"
}
String
Example
"abc123"
String_array_comparison_exp
Description
Boolean expression to compare columns of type "String". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_contained_in - [String!]
|
is the array contained in the given array value |
_contains - [String!]
|
does the array contain the given value |
_eq - [String!]
|
|
_gt - [String!]
|
|
_gte - [String!]
|
|
_in - [String!]
|
|
_is_null - Boolean
|
|
_lt - [String!]
|
|
_lte - [String!]
|
|
_neq - [String!]
|
|
_nin - [String!]
|
Example
{
"_contained_in": ["abc123"],
"_contains": ["abc123"],
"_eq": ["abc123"],
"_gt": ["abc123"],
"_gte": ["xyz789"],
"_in": ["xyz789"],
"_is_null": true,
"_lt": ["abc123"],
"_lte": ["abc123"],
"_neq": ["abc123"],
"_nin": ["xyz789"]
}
String_comparison_exp
Description
Boolean expression to compare columns of type "String". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_eq - String
|
|
_gt - String
|
|
_gte - String
|
|
_ilike - String
|
does the column match the given case-insensitive pattern |
_in - [String!]
|
|
_iregex - String
|
does the column match the given POSIX regular expression, case insensitive |
_is_null - Boolean
|
|
_like - String
|
does the column match the given pattern |
_lt - String
|
|
_lte - String
|
|
_neq - String
|
|
_nilike - String
|
does the column NOT match the given case-insensitive pattern |
_nin - [String!]
|
|
_niregex - String
|
does the column NOT match the given POSIX regular expression, case insensitive |
_nlike - String
|
does the column NOT match the given pattern |
_nregex - String
|
does the column NOT match the given POSIX regular expression, case sensitive |
_nsimilar - String
|
does the column NOT match the given SQL regular expression |
_regex - String
|
does the column match the given POSIX regular expression, case sensitive |
_similar - String
|
does the column match the given SQL regular expression |
Example
{
"_eq": "xyz789",
"_gt": "abc123",
"_gte": "xyz789",
"_ilike": "xyz789",
"_in": ["abc123"],
"_iregex": "abc123",
"_is_null": true,
"_like": "abc123",
"_lt": "xyz789",
"_lte": "abc123",
"_neq": "abc123",
"_nilike": "xyz789",
"_nin": ["abc123"],
"_niregex": "xyz789",
"_nlike": "xyz789",
"_nregex": "xyz789",
"_nsimilar": "abc123",
"_regex": "xyz789",
"_similar": "xyz789"
}
Subscription_aggregate_order_by
Description
order by aggregate values of table "Subscription"
Fields
| Input Field | Description |
|---|---|
avg - Subscription_avg_order_by
|
|
count - order_by
|
|
max - Subscription_max_order_by
|
|
min - Subscription_min_order_by
|
|
stddev - Subscription_stddev_order_by
|
|
stddev_pop - Subscription_stddev_pop_order_by
|
|
stddev_samp - Subscription_stddev_samp_order_by
|
|
sum - Subscription_sum_order_by
|
|
var_pop - Subscription_var_pop_order_by
|
|
var_samp - Subscription_var_samp_order_by
|
|
variance - Subscription_variance_order_by
|
Example
{
"avg": Subscription_avg_order_by,
"count": "asc",
"max": Subscription_max_order_by,
"min": Subscription_min_order_by,
"stddev": Subscription_stddev_order_by,
"stddev_pop": Subscription_stddev_pop_order_by,
"stddev_samp": Subscription_stddev_samp_order_by,
"sum": Subscription_sum_order_by,
"var_pop": Subscription_var_pop_order_by,
"var_samp": Subscription_var_samp_order_by,
"variance": Subscription_variance_order_by
}
Subscription_avg_order_by
Description
order by avg() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_bool_exp
Description
Boolean expression to filter rows from the table "Subscription". All fields are combined with a logical 'AND'.
Fields
Example
{
"AuditLogs": AuditLog_bool_exp,
"BillingPolicy": Policy_bool_exp,
"CancelFlowSessions": CancelFlowSession_bool_exp,
"CancelFlowV2Sessions": CancelFlowV2Session_bool_exp,
"CancelFlowV3Sessions": CancelFlowV3Session_bool_exp,
"DeliveryPolicy": Policy_bool_exp,
"Discounts": Discount_bool_exp,
"FulfillmentOrders": Order_bool_exp,
"NotificationLogs": NotificationLog_bool_exp,
"Orders": Order_bool_exp,
"PaymentMethod": PaymentMethod_bool_exp,
"PrepaidDeliveryPolicy": Policy_bool_exp,
"PrepaidGiftRecipient": StorefrontUser_bool_exp,
"PrepaidSubscriptionLines": SubscriptionLine_bool_exp,
"ShippingAddress": Address_bool_exp,
"Site": Site_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"SubscriptionLines": SubscriptionLine_bool_exp,
"SurpriseDelightSessions": SurpriseDelightSessions_bool_exp,
"_and": [Subscription_bool_exp],
"_not": Subscription_bool_exp,
"_or": [Subscription_bool_exp],
"billingPolicyId": uuid_comparison_exp,
"cancelledAt": timestamptz_comparison_exp,
"churnPredictedAt": timestamptz_comparison_exp,
"churnRiskReasons": String_array_comparison_exp,
"churnScore": numeric_comparison_exp,
"createdAt": timestamptz_comparison_exp,
"currencyCode": String_comparison_exp,
"customAttributes": jsonb_comparison_exp,
"cyclesCompleted": Int_comparison_exp,
"deliveryPolicyId": uuid_comparison_exp,
"deliveryPrice": numeric_comparison_exp,
"deliveryPriceOverride": Int_comparison_exp,
"id": uuid_comparison_exp,
"isPickup": Boolean_comparison_exp,
"lastBillingAttemptAt": timestamptz_comparison_exp,
"maxStreakCount": Int_comparison_exp,
"metadata": jsonb_comparison_exp,
"migrationIndex": Int_comparison_exp,
"nextBillingDate": timestamptz_comparison_exp,
"nextRenewalDate": timestamptz_comparison_exp,
"note": String_comparison_exp,
"originOrder": Order_bool_exp,
"originOrderId": uuid_comparison_exp,
"platformId": String_comparison_exp,
"prepaidDeliveryPolicyId": uuid_comparison_exp,
"prepaidProductPricesPerDelivery": jsonb_comparison_exp,
"remainingCyclesUntilRenewal": Int_comparison_exp,
"shippingAddressId": uuid_comparison_exp,
"siteId": uuid_comparison_exp,
"status": String_comparison_exp,
"statusContext": String_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"streakCount": Int_comparison_exp,
"streakExpiresAt": timestamptz_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Subscription_max_order_by
Description
order by max() on columns of table "Subscription"
Fields
| Input Field | Description |
|---|---|
billingPolicyId - order_by
|
|
cancelledAt - order_by
|
|
churnPredictedAt - order_by
|
|
churnRiskReasons - order_by
|
|
churnScore - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
cyclesCompleted - order_by
|
|
deliveryPolicyId - order_by
|
|
deliveryPrice - order_by
|
|
deliveryPriceOverride - order_by
|
|
id - order_by
|
|
lastBillingAttemptAt - order_by
|
|
maxStreakCount - order_by
|
|
migrationIndex - order_by
|
|
nextBillingDate - order_by
|
|
note - order_by
|
|
originOrderId - order_by
|
|
platformId - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
status - order_by
|
|
statusContext - order_by
|
|
storefrontUserId - order_by
|
|
streakCount - order_by
|
|
streakExpiresAt - order_by
|
|
updatedAt - order_by
|
Example
{
"billingPolicyId": "asc",
"cancelledAt": "asc",
"churnPredictedAt": "asc",
"churnRiskReasons": "asc",
"churnScore": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"cyclesCompleted": "asc",
"deliveryPolicyId": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"id": "asc",
"lastBillingAttemptAt": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"nextBillingDate": "asc",
"note": "asc",
"originOrderId": "asc",
"platformId": "asc",
"prepaidDeliveryPolicyId": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"status": "asc",
"statusContext": "asc",
"storefrontUserId": "asc",
"streakCount": "asc",
"streakExpiresAt": "asc",
"updatedAt": "asc"
}
Subscription_min_order_by
Description
order by min() on columns of table "Subscription"
Fields
| Input Field | Description |
|---|---|
billingPolicyId - order_by
|
|
cancelledAt - order_by
|
|
churnPredictedAt - order_by
|
|
churnRiskReasons - order_by
|
|
churnScore - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
cyclesCompleted - order_by
|
|
deliveryPolicyId - order_by
|
|
deliveryPrice - order_by
|
|
deliveryPriceOverride - order_by
|
|
id - order_by
|
|
lastBillingAttemptAt - order_by
|
|
maxStreakCount - order_by
|
|
migrationIndex - order_by
|
|
nextBillingDate - order_by
|
|
note - order_by
|
|
originOrderId - order_by
|
|
platformId - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
status - order_by
|
|
statusContext - order_by
|
|
storefrontUserId - order_by
|
|
streakCount - order_by
|
|
streakExpiresAt - order_by
|
|
updatedAt - order_by
|
Example
{
"billingPolicyId": "asc",
"cancelledAt": "asc",
"churnPredictedAt": "asc",
"churnRiskReasons": "asc",
"churnScore": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"cyclesCompleted": "asc",
"deliveryPolicyId": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"id": "asc",
"lastBillingAttemptAt": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"nextBillingDate": "asc",
"note": "asc",
"originOrderId": "asc",
"platformId": "asc",
"prepaidDeliveryPolicyId": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"status": "asc",
"statusContext": "asc",
"storefrontUserId": "asc",
"streakCount": "asc",
"streakExpiresAt": "asc",
"updatedAt": "asc"
}
Subscription_order_by
Description
Ordering options when selecting data from "Subscription".
Fields
| Input Field | Description |
|---|---|
AuditLogs_aggregate - AuditLog_aggregate_order_by
|
|
BillingPolicy - Policy_order_by
|
|
CancelFlowSessions_aggregate - CancelFlowSession_aggregate_order_by
|
|
CancelFlowV2Sessions_aggregate - CancelFlowV2Session_aggregate_order_by
|
|
CancelFlowV3Sessions_aggregate - CancelFlowV3Session_aggregate_order_by
|
|
DeliveryPolicy - Policy_order_by
|
|
Discounts_aggregate - Discount_aggregate_order_by
|
|
FulfillmentOrders_aggregate - Order_aggregate_order_by
|
|
NotificationLogs_aggregate - NotificationLog_aggregate_order_by
|
|
Orders_aggregate - Order_aggregate_order_by
|
|
PaymentMethod - PaymentMethod_order_by
|
|
PrepaidDeliveryPolicy - Policy_order_by
|
|
PrepaidGiftRecipient - StorefrontUser_order_by
|
|
PrepaidSubscriptionLines_aggregate - SubscriptionLine_aggregate_order_by
|
|
ShippingAddress - Address_order_by
|
|
Site - Site_order_by
|
|
StorefrontUser - StorefrontUser_order_by
|
|
SubscriptionLines_aggregate - SubscriptionLine_aggregate_order_by
|
|
SurpriseDelightSessions_aggregate - SurpriseDelightSessions_aggregate_order_by
|
|
billingPolicyId - order_by
|
|
cancelledAt - order_by
|
|
churnPredictedAt - order_by
|
|
churnRiskReasons - order_by
|
|
churnScore - order_by
|
|
createdAt - order_by
|
|
currencyCode - order_by
|
|
customAttributes - order_by
|
|
cyclesCompleted - order_by
|
|
deliveryPolicyId - order_by
|
|
deliveryPrice - order_by
|
|
deliveryPriceOverride - order_by
|
|
id - order_by
|
|
isPickup - order_by
|
|
lastBillingAttemptAt - order_by
|
|
maxStreakCount - order_by
|
|
metadata - order_by
|
|
migrationIndex - order_by
|
|
nextBillingDate - order_by
|
|
nextRenewalDate - order_by
|
|
note - order_by
|
|
originOrder - Order_order_by
|
|
originOrderId - order_by
|
|
platformId - order_by
|
|
prepaidDeliveryPolicyId - order_by
|
|
prepaidProductPricesPerDelivery - order_by
|
|
remainingCyclesUntilRenewal - order_by
|
|
shippingAddressId - order_by
|
|
siteId - order_by
|
|
status - order_by
|
|
statusContext - order_by
|
|
storefrontUserId - order_by
|
|
streakCount - order_by
|
|
streakExpiresAt - order_by
|
|
updatedAt - order_by
|
Example
{
"AuditLogs_aggregate": AuditLog_aggregate_order_by,
"BillingPolicy": Policy_order_by,
"CancelFlowSessions_aggregate": CancelFlowSession_aggregate_order_by,
"CancelFlowV2Sessions_aggregate": CancelFlowV2Session_aggregate_order_by,
"CancelFlowV3Sessions_aggregate": CancelFlowV3Session_aggregate_order_by,
"DeliveryPolicy": Policy_order_by,
"Discounts_aggregate": Discount_aggregate_order_by,
"FulfillmentOrders_aggregate": Order_aggregate_order_by,
"NotificationLogs_aggregate": NotificationLog_aggregate_order_by,
"Orders_aggregate": Order_aggregate_order_by,
"PaymentMethod": PaymentMethod_order_by,
"PrepaidDeliveryPolicy": Policy_order_by,
"PrepaidGiftRecipient": StorefrontUser_order_by,
"PrepaidSubscriptionLines_aggregate": SubscriptionLine_aggregate_order_by,
"ShippingAddress": Address_order_by,
"Site": Site_order_by,
"StorefrontUser": StorefrontUser_order_by,
"SubscriptionLines_aggregate": SubscriptionLine_aggregate_order_by,
"SurpriseDelightSessions_aggregate": SurpriseDelightSessions_aggregate_order_by,
"billingPolicyId": "asc",
"cancelledAt": "asc",
"churnPredictedAt": "asc",
"churnRiskReasons": "asc",
"churnScore": "asc",
"createdAt": "asc",
"currencyCode": "asc",
"customAttributes": "asc",
"cyclesCompleted": "asc",
"deliveryPolicyId": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"id": "asc",
"isPickup": "asc",
"lastBillingAttemptAt": "asc",
"maxStreakCount": "asc",
"metadata": "asc",
"migrationIndex": "asc",
"nextBillingDate": "asc",
"nextRenewalDate": "asc",
"note": "asc",
"originOrder": Order_order_by,
"originOrderId": "asc",
"platformId": "asc",
"prepaidDeliveryPolicyId": "asc",
"prepaidProductPricesPerDelivery": "asc",
"remainingCyclesUntilRenewal": "asc",
"shippingAddressId": "asc",
"siteId": "asc",
"status": "asc",
"statusContext": "asc",
"storefrontUserId": "asc",
"streakCount": "asc",
"streakExpiresAt": "asc",
"updatedAt": "asc"
}
subscription_root
Example
{}
Subscription_select_column
Description
select columns of table "Subscription"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"billingPolicyId"
Subscription_stddev_order_by
Description
order by stddev() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_stddev_pop_order_by
Description
order by stddev_pop() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_stddev_samp_order_by
Description
order by stddev_samp() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_sum_order_by
Description
order by sum() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_var_pop_order_by
Description
order by var_pop() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_var_samp_order_by
Description
order by var_samp() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
Subscription_variance_order_by
Description
order by variance() on columns of table "Subscription"
Example
{
"churnScore": "asc",
"cyclesCompleted": "asc",
"deliveryPrice": "asc",
"deliveryPriceOverride": "asc",
"maxStreakCount": "asc",
"migrationIndex": "asc",
"streakCount": "asc"
}
SubscriptionEditIntervalInput
Example
{
"billingInterval": "xyz789",
"billingIntervalCount": 987,
"debugCaller": "abc123",
"nextBillingDate": "abc123",
"prepaidDeliveryInterval": "xyz789",
"prepaidDeliveryIntervalCount": 123,
"quickActionMetadata": jsonb,
"subscriptionId": uuid
}
SubscriptionEditIntervalOutput
Fields
| Field Name | Description |
|---|---|
subscriptionId - uuid!
|
Example
{"subscriptionId": uuid}
SubscriptionLine_aggregate_order_by
Description
order by aggregate values of table "SubscriptionLine"
Fields
| Input Field | Description |
|---|---|
avg - SubscriptionLine_avg_order_by
|
|
count - order_by
|
|
max - SubscriptionLine_max_order_by
|
|
min - SubscriptionLine_min_order_by
|
|
stddev - SubscriptionLine_stddev_order_by
|
|
stddev_pop - SubscriptionLine_stddev_pop_order_by
|
|
stddev_samp - SubscriptionLine_stddev_samp_order_by
|
|
sum - SubscriptionLine_sum_order_by
|
|
var_pop - SubscriptionLine_var_pop_order_by
|
|
var_samp - SubscriptionLine_var_samp_order_by
|
|
variance - SubscriptionLine_variance_order_by
|
Example
{
"avg": SubscriptionLine_avg_order_by,
"count": "asc",
"max": SubscriptionLine_max_order_by,
"min": SubscriptionLine_min_order_by,
"stddev": SubscriptionLine_stddev_order_by,
"stddev_pop": SubscriptionLine_stddev_pop_order_by,
"stddev_samp": SubscriptionLine_stddev_samp_order_by,
"sum": SubscriptionLine_sum_order_by,
"var_pop": SubscriptionLine_var_pop_order_by,
"var_samp": SubscriptionLine_var_samp_order_by,
"variance": SubscriptionLine_variance_order_by
}
SubscriptionLine_avg_order_by
SubscriptionLine_bool_exp
Description
Boolean expression to filter rows from the table "SubscriptionLine". All fields are combined with a logical 'AND'.
Fields
Example
{
"Discounts": Discount_bool_exp,
"OrderLineItems": OrderLineItem_bool_exp,
"OriginalSellingPlan": SellingPlan_bool_exp,
"PrepaidSubscription": Subscription_bool_exp,
"ProductVariant": ProductVariant_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [SubscriptionLine_bool_exp],
"_not": SubscriptionLine_bool_exp,
"_or": [SubscriptionLine_bool_exp],
"createdAt": timestamptz_comparison_exp,
"customAttributes": jsonb_comparison_exp,
"groupId": uuid_comparison_exp,
"id": uuid_comparison_exp,
"isPrepaid": Boolean_comparison_exp,
"ordersRemaining": Int_comparison_exp,
"platformId": String_comparison_exp,
"prepaidSubscriptionId": uuid_comparison_exp,
"priceWithoutDiscount": numeric_comparison_exp,
"productVariantId": uuid_comparison_exp,
"quantity": Int_comparison_exp,
"reChargeId": String_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"sellingPlanId": uuid_comparison_exp,
"subscriptionId": uuid_comparison_exp,
"taxable": Boolean_comparison_exp,
"titleOverride": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
SubscriptionLine_max_order_by
Description
order by max() on columns of table "SubscriptionLine"
Fields
| Input Field | Description |
|---|---|
createdAt - order_by
|
|
groupId - order_by
|
only ever null if stale plan and unavailable groupplan |
id - order_by
|
|
ordersRemaining - order_by
|
|
platformId - order_by
|
|
prepaidSubscriptionId - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
reChargeId - order_by
|
|
removedAt - order_by
|
|
sellingPlanId - order_by
|
|
subscriptionId - order_by
|
|
titleOverride - order_by
|
|
updatedAt - order_by
|
Example
{
"createdAt": "asc",
"groupId": "asc",
"id": "asc",
"ordersRemaining": "asc",
"platformId": "asc",
"prepaidSubscriptionId": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"reChargeId": "asc",
"removedAt": "asc",
"sellingPlanId": "asc",
"subscriptionId": "asc",
"titleOverride": "asc",
"updatedAt": "asc"
}
SubscriptionLine_min_order_by
Description
order by min() on columns of table "SubscriptionLine"
Fields
| Input Field | Description |
|---|---|
createdAt - order_by
|
|
groupId - order_by
|
only ever null if stale plan and unavailable groupplan |
id - order_by
|
|
ordersRemaining - order_by
|
|
platformId - order_by
|
|
prepaidSubscriptionId - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
reChargeId - order_by
|
|
removedAt - order_by
|
|
sellingPlanId - order_by
|
|
subscriptionId - order_by
|
|
titleOverride - order_by
|
|
updatedAt - order_by
|
Example
{
"createdAt": "asc",
"groupId": "asc",
"id": "asc",
"ordersRemaining": "asc",
"platformId": "asc",
"prepaidSubscriptionId": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"reChargeId": "asc",
"removedAt": "asc",
"sellingPlanId": "asc",
"subscriptionId": "asc",
"titleOverride": "asc",
"updatedAt": "asc"
}
SubscriptionLine_order_by
Description
Ordering options when selecting data from "SubscriptionLine".
Fields
| Input Field | Description |
|---|---|
Discounts_aggregate - Discount_aggregate_order_by
|
|
OrderLineItems_aggregate - OrderLineItem_aggregate_order_by
|
|
OriginalSellingPlan - SellingPlan_order_by
|
|
PrepaidSubscription - Subscription_order_by
|
|
ProductVariant - ProductVariant_order_by
|
|
Subscription - Subscription_order_by
|
|
createdAt - order_by
|
|
customAttributes - order_by
|
|
groupId - order_by
|
|
id - order_by
|
|
isPrepaid - order_by
|
|
ordersRemaining - order_by
|
|
platformId - order_by
|
|
prepaidSubscriptionId - order_by
|
|
priceWithoutDiscount - order_by
|
|
productVariantId - order_by
|
|
quantity - order_by
|
|
reChargeId - order_by
|
|
removedAt - order_by
|
|
sellingPlanId - order_by
|
|
subscriptionId - order_by
|
|
taxable - order_by
|
|
titleOverride - order_by
|
|
updatedAt - order_by
|
Example
{
"Discounts_aggregate": Discount_aggregate_order_by,
"OrderLineItems_aggregate": OrderLineItem_aggregate_order_by,
"OriginalSellingPlan": SellingPlan_order_by,
"PrepaidSubscription": Subscription_order_by,
"ProductVariant": ProductVariant_order_by,
"Subscription": Subscription_order_by,
"createdAt": "asc",
"customAttributes": "asc",
"groupId": "asc",
"id": "asc",
"isPrepaid": "asc",
"ordersRemaining": "asc",
"platformId": "asc",
"prepaidSubscriptionId": "asc",
"priceWithoutDiscount": "asc",
"productVariantId": "asc",
"quantity": "asc",
"reChargeId": "asc",
"removedAt": "asc",
"sellingPlanId": "asc",
"subscriptionId": "asc",
"taxable": "asc",
"titleOverride": "asc",
"updatedAt": "asc"
}
SubscriptionLine_select_column
Description
select columns of table "SubscriptionLine"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"createdAt"
SubscriptionLine_stddev_order_by
SubscriptionLine_stddev_pop_order_by
SubscriptionLine_stddev_samp_order_by
SubscriptionLine_sum_order_by
SubscriptionLine_var_pop_order_by
SubscriptionLine_var_samp_order_by
SubscriptionLine_variance_order_by
SubscriptionUpdatePaymentMethodInput
SubscriptionUpdatePaymentMethodOutput
Fields
| Field Name | Description |
|---|---|
subscriptionId - uuid!
|
Example
{"subscriptionId": uuid}
SurpriseDelightCustomerSessions_bool_exp
Description
Boolean expression to filter rows from the table "SurpriseDelightCustomerSessions". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
StorefrontUser - StorefrontUser_bool_exp
|
|
Subscription - Subscription_bool_exp
|
|
_and - [SurpriseDelightCustomerSessions_bool_exp!]
|
|
_not - SurpriseDelightCustomerSessions_bool_exp
|
|
_or - [SurpriseDelightCustomerSessions_bool_exp!]
|
|
created_at - timestamptz_comparison_exp
|
|
deliveredSubscriptionId - uuid_comparison_exp
|
|
group - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
ruleId - uuid_comparison_exp
|
|
status - String_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
Example
{
"StorefrontUser": StorefrontUser_bool_exp,
"Subscription": Subscription_bool_exp,
"_and": [SurpriseDelightCustomerSessions_bool_exp],
"_not": SurpriseDelightCustomerSessions_bool_exp,
"_or": [SurpriseDelightCustomerSessions_bool_exp],
"created_at": timestamptz_comparison_exp,
"deliveredSubscriptionId": uuid_comparison_exp,
"group": String_comparison_exp,
"id": uuid_comparison_exp,
"ruleId": uuid_comparison_exp,
"status": String_comparison_exp,
"storefrontUserId": uuid_comparison_exp
}
SurpriseDelightSessions_aggregate_order_by
Description
order by aggregate values of table "SurpriseDelightSessions"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - SurpriseDelightSessions_max_order_by
|
|
min - SurpriseDelightSessions_min_order_by
|
Example
{
"count": "asc",
"max": SurpriseDelightSessions_max_order_by,
"min": SurpriseDelightSessions_min_order_by
}
SurpriseDelightSessions_bool_exp
Description
Boolean expression to filter rows from the table "SurpriseDelightSessions". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Subscription - Subscription_bool_exp
|
|
_and - [SurpriseDelightSessions_bool_exp!]
|
|
_not - SurpriseDelightSessions_bool_exp
|
|
_or - [SurpriseDelightSessions_bool_exp!]
|
|
created_at - timestamptz_comparison_exp
|
|
group - String_comparison_exp
|
|
id - uuid_comparison_exp
|
|
ruleId - uuid_comparison_exp
|
|
status - String_comparison_exp
|
|
subscriptionId - uuid_comparison_exp
|
Example
{
"Subscription": Subscription_bool_exp,
"_and": [SurpriseDelightSessions_bool_exp],
"_not": SurpriseDelightSessions_bool_exp,
"_or": [SurpriseDelightSessions_bool_exp],
"created_at": timestamptz_comparison_exp,
"group": String_comparison_exp,
"id": uuid_comparison_exp,
"ruleId": uuid_comparison_exp,
"status": String_comparison_exp,
"subscriptionId": uuid_comparison_exp
}
SurpriseDelightSessions_max_order_by
Description
order by max() on columns of table "SurpriseDelightSessions"
Example
{
"created_at": "asc",
"group": "asc",
"id": "asc",
"ruleId": "asc",
"status": "asc",
"subscriptionId": "asc"
}
SurpriseDelightSessions_min_order_by
Description
order by min() on columns of table "SurpriseDelightSessions"
Example
{
"created_at": "asc",
"group": "asc",
"id": "asc",
"ruleId": "asc",
"status": "asc",
"subscriptionId": "asc"
}
SurpriseDelightSessions_order_by
Description
Ordering options when selecting data from "SurpriseDelightSessions".
Example
{
"Subscription": Subscription_order_by,
"created_at": "asc",
"group": "asc",
"id": "asc",
"ruleId": "asc",
"status": "asc",
"subscriptionId": "asc"
}
SurpriseDelightSessions_select_column
Description
select columns of table "SurpriseDelightSessions"
Values
| Enum Value | Description |
|---|---|
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
|
|
column name |
Example
"created_at"
SwapPricingOptionType
Values
| Enum Value | Description |
|---|---|
|
|
|
|
|
|
|
|
Example
"CUSTOM"
SwapSubscriptionProductVariantsInput
Example
{
"isGiftSwap": false,
"newCustomPrice": "abc123",
"newProductVariantId": "abc123",
"oldProductVariantId": "abc123",
"pricingOption": "CUSTOM",
"subscriptionId": "xyz789",
"subscriptionLinesToSwapFrom": ["abc123"]
}
SwapSubscriptionProductVariantsOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
Tag
Description
Tracks unique tags applied to different objects by a merchant (i.e. Product and Customer tags pulled from Shopify)
Fields
| Field Name | Description |
|---|---|
Site - Site!
|
An object relationship |
createdAt - timestamptz!
|
|
edges - [TagRelationship!]!
|
An array relationship |
id - uuid!
|
|
name - String!
|
Value of the tag |
siteId - uuid!
|
|
type - String!
|
The item this tag applied to (ex. Customer, Product, etc.). There should be a corresponding enum value for this column in Frost. |
updatedAt - timestamptz!
|
Example
{
"Site": Site,
"createdAt": timestamptz,
"edges": [TagRelationship],
"id": uuid,
"name": "abc123",
"siteId": uuid,
"type": "xyz789",
"updatedAt": timestamptz
}
Tag_aggregate_order_by
Description
order by aggregate values of table "Tag"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - Tag_max_order_by
|
|
min - Tag_min_order_by
|
Example
{
"count": "asc",
"max": Tag_max_order_by,
"min": Tag_min_order_by
}
Tag_bool_exp
Description
Boolean expression to filter rows from the table "Tag". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [Tag_bool_exp!]
|
|
_not - Tag_bool_exp
|
|
_or - [Tag_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
edges - TagRelationship_bool_exp
|
|
id - uuid_comparison_exp
|
|
name - String_comparison_exp
|
|
siteId - uuid_comparison_exp
|
|
type - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [Tag_bool_exp],
"_not": Tag_bool_exp,
"_or": [Tag_bool_exp],
"createdAt": timestamptz_comparison_exp,
"edges": TagRelationship_bool_exp,
"id": uuid_comparison_exp,
"name": String_comparison_exp,
"siteId": uuid_comparison_exp,
"type": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
Tag_max_order_by
Description
order by max() on columns of table "Tag"
Example
{
"createdAt": "asc",
"id": "asc",
"name": "asc",
"siteId": "asc",
"type": "asc",
"updatedAt": "asc"
}
Tag_min_order_by
Description
order by min() on columns of table "Tag"
Example
{
"createdAt": "asc",
"id": "asc",
"name": "asc",
"siteId": "asc",
"type": "asc",
"updatedAt": "asc"
}
TagRelationship
Description
Links a tag to the target item (ex. Product, Customer, etc.). If more target items types are needed in the future, the schema and constraints on this table will need to be updated.
Fields
| Field Name | Description |
|---|---|
Order - Order
|
An object relationship |
Product - Product
|
An object relationship |
StorefrontUser - StorefrontUser
|
An object relationship |
Tag - Tag!
|
An object relationship |
createdAt - timestamptz!
|
|
id - uuid!
|
|
orderId - uuid
|
|
productId - uuid
|
|
storefrontUserId - uuid
|
|
tagId - uuid!
|
|
updatedAt - timestamptz!
|
Example
{
"Order": Order,
"Product": Product,
"StorefrontUser": StorefrontUser,
"Tag": Tag,
"createdAt": timestamptz,
"id": uuid,
"orderId": uuid,
"productId": uuid,
"storefrontUserId": uuid,
"tagId": uuid,
"updatedAt": timestamptz
}
TagRelationship_aggregate_order_by
Description
order by aggregate values of table "TagRelationship"
Fields
| Input Field | Description |
|---|---|
count - order_by
|
|
max - TagRelationship_max_order_by
|
|
min - TagRelationship_min_order_by
|
Example
{
"count": "asc",
"max": TagRelationship_max_order_by,
"min": TagRelationship_min_order_by
}
TagRelationship_bool_exp
Description
Boolean expression to filter rows from the table "TagRelationship". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Order - Order_bool_exp
|
|
Product - Product_bool_exp
|
|
StorefrontUser - StorefrontUser_bool_exp
|
|
Tag - Tag_bool_exp
|
|
_and - [TagRelationship_bool_exp!]
|
|
_not - TagRelationship_bool_exp
|
|
_or - [TagRelationship_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderId - uuid_comparison_exp
|
|
productId - uuid_comparison_exp
|
|
storefrontUserId - uuid_comparison_exp
|
|
tagId - uuid_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"Order": Order_bool_exp,
"Product": Product_bool_exp,
"StorefrontUser": StorefrontUser_bool_exp,
"Tag": Tag_bool_exp,
"_and": [TagRelationship_bool_exp],
"_not": TagRelationship_bool_exp,
"_or": [TagRelationship_bool_exp],
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"orderId": uuid_comparison_exp,
"productId": uuid_comparison_exp,
"storefrontUserId": uuid_comparison_exp,
"tagId": uuid_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
TagRelationship_max_order_by
Description
order by max() on columns of table "TagRelationship"
Example
{
"createdAt": "asc",
"id": "asc",
"orderId": "asc",
"productId": "asc",
"storefrontUserId": "asc",
"tagId": "asc",
"updatedAt": "asc"
}
TagRelationship_min_order_by
Description
order by min() on columns of table "TagRelationship"
Example
{
"createdAt": "asc",
"id": "asc",
"orderId": "asc",
"productId": "asc",
"storefrontUserId": "asc",
"tagId": "asc",
"updatedAt": "asc"
}
TaxLine
Description
columns and relationships of "TaxLine"
Fields
| Field Name | Description |
|---|---|
OrderLineItem - OrderLineItem
|
An object relationship |
ShippingLine - ShippingLine
|
An object relationship |
createdAt - timestamptz!
|
|
id - uuid!
|
|
orderLineItemId - uuid
|
|
price - numeric!
|
|
pricePresentmentAmount - numeric
|
|
pricePresentmentCurrencyCode - String
|
|
rate - numeric!
|
|
shippingLineId - uuid
|
|
title - String!
|
|
updatedAt - timestamptz!
|
Example
{
"OrderLineItem": OrderLineItem,
"ShippingLine": ShippingLine,
"createdAt": timestamptz,
"id": uuid,
"orderLineItemId": uuid,
"price": numeric,
"pricePresentmentAmount": numeric,
"pricePresentmentCurrencyCode": "xyz789",
"rate": numeric,
"shippingLineId": uuid,
"title": "abc123",
"updatedAt": timestamptz
}
TaxLine_aggregate_order_by
Description
order by aggregate values of table "TaxLine"
Fields
| Input Field | Description |
|---|---|
avg - TaxLine_avg_order_by
|
|
count - order_by
|
|
max - TaxLine_max_order_by
|
|
min - TaxLine_min_order_by
|
|
stddev - TaxLine_stddev_order_by
|
|
stddev_pop - TaxLine_stddev_pop_order_by
|
|
stddev_samp - TaxLine_stddev_samp_order_by
|
|
sum - TaxLine_sum_order_by
|
|
var_pop - TaxLine_var_pop_order_by
|
|
var_samp - TaxLine_var_samp_order_by
|
|
variance - TaxLine_variance_order_by
|
Example
{
"avg": TaxLine_avg_order_by,
"count": "asc",
"max": TaxLine_max_order_by,
"min": TaxLine_min_order_by,
"stddev": TaxLine_stddev_order_by,
"stddev_pop": TaxLine_stddev_pop_order_by,
"stddev_samp": TaxLine_stddev_samp_order_by,
"sum": TaxLine_sum_order_by,
"var_pop": TaxLine_var_pop_order_by,
"var_samp": TaxLine_var_samp_order_by,
"variance": TaxLine_variance_order_by
}
TaxLine_avg_order_by
TaxLine_bool_exp
Description
Boolean expression to filter rows from the table "TaxLine". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
OrderLineItem - OrderLineItem_bool_exp
|
|
ShippingLine - ShippingLine_bool_exp
|
|
_and - [TaxLine_bool_exp!]
|
|
_not - TaxLine_bool_exp
|
|
_or - [TaxLine_bool_exp!]
|
|
createdAt - timestamptz_comparison_exp
|
|
id - uuid_comparison_exp
|
|
orderLineItemId - uuid_comparison_exp
|
|
price - numeric_comparison_exp
|
|
pricePresentmentAmount - numeric_comparison_exp
|
|
pricePresentmentCurrencyCode - String_comparison_exp
|
|
rate - numeric_comparison_exp
|
|
shippingLineId - uuid_comparison_exp
|
|
title - String_comparison_exp
|
|
updatedAt - timestamptz_comparison_exp
|
Example
{
"OrderLineItem": OrderLineItem_bool_exp,
"ShippingLine": ShippingLine_bool_exp,
"_and": [TaxLine_bool_exp],
"_not": TaxLine_bool_exp,
"_or": [TaxLine_bool_exp],
"createdAt": timestamptz_comparison_exp,
"id": uuid_comparison_exp,
"orderLineItemId": uuid_comparison_exp,
"price": numeric_comparison_exp,
"pricePresentmentAmount": numeric_comparison_exp,
"pricePresentmentCurrencyCode": String_comparison_exp,
"rate": numeric_comparison_exp,
"shippingLineId": uuid_comparison_exp,
"title": String_comparison_exp,
"updatedAt": timestamptz_comparison_exp
}
TaxLine_max_order_by
Description
order by max() on columns of table "TaxLine"
Example
{
"createdAt": "asc",
"id": "asc",
"orderLineItemId": "asc",
"price": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"rate": "asc",
"shippingLineId": "asc",
"title": "asc",
"updatedAt": "asc"
}
TaxLine_min_order_by
Description
order by min() on columns of table "TaxLine"
Example
{
"createdAt": "asc",
"id": "asc",
"orderLineItemId": "asc",
"price": "asc",
"pricePresentmentAmount": "asc",
"pricePresentmentCurrencyCode": "asc",
"rate": "asc",
"shippingLineId": "asc",
"title": "asc",
"updatedAt": "asc"
}
TaxLine_stddev_order_by
TaxLine_stddev_pop_order_by
TaxLine_stddev_samp_order_by
TaxLine_sum_order_by
TaxLine_var_pop_order_by
TaxLine_var_samp_order_by
TaxLine_variance_order_by
Theme
Theme_bool_exp
Description
Boolean expression to filter rows from the table "Theme". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
Site - Site_bool_exp
|
|
_and - [Theme_bool_exp!]
|
|
_not - Theme_bool_exp
|
|
_or - [Theme_bool_exp!]
|
|
id - uuid_comparison_exp
|
Example
{
"Site": Site_bool_exp,
"_and": [Theme_bool_exp],
"_not": Theme_bool_exp,
"_or": [Theme_bool_exp],
"id": uuid_comparison_exp
}
Theme_order_by
Description
Ordering options when selecting data from "Theme".
Fields
| Input Field | Description |
|---|---|
Site - Site_order_by
|
|
id - order_by
|
Example
{"Site": Site_order_by, "id": "asc"}
Theme2
Description
columns and relationships of "Theme2"
Fields
| Field Name | Description |
|---|---|
Site - Site
|
An object relationship |
accentColor - String
|
|
accentTextColor - String
|
|
badgeBGColor - String
|
|
badgeTextColor - String
|
|
buttonBGColor - String
|
|
buttonBorderRadius - numeric
|
|
buttonTextColor - String
|
|
cardBorderRadius - numeric
|
|
cardBorderWidth - numeric
|
|
carouselSlideSeconds - Int
|
|
disableHalfSkip - Boolean
|
|
expandAllButtons - Boolean
|
|
headingColor - String
|
|
headingWeight - String
|
|
hideQuantityEditing - Boolean
|
|
id - uuid!
|
|
isPreview - Boolean!
|
|
loyaltyGradientEndColor - String
|
|
loyaltyGradientStartColor - String
|
|
loyaltyIconBgColor - String
|
|
loyaltyIconColor - String
|
|
neverHideOTUCards - Boolean
|
|
noSecondaryButtons - Boolean
|
|
primaryColor - String
|
|
qaPrimaryAccentColor - String
|
|
qaSecondaryAccentColor - String
|
|
radioBorderRadius - numeric
|
|
showTaxAndDuties - Boolean
|
|
siteId - uuid
|
|
tagBGColor - String
|
|
tagBorderRadius - numeric
|
|
tagTextColor - String
|
|
textAnchorColor - String
|
|
textApplyDiscountCode - String
|
|
textCancelNow - String
|
|
textColor - String
|
|
textEditFrequency - String
|
|
textOrderNow - String
|
|
textWeight - String
|
|
updated_at - timestamptz!
|
Example
{
"Site": Site,
"accentColor": "abc123",
"accentTextColor": "xyz789",
"badgeBGColor": "abc123",
"badgeTextColor": "abc123",
"buttonBGColor": "abc123",
"buttonBorderRadius": numeric,
"buttonTextColor": "abc123",
"cardBorderRadius": numeric,
"cardBorderWidth": numeric,
"carouselSlideSeconds": 987,
"disableHalfSkip": true,
"expandAllButtons": false,
"headingColor": "xyz789",
"headingWeight": "xyz789",
"hideQuantityEditing": true,
"id": uuid,
"isPreview": false,
"loyaltyGradientEndColor": "xyz789",
"loyaltyGradientStartColor": "abc123",
"loyaltyIconBgColor": "xyz789",
"loyaltyIconColor": "xyz789",
"neverHideOTUCards": true,
"noSecondaryButtons": true,
"primaryColor": "abc123",
"qaPrimaryAccentColor": "abc123",
"qaSecondaryAccentColor": "abc123",
"radioBorderRadius": numeric,
"showTaxAndDuties": false,
"siteId": uuid,
"tagBGColor": "xyz789",
"tagBorderRadius": numeric,
"tagTextColor": "xyz789",
"textAnchorColor": "abc123",
"textApplyDiscountCode": "xyz789",
"textCancelNow": "abc123",
"textColor": "xyz789",
"textEditFrequency": "abc123",
"textOrderNow": "abc123",
"textWeight": "xyz789",
"updated_at": timestamptz
}
Theme2_bool_exp
Description
Boolean expression to filter rows from the table "Theme2". All fields are combined with a logical 'AND'.
Fields
Example
{
"Site": Site_bool_exp,
"_and": [Theme2_bool_exp],
"_not": Theme2_bool_exp,
"_or": [Theme2_bool_exp],
"accentColor": String_comparison_exp,
"accentTextColor": String_comparison_exp,
"badgeBGColor": String_comparison_exp,
"badgeTextColor": String_comparison_exp,
"buttonBGColor": String_comparison_exp,
"buttonBorderRadius": numeric_comparison_exp,
"buttonTextColor": String_comparison_exp,
"cardBorderRadius": numeric_comparison_exp,
"cardBorderWidth": numeric_comparison_exp,
"carouselSlideSeconds": Int_comparison_exp,
"disableHalfSkip": Boolean_comparison_exp,
"expandAllButtons": Boolean_comparison_exp,
"headingColor": String_comparison_exp,
"headingWeight": String_comparison_exp,
"hideQuantityEditing": Boolean_comparison_exp,
"id": uuid_comparison_exp,
"isPreview": Boolean_comparison_exp,
"loyaltyGradientEndColor": String_comparison_exp,
"loyaltyGradientStartColor": String_comparison_exp,
"loyaltyIconBgColor": String_comparison_exp,
"loyaltyIconColor": String_comparison_exp,
"neverHideOTUCards": Boolean_comparison_exp,
"noSecondaryButtons": Boolean_comparison_exp,
"primaryColor": String_comparison_exp,
"qaPrimaryAccentColor": String_comparison_exp,
"qaSecondaryAccentColor": String_comparison_exp,
"radioBorderRadius": numeric_comparison_exp,
"showTaxAndDuties": Boolean_comparison_exp,
"siteId": uuid_comparison_exp,
"tagBGColor": String_comparison_exp,
"tagBorderRadius": numeric_comparison_exp,
"tagTextColor": String_comparison_exp,
"textAnchorColor": String_comparison_exp,
"textApplyDiscountCode": String_comparison_exp,
"textCancelNow": String_comparison_exp,
"textColor": String_comparison_exp,
"textEditFrequency": String_comparison_exp,
"textOrderNow": String_comparison_exp,
"textWeight": String_comparison_exp,
"updated_at": timestamptz_comparison_exp
}
Theme2_order_by
Description
Ordering options when selecting data from "Theme2".
Fields
| Input Field | Description |
|---|---|
Site - Site_order_by
|
|
accentColor - order_by
|
|
accentTextColor - order_by
|
|
badgeBGColor - order_by
|
|
badgeTextColor - order_by
|
|
buttonBGColor - order_by
|
|
buttonBorderRadius - order_by
|
|
buttonTextColor - order_by
|
|
cardBorderRadius - order_by
|
|
cardBorderWidth - order_by
|
|
carouselSlideSeconds - order_by
|
|
disableHalfSkip - order_by
|
|
expandAllButtons - order_by
|
|
headingColor - order_by
|
|
headingWeight - order_by
|
|
hideQuantityEditing - order_by
|
|
id - order_by
|
|
isPreview - order_by
|
|
loyaltyGradientEndColor - order_by
|
|
loyaltyGradientStartColor - order_by
|
|
loyaltyIconBgColor - order_by
|
|
loyaltyIconColor - order_by
|
|
neverHideOTUCards - order_by
|
|
noSecondaryButtons - order_by
|
|
primaryColor - order_by
|
|
qaPrimaryAccentColor - order_by
|
|
qaSecondaryAccentColor - order_by
|
|
radioBorderRadius - order_by
|
|
showTaxAndDuties - order_by
|
|
siteId - order_by
|
|
tagBGColor - order_by
|
|
tagBorderRadius - order_by
|
|
tagTextColor - order_by
|
|
textAnchorColor - order_by
|
|
textApplyDiscountCode - order_by
|
|
textCancelNow - order_by
|
|
textColor - order_by
|
|
textEditFrequency - order_by
|
|
textOrderNow - order_by
|
|
textWeight - order_by
|
|
updated_at - order_by
|
Example
{
"Site": Site_order_by,
"accentColor": "asc",
"accentTextColor": "asc",
"badgeBGColor": "asc",
"badgeTextColor": "asc",
"buttonBGColor": "asc",
"buttonBorderRadius": "asc",
"buttonTextColor": "asc",
"cardBorderRadius": "asc",
"cardBorderWidth": "asc",
"carouselSlideSeconds": "asc",
"disableHalfSkip": "asc",
"expandAllButtons": "asc",
"headingColor": "asc",
"headingWeight": "asc",
"hideQuantityEditing": "asc",
"id": "asc",
"isPreview": "asc",
"loyaltyGradientEndColor": "asc",
"loyaltyGradientStartColor": "asc",
"loyaltyIconBgColor": "asc",
"loyaltyIconColor": "asc",
"neverHideOTUCards": "asc",
"noSecondaryButtons": "asc",
"primaryColor": "asc",
"qaPrimaryAccentColor": "asc",
"qaSecondaryAccentColor": "asc",
"radioBorderRadius": "asc",
"showTaxAndDuties": "asc",
"siteId": "asc",
"tagBGColor": "asc",
"tagBorderRadius": "asc",
"tagTextColor": "asc",
"textAnchorColor": "asc",
"textApplyDiscountCode": "asc",
"textCancelNow": "asc",
"textColor": "asc",
"textEditFrequency": "asc",
"textOrderNow": "asc",
"textWeight": "asc",
"updated_at": "asc"
}
TierLevel
Description
Tier configuration that contains the eligibility and rewards
Fields
| Field Name | Description |
|---|---|
ProductVariantsCreditRedemptionConfigs - [ProductVariantsCreditRedemptionConfigs!]!
|
An array relationship |
description - String!
|
|
enabled - Boolean!
|
|
name - String!
|
|
removedAt - timestamptz
|
|
tierGroupId - uuid!
|
Example
{
"ProductVariantsCreditRedemptionConfigs": [
ProductVariantsCreditRedemptionConfigs
],
"description": "abc123",
"enabled": false,
"name": "abc123",
"removedAt": timestamptz,
"tierGroupId": uuid
}
TierLevel_bool_exp
Description
Boolean expression to filter rows from the table "TierLevel". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
ProductVariantsCreditRedemptionConfigs - ProductVariantsCreditRedemptionConfigs_bool_exp
|
|
_and - [TierLevel_bool_exp!]
|
|
_not - TierLevel_bool_exp
|
|
_or - [TierLevel_bool_exp!]
|
|
description - String_comparison_exp
|
|
enabled - Boolean_comparison_exp
|
|
name - String_comparison_exp
|
|
removedAt - timestamptz_comparison_exp
|
|
tierGroupId - uuid_comparison_exp
|
Example
{
"ProductVariantsCreditRedemptionConfigs": ProductVariantsCreditRedemptionConfigs_bool_exp,
"_and": [TierLevel_bool_exp],
"_not": TierLevel_bool_exp,
"_or": [TierLevel_bool_exp],
"description": String_comparison_exp,
"enabled": Boolean_comparison_exp,
"name": String_comparison_exp,
"removedAt": timestamptz_comparison_exp,
"tierGroupId": uuid_comparison_exp
}
timestamp
Example
timestamp
timestamp_comparison_exp
Description
Boolean expression to compare columns of type "timestamp". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_eq - timestamp
|
|
_gt - timestamp
|
|
_gte - timestamp
|
|
_in - [timestamp!]
|
|
_is_null - Boolean
|
|
_lt - timestamp
|
|
_lte - timestamp
|
|
_neq - timestamp
|
|
_nin - [timestamp!]
|
Example
{
"_eq": timestamp,
"_gt": timestamp,
"_gte": timestamp,
"_in": [timestamp],
"_is_null": false,
"_lt": timestamp,
"_lte": timestamp,
"_neq": timestamp,
"_nin": [timestamp]
}
timestamptz
Example
timestamptz
timestamptz_comparison_exp
Description
Boolean expression to compare columns of type "timestamptz". All fields are combined with logical 'AND'.
Fields
| Input Field | Description |
|---|---|
_eq - timestamptz
|
|
_gt - timestamptz
|
|
_gte - timestamptz
|
|
_in - [timestamptz!]
|
|
_is_null - Boolean
|
|
_lt - timestamptz
|
|
_lte - timestamptz
|
|
_neq - timestamptz
|
|
_nin - [timestamptz!]
|
Example
{
"_eq": timestamptz,
"_gt": timestamptz,
"_gte": timestamptz,
"_in": [timestamptz],
"_is_null": false,
"_lt": timestamptz,
"_lte": timestamptz,
"_neq": timestamptz,
"_nin": [timestamptz]
}
unpauseSubscriptionInput
unpauseSubscriptionOutput
UpdateDynamicBoxSubscriptionInput
Fields
| Input Field | Description |
|---|---|
dynamicBox - DynamicBoxConfigInput!
|
|
original - [DynamicBoxContentInput!]
|
|
subscriptionId - uuid!
|
|
updated - [DynamicBoxContentInput!]!
|
Example
{
"dynamicBox": DynamicBoxConfigInput,
"original": [DynamicBoxContentInput],
"subscriptionId": uuid,
"updated": [DynamicBoxContentInput]
}
UpdateDynamicBoxSubscriptionOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
UpdateNextBillingDateInput
UpdateNextBillingDateOutput
UpdateSubscriptionLineBulkInput
Fields
| Input Field | Description |
|---|---|
items - [UpdateSubscriptionLineInput!]!
|
Example
{"items": [UpdateSubscriptionLineInput]}
UpdateSubscriptionLineBulkOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": true}
UpdateSubscriptionLineInput
Fields
| Input Field | Description |
|---|---|
currentPrice - Float
|
|
customAttributes - jsonb
|
An array of {key, value} objects that fully replaces the line's existing custom attributes in both Skio and Shopify. Omit to leave the existing attributes untouched. Cannot be combined with a productVariantId change. |
prepaidSubscriptionLineId - uuid
|
|
productVariantId - uuid
|
|
quantity - Int
|
|
subscriptionLineId - uuid
|
|
titleOverride - String
|
Example
{
"currentPrice": 987.65,
"customAttributes": jsonb,
"prepaidSubscriptionLineId": uuid,
"productVariantId": uuid,
"quantity": 987,
"subscriptionLineId": uuid,
"titleOverride": "abc123"
}
UpdateSubscriptionLineOutput
Fields
| Field Name | Description |
|---|---|
ok - Boolean!
|
Example
{"ok": false}
UpdateSubscriptionNoteInput
UpdateSubscriptionNoteOutput
UpdateSubscriptionShippingAddressInput
Example
{
"address1": "xyz789",
"address2": "abc123",
"city": "abc123",
"company": "abc123",
"country": "xyz789",
"doorCode": "xyz789",
"firstName": "abc123",
"lastName": "abc123",
"phone": "abc123",
"province": "xyz789",
"subscriptionId": "abc123",
"zip": "abc123"
}
UpdateSubscriptionShippingAddressOutput
User
Description
Do not let dashboard users infer storefront <> user <> marketplace links.
Fields
| Field Name | Description |
|---|---|
StorefrontUsers - [StorefrontUser!]!
|
An array relationship |
id - uuid!
|
Example
{
"StorefrontUsers": [StorefrontUser],
"id": uuid
}
User_bool_exp
Description
Boolean expression to filter rows from the table "User". All fields are combined with a logical 'AND'.
Fields
| Input Field | Description |
|---|---|
StorefrontUsers - StorefrontUser_bool_exp
|
|
_and - [User_bool_exp!]
|
|
_not - User_bool_exp
|
|
_or - [User_bool_exp!]
|
|
id - uuid_comparison_exp
|
Example
{
"StorefrontUsers": StorefrontUser_bool_exp,
"_and": [User_bool_exp],
"_not": User_bool_exp,
"_or": [User_bool_exp],
"id": uuid_comparison_exp
}
User_order_by
Description
Ordering options when selecting data from "User".
Fields
| Input Field | Description |
|---|---|
StorefrontUsers_aggregate - StorefrontUser_aggregate_order_by
|
|
id - order_by
|
Example
{
"StorefrontUsers_aggregate": StorefrontUser_aggregate_order_by,
"id": "asc"
}
uuid
Example
uuid
uuid_comparison_exp
Description
Boolean expression to compare columns of type "uuid". All fields are combined with logical 'AND'.
Example
{
"_eq": uuid,
"_gt": uuid,
"_gte": uuid,
"_in": [uuid],
"_is_null": true,
"_lt": uuid,
"_lte": uuid,
"_neq": uuid,
"_nin": [uuid]
}