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.

Endpoint
POST https://graphql.skio.com/v1/graphql
Required headers
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>.

  1. In the Skio dashboard, click API in the left navigation.
  2. Name the token and click Generate. Copy it right away: Skio shows the token only once.
  3. 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.

Authenticated request
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 } }"}'
Invalid token
{
  "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 input argument and return ok plus a few fields. To read the updated record, query it afterwards.

IDs

  • id is Skio's ID, a UUID. All mutations take Skio IDs.
  • platformId is 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.

Request body
{
  "query": "query GetSubscription($id: uuid!) { SubscriptionByPk(id: $id) { id status nextBillingDate } }",
  "variables": { "id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45" }
}
Response
{
  "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.

Page through recently updated subscriptions
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
  }
}
Variables
{ "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.

Query depth exceeded
{
  "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.

Mutation error
{
  "errors": [
    {
      "message": "Invalid input",
      "extensions": {
        "code": "Invalid input",
        "detail": "Unable to change billing date on cancelled subscription"
      }
    }
  ]
}
ok false response
{
  "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.

  • billingPolicyId uuid

    The billing Policy: how often the customer is charged.

  • cancelledAt timestamptz nullable

    When the subscription was cancelled.

  • churnPredictedAt timestamptz nullable

    When churnScore was last calculated.

  • churnRiskReasons [String!] nullable

    Reasons behind churnScore.

  • churnScore numeric nullable

    Skio's predicted churn risk.

  • createdAt timestamptz

    When the subscription was created.

  • currencyCode String

    ISO 4217 currency code for prices on this subscription.

  • customAttributes jsonb nullable

    Custom attributes on the contract, as {key, value} pairs.

  • cyclesCompleted Int nullable

    Number of successful billings, including the original checkout order.

  • deliveryPolicyId uuid

    The delivery Policy: how often orders ship.

  • deliveryPrice numeric

    Shipping price per order, in currencyCode.

  • deliveryPriceOverride Int nullable

    1 if the shipping price was pinned with Override the shipping price.

  • id uuid

    Skio ID. Use this for every subscription mutation.

  • isPickup Boolean nullable

    Whether orders are picked up rather than shipped.

  • lastBillingAttemptAt timestamptz nullable

    When billing was last attempted.

  • maxStreakCount Int

    Longest loyalty streak.

  • metadata jsonb nullable

    Internal metadata.

  • migrationIndex Int nullable

    Internal migration bookkeeping.

  • nextBillingDate timestamptz nullable

    When the subscription next bills. null if no charge is scheduled, e.g. when cancelled.

  • nextRenewalDate timestamptz nullable

    For prepaid, estimated date when the prepaid subscription will bill for the next period

  • note String nullable

    Note on the subscription, synced with Shopify.

  • originOrderId uuid nullable

    The order that created the subscription.

  • platformId String

    Shopify SubscriptionContract GID, e.g. gid://shopify/SubscriptionContract/123.

  • prepaidDeliveryPolicyId uuid nullable

    Delivery policy for prepaid subscriptions. null otherwise.

  • prepaidProductPricesPerDelivery jsonb nullable

    Prepaid only: price per delivery for each product.

  • remainingCyclesUntilRenewal Int nullable

    For prepaid, orders remaining before the subscription bills again

  • shippingAddressId uuid nullable

    The shipping Address.

  • siteId uuid

    Your store.

  • status String

    One of ACTIVE, PAUSED, CANCELLED, FAILED (billing failed, in dunning) or UNDER_REVIEW (held for Shopify fraud review).

  • statusContext String nullable

    More detail about status. One of DUNNING, UNDER_FRAUD_REVIEW, CHURNED (cancelled automatically after failed payment retries), PERMANENTLY_CANCELLED (cannot be reactivated), TEMPORARILY_PAUSED (status stays ACTIVE) or 3DS_PENDING.

  • storefrontUserId uuid

    The customer who owns the subscription.

  • streakCount Int nullable

    Current loyalty streak, counted in consecutive orders.

  • streakExpiresAt timestamptz nullable

    When the current streak expires.

  • updatedAt timestamptz

    When the subscription was last updated.

Relationships (20)
  • AuditLogs [AuditLog!]

    List of related AuditLog records.

  • BillingPolicy Policy

    The related Policy record.

  • CancelFlowSessions [CancelFlowSession!]

    List of related CancelFlowSession records.

  • CancelFlowV2Sessions [CancelFlowV2Session!]

    List of related CancelFlowV2Session records.

  • CancelFlowV3Sessions [CancelFlowV3Session!]

    List of related CancelFlowV3Session records.

  • DeliveryPolicy Policy

    The 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.

  • PaymentMethod PaymentMethod

    The related PaymentMethod record.

  • PrepaidDeliveryPolicy Policy

    The related Policy record.

  • PrepaidGiftRecipient StorefrontUser

    The related StorefrontUser record.

  • PrepaidSubscriptionLines [SubscriptionLine!]

    List of related SubscriptionLine records.

  • ShippingAddress Address

    The related Address record.

  • Site Site

    The related Site record.

  • StorefrontUser StorefrontUser

    The related StorefrontUser record.

  • SubscriptionLines [SubscriptionLine!]

    List of related SubscriptionLine records.

  • SurpriseDelightSessions [SurpriseDelightSessions!]

    List of related SurpriseDelightSessions records.

  • originOrder Order

    The related Order record.

The Subscription object
{
  "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"
}
Subscriptions / Read

List subscriptions

Query Subscriptions

Returns subscriptions in your store. Use where to filter, order_by to sort and limit/offset to paginate.

  • distinct_on [Subscription_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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
      }
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
            }
          }
        ]
      }
    ]
  }
}
Subscriptions / Read

Retrieve a subscription

Query SubscriptionByPk

Returns one subscription by its Skio ID, or null if it does not exist or belongs to another store.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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
      }
    }
  }
}
Subscriptions / Lifecycle

Create a subscription

Mutation 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).

  • addressId uuid Required

    Skio ID of one of the customer's addresses.

  • billingPolicyInfo CreateSubscriptionPolicyInfo Required

    How often the customer is charged.

  • billingPolicyInfo.interval SellingPlanIntervalEnum Required

    One of: DAY, MONTH, WEEK, YEAR.

  • billingPolicyInfo.intervalCount Int Required

    Number of intervals, e.g. 1 with MONTH means monthly.

  • storefrontUserId uuid Required

    Skio ID of the customer.

  • subscriptionLines [CreateSubscriptionLine!] Required

    Products on the subscription.

  • subscriptionLines[].quantity Int Required
  • subscriptionLines[].variantId uuid Required

    Skio ProductVariant ID.

  • subscriptionLines[].price Float

    Price per unit. Defaults to the variant price with the selling plan's discount.

  • subscriptionType CreateSubscriptionType Required

    Standard recurring subscription or prepaid. One of: PREPAID, SUBSCRIBE_AND_SAVE.

  • customAttributes [CreateSubscriptionCustomAttribute!]

    Custom attributes on the subscription contract.

  • customAttributes[].key String Required
  • customAttributes[].value String
  • discountCode String

    Discount code applied after creation.

  • nextBillingDate String

    ISO 8601 date of the first charge, at most 5 years ahead. Defaults to one billing interval from now.

  • paymentMethodId uuid

    Skio ID of one of the customer's payment methods. Without one, the subscription cannot bill.

  • prepaidPolicyInfo CreateSubscriptionPolicyInfo

    Prepaid only (required for PREPAID): how often orders ship within a billing period.

  • prepaidPolicyInfo.interval SellingPlanIntervalEnum Required

    One of: DAY, MONTH, WEEK, YEAR.

  • prepaidPolicyInfo.intervalCount Int Required

    Number of intervals, e.g. 1 with MONTH means monthly.

  • id uuid

    Skio ID of the new subscription.

  • platformId String

    Shopify SubscriptionContract GID.

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"
  }
}
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()
                      
Response 200
{
  "data": {
    "createSubscription": {
      "id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
      "platformId": "gid://shopify/SubscriptionContract/12346616394"
    }
  }
}
Subscriptions / Lifecycle

Cancel a subscription

Mutation 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.

  • subscriptionId uuid Required

    Skio subscription ID.

  • invokeSubscriptionCancelJourneys Boolean

    Also run your "after cancel" journeys. Ignored for prepaid subscriptions.

  • permanentlyCancel Boolean

    Mark the subscription PERMANENTLY_CANCELLED so it can never be reactivated. Defaults to false.

  • shouldSendNotif Boolean

    Send the customer cancellation notification and integration events. Defaults to true.

  • ok Boolean
mutation cancelSubscription($input: CancelSubscriptionInput!) {
  cancelSubscription(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "cancelSubscription": {
      "ok": true
    }
  }
}
Subscriptions / Lifecycle

Reactivate a subscription

Mutation 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.

  • newBillingDate String Required

    ISO 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.

  • subscriptionId uuid Required
  • ok Boolean
mutation reactivateSubscription($input: ReactivateSubscriptionInput!) {
  reactivateSubscription(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "reactivateSubscription": {
      "ok": true
    }
  }
}
Subscriptions / Lifecycle

Pause a subscription

Mutation 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.

  • subscriptionId String Required

    Skio subscription ID.

  • skipOption SkipOption

    Pause temporarily for this duration instead of indefinitely.

  • skipOption.unit String Required

    One of DAY, WEEK, MONTH, YEAR or RELATIVE. RELATIVE means value billing intervals.

  • skipOption.value Float Required

    Number of units. Fractions are allowed with RELATIVE.

  • message String

    Result or failure reason.

  • ok Boolean

    Whether the subscription was paused.

mutation pauseSubscription($input: pauseSubscriptionInput!) {
  pauseSubscription(input: $input) {
    message
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "pauseSubscription": {
      "message": "Success",
      "ok": true
    }
  }
}
Subscriptions / Lifecycle

Resume a subscription

Mutation 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.

  • subscriptionId String Required

    Skio subscription ID.

  • isTemporaryPause Boolean

    End a temporary pause (TEMPORARILY_PAUSED) instead of resuming a PAUSED subscription.

  • message String

    Result or failure reason. On success, includes the new next billing date.

  • ok Boolean
mutation unpauseSubscription($input: unpauseSubscriptionInput!) {
  unpauseSubscription(input: $input) {
    message
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "unpauseSubscription": {
      "message": "Success",
      "ok": true
    }
  }
}
Subscriptions / Order schedule

Skip the next order

Mutation 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.

  • subscriptionId uuid Required
  • skipOption SkipOption

    How far to move the date. Defaults to one billing interval.

  • skipOption.unit String Required

    One of DAY, WEEK, MONTH, YEAR or RELATIVE. RELATIVE means value billing intervals.

  • skipOption.value Float Required

    Number of units. Fractions are allowed with RELATIVE.

  • message String

    Failure reason when ok is false.

  • nextBillingDate String

    The new next billing date (ISO 8601).

  • ok Boolean
mutation skipSubscription($input: SkipSubscriptionInput!) {
  skipSubscription(input: $input) {
    message
    nextBillingDate
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "skipSubscription": {
      "message": null,
      "nextBillingDate": "2025-04-01",
      "ok": true
    }
  }
}
Subscriptions / Order schedule

Ship now

Mutation 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.

  • subscriptionId String Required

    Skio subscription ID.

  • message String

    Result or failure reason, e.g. out of stock.

  • ok Boolean
mutation shipNow($input: ShipNowInput!) {
  shipNow(input: $input) {
    message
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "shipNow": {
      "message": "Successfully placed order",
      "ok": true
    }
  }
}
Subscriptions / Order schedule

Update the next billing date

Mutation 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.

  • date String Required

    ISO 8601 date or datetime, e.g. 2025-04-01 or 2025-04-01T17:00:00Z.

  • subscriptionId uuid Required
  • message String

    Result message.

  • ok Boolean
mutation updateNextBillingDate($input: UpdateNextBillingDateInput!) {
  updateNextBillingDate(input: $input) {
    message
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "updateNextBillingDate": {
      "message": "Successfully changed next billing date",
      "ok": true
    }
  }
}
Subscriptions / Order schedule

Change billing frequency

Mutation 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.

  • subscriptionId uuid Required
  • billingInterval String

    Required. One of DAY, WEEK, MONTH or YEAR.

  • billingIntervalCount Int

    Required. Number of intervals between orders, e.g. 4 with WEEK.

  • nextBillingDate String

    Required. ISO 8601 date for the next order.

  • subscriptionId uuid
mutation subscriptionEditInterval($input: SubscriptionEditIntervalInput!) {
  subscriptionEditInterval(input: $input) {
    subscriptionId
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "subscriptionEditInterval": {
      "subscriptionId": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13"
    }
  }
}
Subscriptions / Shipping & payment

Update the shipping address

Mutation 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.

  • subscriptionId String Required

    Skio subscription ID.

  • address1 String
  • address2 String
  • city String
  • company String
  • country String

    Country name or ISO code.

  • firstName String
  • lastName String
  • phone String

    Phone number. Invalid numbers are saved as null.

  • province String

    State or province name or code.

  • zip String
  • message String

    Failure reason when ok is false.

  • ok Boolean
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"
  }
}
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()
                      
Response 200
{
  "data": {
    "updateSubscriptionShippingAddress": {
      "message": "Success",
      "ok": true
    }
  }
}
Subscriptions / Shipping & payment

Override the shipping price

Mutation 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.

  • subscriptionId uuid Required
  • deliveryPrice Float

    Shipping price per order in the subscription's currency, e.g. 4.99. Omit it or send null to remove the override.

  • subscriptionId uuid
mutation setDeliveryPriceOverride($input: SetDeliveryPriceOverrideInput!) {
  setDeliveryPriceOverride(input: $input) {
    subscriptionId
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "setDeliveryPriceOverride": {
      "subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
    }
  }
}
Subscriptions / Shipping & payment

Update the payment method

Mutation 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.

  • subscriptionId uuid Required
  • paymentMethodPlatformId String

    Shopify CustomerPaymentMethod GID, e.g. gid://shopify/CustomerPaymentMethod/abc123. Omit it to email the customer an update link instead.

  • subscriptionId uuid
mutation subscriptionUpdatePaymentMethod($input: SubscriptionUpdatePaymentMethodInput!) {
  subscriptionUpdatePaymentMethod(input: $input) {
    subscriptionId
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "subscriptionUpdatePaymentMethod": {
      "subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
    }
  }
}
Subscriptions / Discounts & retention

Apply a discount code

Mutation 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.

  • code String Required

    A Shopify discount code.

  • subscriptionId uuid Required
  • message String

    Result or failure reason.

  • ok Boolean

    Whether the code was applied.

mutation applyDiscountCode($input: ApplyDiscountCodeInput!) {
  applyDiscountCode(input: $input) {
    message
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "applyDiscountCode": {
      "message": "Successfully applied discount code WELCOME10 to subscription 8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
      "ok": true
    }
  }
}
Subscriptions / Discounts & retention

Apply a commitment offer

Mutation 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.

  • additionalCycles Int Required

    Number of upcoming orders the customer must stay for. Minimum 1.

  • subscriptionId uuid Required
  • commitmentLength Int

    Number of orders in the commitment.

  • commitmentStartCycle Int

    cyclesCompleted when the commitment started.

  • minimumCancelCycle Int

    The cyclesCompleted value at which the customer can cancel again.

  • subscriptionId String
mutation setCommitmentOffer($input: SetCommitmentOfferInput!) {
  setCommitmentOffer(input: $input) {
    commitmentLength
    commitmentStartCycle
    minimumCancelCycle
    subscriptionId
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "setCommitmentOffer": {
      "commitmentLength": 3,
      "commitmentStartCycle": 3,
      "minimumCancelCycle": 6,
      "subscriptionId": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
    }
  }
}
Subscriptions / Other

Update the note

Mutation 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.

  • subscriptionId String Required

    Skio subscription ID.

  • note String

    New note. Replaces the existing note.

  • note String

    The note that was saved.

  • ok Boolean
mutation updateSubscriptionNote($input: UpdateSubscriptionNoteInput!) {
  updateSubscriptionNote(input: $input) {
    note
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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.

  • createdAt timestamptz
  • customAttributes jsonb nullable

    Line attributes as {key, value} pairs. Keys starting with _ are set by Skio.

  • groupId uuid nullable

    Selling plan group of the line.

  • id uuid

    Skio ID. Use it as subscriptionLineId in line mutations.

  • isPrepaid Boolean

    Whether this is a prepaid line.

  • ordersRemaining Int nullable

    For prepaid lines, deliveries left in the current prepaid period.

  • platformId String nullable

    Shopify SubscriptionLine GID.

  • prepaidSubscriptionId uuid nullable

    For prepaid lines, the prepaid subscription.

  • priceWithoutDiscount numeric

    Price per unit before discounts, in the subscription's currency.

  • productVariantId uuid

    The ProductVariant on this line.

  • quantity Int

    Units per order.

  • reChargeId String nullable

    Original ID if the subscription was migrated from Recharge.

  • removedAt timestamptz nullable

    When the line was removed. Removed lines are no longer billed.

  • sellingPlanId uuid nullable

    The selling plan applied to this line.

  • subscriptionId uuid nullable

    The subscription this line belongs to. Prepaid lines use prepaidSubscriptionId instead.

  • taxable Boolean

    Whether the line is taxable.

  • titleOverride String nullable

    Custom title shown instead of the product title.

  • updatedAt timestamptz
Relationships (6)
  • Discounts [Discount!]

    List of related Discount records.

  • OrderLineItems [OrderLineItem!]

    List of related OrderLineItem records.

  • OriginalSellingPlan SellingPlan

    The related SellingPlan record.

  • PrepaidSubscription Subscription

    The related Subscription record.

  • ProductVariant ProductVariant

    The related ProductVariant record.

  • Subscription Subscription

    The related Subscription record.

The SubscriptionLine object
{
  "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"
}
Subscription lines / Read

List subscription lines

Query SubscriptionLines

Returns subscription lines in your store. Removed lines are included unless you filter on removedAt.

  • distinct_on [SubscriptionLine_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
        }
      }
    ]
  }
}
Subscription lines / Add products

Add a product

Mutation 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.

  • subscriptionId uuid Required
  • variantId uuid Required

    Skio ProductVariant ID (not the Shopify GID).

  • customAttributes jsonb

    Line attributes, as an array of {key, value} objects.

  • price Float

    Price per unit. Defaults to the variant's subscription price.

  • quantity Int

    Defaults to 1.

  • upsell Boolean

    Add as a one-time item that ships with the next order only.

  • ok Boolean
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"
  }
}
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()
                      
Response 200
{
  "data": {
    "addSubscriptionLine": {
      "ok": true
    }
  }
}
Subscription lines / Add products

Add multiple products

Mutation 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.

  • items [AddSubscriptionLineInput!] Required

    Products to add. Every item must have the same subscriptionId.

  • items[].subscriptionId uuid Required
  • items[].variantId uuid Required

    Skio ProductVariant ID (not the Shopify GID).

  • items[].customAttributes jsonb

    Line attributes, as an array of {key, value} objects.

  • items[].price Float

    Price per unit. Defaults to the variant's subscription price.

  • items[].quantity Int

    Defaults to 1.

  • items[].upsell Boolean

    Add as a one-time item that ships with the next order only.

  • ok Boolean
mutation addSubscriptionLineBulk($input: AddSubscriptionLineBulkInput!) {
  addSubscriptionLineBulk(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "addSubscriptionLineBulk": {
      "ok": true
    }
  }
}
Subscription lines / Edit products

Update a line

Mutation updateSubscriptionLine

Changes a line's quantity, price, variant, title or custom attributes. Send only the fields you want to change.

  • quantity: 0 removes the line. A subscription's last line cannot be removed.
  • A different productVariantId swaps the product, and the price is recalculated unless you also send currentPrice.

The updated line is not returned. Query List subscription lines afterwards to read it.

  • currentPrice Float

    New price per unit before discounts, in the subscription's currency.

  • customAttributes jsonb

    Array of {key, value} objects. Replaces all existing attributes. Cannot be combined with a variant swap.

  • prepaidSubscriptionLineId uuid

    Prepaid line to update. Send this or subscriptionLineId, not both.

  • productVariantId uuid

    Skio ProductVariant ID to swap to.

  • quantity Int

    New quantity. 0 removes the line.

  • subscriptionLineId uuid

    Line to update. Send this or prepaidSubscriptionLineId, not both.

  • titleOverride String

    Custom title for the line.

  • ok Boolean
mutation updateSubscriptionLine($input: UpdateSubscriptionLineInput!) {
  updateSubscriptionLine(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "updateSubscriptionLine": {
      "ok": true
    }
  }
}
Subscription lines / Edit products

Update multiple lines

Mutation 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.

  • items [UpdateSubscriptionLineInput!] Required

    Line updates. Every line must belong to the same subscription.

  • items[].currentPrice Float

    New price per unit before discounts, in the subscription's currency.

  • items[].customAttributes jsonb

    Array of {key, value} objects. Replaces all existing attributes. Cannot be combined with a variant swap.

  • items[].prepaidSubscriptionLineId uuid

    Prepaid line to update. Send this or subscriptionLineId, not both.

  • items[].productVariantId uuid

    Skio ProductVariant ID to swap to.

  • items[].quantity Int

    New quantity. 0 removes the line.

  • items[].subscriptionLineId uuid

    Line to update. Send this or prepaidSubscriptionLineId, not both.

  • items[].titleOverride String

    Custom title for the line.

  • ok Boolean
mutation updateSubscriptionLineBulk($input: UpdateSubscriptionLineBulkInput!) {
  updateSubscriptionLineBulk(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "updateSubscriptionLineBulk": {
      "ok": true
    }
  }
}
Subscription lines / Edit products

Swap a product

Mutation 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.

  • newProductVariantId String Required

    Skio ProductVariant ID to swap in.

  • oldProductVariantId String Required

    Skio ProductVariant ID currently on the subscription.

  • subscriptionId String Required

    Skio subscription ID.

  • isGiftSwap Boolean

    Swap a Surprise & Delight gift line. Requires exactly one ID in subscriptionLinesToSwapFrom.

  • newCustomPrice String

    Required with CUSTOM. Decimal string, e.g. "19.99", before the selling plan discount.

  • pricingOption SwapPricingOptionType

    SAME keeps the current price (default), NEW_VARIANT_PRICE uses the new variant's subscription price, CUSTOM uses newCustomPrice. One of: CUSTOM, NEW_VARIANT_PRICE, SAME.

  • subscriptionLinesToSwapFrom [String!]

    Only swap these subscription line IDs.

  • ok Boolean
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"
  }
}
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()
                      
Response 200
{
  "data": {
    "swapSubscriptionProductVariants": {
      "ok": true
    }
  }
}
Subscription lines / Edit products

Update build-a-box contents

Mutation 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.

  • dynamicBox DynamicBoxConfigInput Required

    Which box on the subscription to update.

  • dynamicBox.boxId String Required

    Skio DynamicBox ID.

  • dynamicBox.boxIndex String Required

    Which instance of the box, matching the _dynamicBoxIndex line attribute.

  • dynamicBox.boxSectionId String
  • subscriptionId uuid Required
  • updated [DynamicBoxContentInput!] Required

    The complete new contents of the box.

  • updated[].quantity Int Required
  • updated[].variantId String Required

    Skio ProductVariant ID. Must be one of the box's selectable variants.

  • ok Boolean
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"
      }
    ]
  }
}
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()
                      
Response 200
{
  "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.

  • createdAt timestamptz
  • email String nullable

    Email address.

  • emailLower String nullable

    Lowercased email. Use it for case-insensitive lookups.

  • firstName String nullable
  • id uuid

    Skio ID.

  • lastName String nullable
  • phoneNumber String nullable
  • platformId String nullable

    Shopify Customer GID, e.g. gid://shopify/Customer/123.

  • qaToken uuid nullable

    Current Quick Actions token. See Generate a Quick Actions token.

  • redactedAt timestamptz nullable

    When the customer's data was redacted after a GDPR request.

  • removedAt timestamptz nullable

    When the customer was removed.

  • shopifyTags jsonb nullable

    Tags on the Shopify customer.

  • siteId uuid
  • smsTransactionalOptIn Boolean nullable

    Whether the customer agreed to transactional SMS.

  • tempSmsTransactionalOptIn Boolean nullable
  • updatedAt timestamptz
Relationships (12)
The StorefrontUser object
{
  "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.

  • address1 String nullable
  • address2 String nullable
  • city String nullable
  • company String nullable
  • country String nullable
  • createdAt timestamptz
  • doorCode String nullable

    Door or gate code for delivery.

  • firstName String nullable
  • id uuid

    Skio ID.

  • lastName String nullable
  • phoneNumber String nullable
  • platformId String nullable
  • province String nullable
  • storefrontUserId uuid
  • updatedAt timestamptz
  • zip String nullable
Relationships (3)
The Address object
{
  "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"
}
Customers / Read

List customers

Query StorefrontUsers

Returns customers in your store. Look up a customer by email, or by Shopify customer ID with platformId.

  • distinct_on [StorefrontUser_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

A list of StorefrontUser objects.

query FindCustomer($email: String!) {
  StorefrontUsers(where: {email: {_eq: $email}}) {
    id
    platformId
    email
    firstName
    lastName
    Subscriptions {
      id
      status
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
          }
        ]
      }
    ]
  }
}
Customers / Read

List addresses

Query Addresses

Returns customer addresses in your store. Each request returns at most 1,000 addresses.

  • distinct_on [Address_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

A list of Address objects.

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"
}
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()
                      
Response 200
{
  "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"
      }
    ]
  }
}
Customers / Read

Retrieve an address

Query AddressByPk

Returns one address by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Customers / Loyalty

Get loyalty credit balance

Query 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.

  • email String

    Customer email.

  • platformId String

    Shopify Customer GID.

  • storefrontUserId String

    Skio customer ID.

  • credits Float

    Credit balance, in your store's credit units.

  • currencyCode String
  • currencyStringValue String

    Formatted customer-currency value.

  • currencyValue Float

    Balance as money in the customer's currency.

  • siteCurrencyCode String
  • siteCurrencyStringValue String

    Formatted store-currency value, e.g. $12.50.

  • siteCurrencyValue Float

    Balance as money in the store currency.

  • storefrontUserId String
query getCustomerCreditBalance($input: GetCustomerCreditBalanceInput!) {
  getCustomerCreditBalance(input: $input) {
    credits
    currencyCode
    currencyStringValue
    currencyValue
    siteCurrencyCode
    siteCurrencyStringValue
    siteCurrencyValue
    storefrontUserId
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Customers / Customer portal access

Generate a Quick Actions token

Mutation 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.

  • storefrontUserId uuid Required

    Skio customer ID.

  • qaToken String

    The new Quick Actions token.

mutation generateQuickActionToken($storefrontUserId: uuid!) {
  generateQuickActionToken(storefrontUserId: $storefrontUserId) {
    qaToken
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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.

  • appId String nullable
  • cancelledAt timestamptz nullable
  • clientIp String nullable
  • createdAt timestamptz
  • currencyCode String nullable

    Set to customer currency code (same currency as presentmentAmount)

  • deletedAt timestamptz nullable
  • deliveredAt timestamptz nullable
  • firstOrderInPrepaidSequence Boolean nullable
  • fulfillAt timestamptz nullable

    For scheduled fulfillment orders, when the order is released for fulfillment.

  • fulfillmentOrderCredit Float nullable
  • id uuid

    Skio ID.

  • name String nullable

    Order name shown to the customer, e.g. #1001.

  • note String nullable
  • platformId String nullable

    Shopify Order GID.

  • platformNumber String
  • prepaidSubscriptionId uuid nullable

    For prepaid fulfillment orders, the prepaid subscription.

  • processedAt timestamptz nullable

    When Shopify processed the order.

  • shippingAddressId uuid nullable
  • siteId uuid
  • storefrontUserId uuid
  • subscriptionId uuid nullable

    Not populated; always null. To find a subscription's orders, filter on OrderLineItems.SubscriptionLine.subscriptionId.

  • taxExempt Boolean
  • taxesIncluded Boolean
  • totalPrice Float nullable

    Order total in the store currency.

  • totalPricePresentmentAmount Float nullable

    Order total in the customer's currency.

  • updatedAt timestamp
Relationships (10)
The Order object
{
  "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.

  • attributionGroupId uuid nullable
  • createdAt timestamptz
  • currencyCode String nullable
  • customAttributes jsonb nullable
  • groupId uuid nullable
  • id uuid
  • orderId uuid
  • platformId String nullable
  • pricePresentmentAmount numeric nullable

    Price in the customer's currency.

  • pricePresentmentCurrencyCode String nullable
  • priceWithoutDiscount numeric

    Price per unit before discounts.

  • productVariantId uuid
  • quantity Int
  • subscriptionLineId uuid nullable

    The subscription line that produced this item.

  • updatedAt timestamptz
Relationships (5)
  • Discounts [Discount!]

    List of related Discount records.

  • Order Order

    The related Order record.

  • ProductVariant ProductVariant

    The related ProductVariant record.

  • SubscriptionLine SubscriptionLine

    The related SubscriptionLine record.

  • TaxLines [TaxLine!]

    List of related TaxLine records.

The OrderLineItem object
{
  "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"
}
Orders

List orders

Query Orders

Returns orders in your store, including checkout orders, recurring orders and prepaid fulfillment orders.

  • distinct_on [Order_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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
          }
        ]
      }
    ]
  }
}
Orders

Retrieve an order

Query OrderByPk

Returns one order by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Orders

List order line items

Query OrderLineItems

Returns order line items in your store. subscriptionLineId links an item to the subscription line that produced it.

  • distinct_on [OrderLineItem_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

A list of OrderLineItem objects.

query ListOrderLineItems($orderId: uuid!) {
  OrderLineItems(where: {orderId: {_eq: $orderId}}) {
    id
    quantity
    priceWithoutDiscount
    subscriptionLineId
    ProductVariant {
      title
      sku
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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.

  • canUpsell Boolean nullable
  • createdAt timestamptz
  • deletedAt timestamptz nullable

    When the product was deleted in Shopify.

  • description String nullable
  • hideOn1TimeUpsells Boolean nullable
  • id uuid
  • imageSrc String nullable
  • images jsonb nullable
  • isDigitalOverride Boolean nullable
  • limitOneTimeUpsellQuantity Boolean nullable
  • metafields jsonb nullable
  • oneTimeUpsellPercentageOff numeric nullable
  • platformId String

    Shopify Product GID.

  • shopifyTags jsonb nullable
  • siteId uuid
  • slug String
  • smsOrder Int nullable
  • status String nullable
  • title String
  • updatedAt timestamptz
Relationships (4)
The Product object
{
  "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.

  • compareAtPrice numeric nullable
  • createdAt timestamptz
  • deletedAt timestamptz nullable

    When the variant was deleted in Shopify.

  • id uuid

    Skio ID. Use this in subscription line mutations.

  • image String nullable
  • marketPrices jsonb nullable

    Prices for each Shopify Market.

  • outOfStockAt timestamptz nullable

    When the variant went out of stock. null means it is in stock.

  • platformId String

    Shopify ProductVariant GID.

  • position Int nullable
  • price numeric

    Price in the store currency.

  • productId uuid
  • requiresShipping Boolean nullable
  • sku String nullable
  • title String
  • updatedAt timestamptz
Relationships (6)
The ProductVariant object
{
  "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"
}
Products & selling plans / Read

List products

Query Products

Returns products in your store. Deleted products have deletedAt set.

  • distinct_on [Product_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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()
                      
Response 200
{
  "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
          }
        ]
      }
    ]
  }
}
Products & selling plans / Read

Retrieve a product

Query ProductByPk

Returns one product by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Products & selling plans / Read

List product variants

Query 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.

  • distinct_on [ProductVariant_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

A list of ProductVariant objects.

query FindVariant($sku: String!) {
  ProductVariants(where: {sku: {_eq: $sku}}) {
    id
    platformId
    title
    sku
    price
    outOfStockAt
    Product {
      title
    }
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
        }
      }
    ]
  }
}
Products & selling plans / Read

Retrieve a product variant

Query ProductVariantByPk

Returns one product variant by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Products & selling plans / Selling plans

Add a variant to a selling plan group

Mutation 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.

  • productVariantId uuid Required

    Skio ProductVariant ID.

  • sellingPlanGroupId uuid Required

    Skio SellingPlanGroup ID.

  • ok Boolean
mutation addProductVariantToSellingPlanGroup($input: addProductVariantToSellingPlanGroupInput!) {
  addProductVariantToSellingPlanGroup(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "addProductVariantToSellingPlanGroup": {
      "ok": true
    }
  }
}
Products & selling plans / Selling plans

Remove a variant from a selling plan group

Mutation 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.

  • productVariantId uuid Required

    Skio ProductVariant ID.

  • sellingPlanGroupId uuid Required

    Skio SellingPlanGroup ID.

  • ok Boolean
mutation removeProductVariantFromSellingPlanGroup($input: removeProductVariantFromSellingPlanGroupInput!) {
  removeProductVariantFromSellingPlanGroup(input: $input) {
    ok
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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.

  • allocationPresentmentAmount numeric nullable
  • allocationPresentmentCurrencyCode String nullable
  • appliesOnEachItem Boolean nullable

    If 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.

  • cancelFlowSessionId uuid nullable
  • createdAt timestamptz
  • fixedValue numeric nullable

    Amount off, if this is a fixed discount.

  • id uuid
  • maxTimesUsed Int nullable

    How many orders the discount applies to. null means unlimited.

  • orderLineItemId uuid nullable
  • percentage numeric nullable

    Percentage off, if this is a percentage discount.

  • platformId String nullable
  • redeemCode String nullable

    The discount code.

  • shippingLineId uuid nullable
  • subscriptionId uuid nullable
  • subscriptionLineId uuid nullable
  • timesUsed Int nullable

    How many orders it has applied to so far.

  • title String nullable
  • type String nullable
  • updatedAt timestamptz
Relationships (5)
The Discount object
{
  "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.

  • createdAt timestamptz
  • id uuid
  • interval String

    One of DAY, WEEK, MONTH or YEAR.

  • intervalCount Int

    Number of intervals between orders. 2 with WEEK means every 2 weeks.

  • isMaxCycleV2 Boolean nullable
  • maxCycles Int nullable

    Number of orders after which the subscription ends.

  • minCycles Int nullable

    Minimum number of orders before the customer can cancel.

  • updatedAt timestamptz
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.

The Policy object
{
  "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.

  • afterCycle Int nullable

    The adjustment applies starting after this many cycles. Use this for tiered pricing.

  • createdAt timestamptz
  • fixedPrice numeric nullable
  • id uuid
  • percentageOff numeric nullable
  • sellingPlanId uuid
  • sellingPlanPricingPolicyAdjustmentType String nullable

    How the price is adjusted: percentage off, fixed amount off, or a fixed price.

  • updatedAt timestamptz
Relationships (1)
  • SellingPlan SellingPlan

    The related SellingPlan record.

The PricingPolicy object
{
  "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"
}
Discounts & policies / Discounts

Retrieve a discount

Query DiscountByPk

Returns one discount by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Discounts & policies / Policies

List policies

Query Policies

Returns billing and delivery policies. A policy sets a cadence, such as every 2 weeks.

  • distinct_on [Policy_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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()
                      
Response 200
{
  "data": {
    "Policies": [
      {
        "id": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
        "interval": "MONTH",
        "intervalCount": 1,
        "minCycles": 1,
        "maxCycles": 1
      }
    ]
  }
}
Discounts & policies / Policies

Retrieve a policy

Query PolicyByPk

Returns one billing or delivery policy by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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"
    }
  }
}
Discounts & policies / Policies

List pricing policies

Query PricingPolicies

Returns selling plan pricing policies, the discount a selling plan applies (optionally only after a number of cycles).

  • distinct_on [PricingPolicy_select_column!]

    Return only rows with distinct values for the given fields.

  • limit Int

    Maximum number of records to return.

  • offset Int

    Number of records to skip. Use together with order_by to paginate.

  • Sort the results by one or more fields, e.g. {createdAt: desc}.

  • Filter the results. See Filtering & pagination.

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()
                      
Response 200
{
  "data": {
    "PricingPolicies": [
      {
        "id": "c7e9a0d2-1b3c-4f5e-8a6b-2d4c6e8f0a13",
        "sellingPlanId": "2e6d8f0a-3c5b-4a7d-9e1f-6b8c0d2e4f71",
        "sellingPlanPricingPolicyAdjustmentType": "example",
        "percentageOff": 1,
        "fixedPrice": 29.99,
        "afterCycle": 1
      }
    ]
  }
}
Discounts & policies / Policies

Retrieve a pricing policy

Query PricingPolicyByPk

Returns one pricing policy by its Skio ID.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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.

  • appProxyPathPrefix String nullable

    Shopify app proxy path for the customer portal.

  • currencyCode String
  • ianaTimezone String nullable

    Store time zone, e.g. America/New_York.

  • id uuid
  • qaAuthSettings jsonb nullable
Relationships (10)
The Site object
{
  "appProxyPathPrefix": "example",
  "currencyCode": "USD",
  "ianaTimezone": "America/Chicago",
  "id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45",
  "qaAuthSettings": {}
}
Store

Retrieve your store

Query SiteByPk

Returns the store that owns your API token. Pass your own store's Skio ID; other stores return null.

  • id uuid Required

    The Skio ID (UUID) of the record.

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
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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": {}
    }
  }
}
Store

Update store settings

Mutation 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.

  • _set Site_set_input

    sets the columns of the filtered rows to the given values

  • _set.useFlycodeDunning Boolean

    Skip Skio failed-payment retries because Flycode handles dunning.

  • pk_columns Site_pk_columns_input Required

    Your store's Skio ID, as {id: ...}.

The updated Site object.

mutation UpdateSite($id: uuid!) {
  updateSiteByPk(pk_columns: {id: $id}, _set: {useFlycodeDunning: true}) {
    id
  }
}
Variables
{
  "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()
                      
Response 200
{
  "data": {
    "updateSiteByPk": {
      "id": "8f3c2b1e-5d4a-4c6b-9e2f-1a7b3c9d0e45"
    }
  }
}

Analytics

Aggregated revenue and subscriber metrics. To export raw data in bulk, use the BigQuery integration.

Analytics

Get daily revenue metrics

Query 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.

  • dateEnd String Required

    Last day, YYYY-MM-DD (inclusive).

  • dateStart String Required

    First day, YYYY-MM-DD (inclusive).

  • revenueMetrics [DailyRevenueMetricsRow]
  • revenueMetrics[].activeSubscribersCount Int
  • revenueMetrics[].activeSubscriptionsCount Int
  • revenueMetrics[].allOrders Int
  • revenueMetrics[].allOrdersSubscribers Int
  • revenueMetrics[].cancelledSubscribersCount Int
  • revenueMetrics[].cancelledSubscriptionsCount Int
  • revenueMetrics[].date String
  • revenueMetrics[].domain String
  • revenueMetrics[].failedSubscribersCount Int
  • revenueMetrics[].failedSubscriptionsCount Int
  • revenueMetrics[].firstTimeOrders Int
  • revenueMetrics[].firstTimeRevenue Float
  • revenueMetrics[].firstTimeRevenueOrderLineDiscounts Float
  • revenueMetrics[].firstTimeRevenueOrderLineTaxes Float
  • revenueMetrics[].firstTimeRevenueShippingLine Float
  • revenueMetrics[].firstTimeRevenueShippingLineDiscounts Float
  • revenueMetrics[].firstTimeRevenueShippingLineTaxes Float
  • revenueMetrics[].firstTimeSubscribers Int
  • revenueMetrics[].nonSubscriptionOrders Int
  • revenueMetrics[].nonSubscriptionRevenue Float
  • revenueMetrics[].nonSubscriptionRevenueOrderLineDiscounts Float
  • revenueMetrics[].nonSubscriptionRevenueOrderLineTaxes Float
  • revenueMetrics[].nonSubscriptionRevenueShippingLine Float
  • revenueMetrics[].nonSubscriptionRevenueShippingLineDiscounts Float
  • revenueMetrics[].nonSubscriptionRevenueShippingLineTaxes Float
  • revenueMetrics[].nonSubscriptionSubscribers Int
  • revenueMetrics[].oneTimeOrders Int
  • revenueMetrics[].oneTimeRevenue Float
  • revenueMetrics[].oneTimeRevenueOrderLineDiscounts Float
  • revenueMetrics[].oneTimeRevenueOrderLineTaxes Float
  • revenueMetrics[].oneTimeSubscribers Int
  • revenueMetrics[].pausedSubscribersCount Int
  • revenueMetrics[].pausedSubscriptionsCount Int
  • revenueMetrics[].recurringOrders Int
  • revenueMetrics[].recurringRevenue Float
  • revenueMetrics[].recurringRevenueOrderLineDiscounts Float
  • revenueMetrics[].recurringRevenueOrderLineTaxes Float
  • revenueMetrics[].recurringRevenueShippingLine Float
  • revenueMetrics[].recurringRevenueShippingLineDiscounts Float
  • revenueMetrics[].recurringRevenueShippingLineTaxes Float
  • revenueMetrics[].recurringSubscribers Int
  • revenueMetrics[].siteId String
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"
  }
}
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()
                      
Response 200
{
  "data": {
    "getDailyRevenueMetrics": {
      "revenueMetrics": [
        {
          "date": "2025-03-01",
          "recurringRevenue": 29.99,
          "firstTimeRevenue": 29.99,
          "recurringOrders": 42,
          "firstTimeOrders": 42,
          "activeSubscriptionsCount": 42,
          "cancelledSubscriptionsCount": 42
        }
      ]
    }
  }
}
Analytics

List Surprise & Delight sessions

Query SurpriseDelightSessions

Returns each time a Surprise & Delight rule ran on one of your subscriptions.

  • Subscription Subscription

    An object relationship

  • Subscription.AuditLogs [AuditLog!]

    An array relationship

  • Subscription.BillingPolicy Policy

    An object relationship

  • Subscription.CancelFlowSessions [CancelFlowSession!]

    An array relationship

  • Subscription.CancelFlowV2Sessions [CancelFlowV2Session!]

    An array relationship

  • Subscription.CancelFlowV3Sessions [CancelFlowV3Session!]

    An array relationship

  • Subscription.DeliveryPolicy Policy

    An 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.PaymentMethod PaymentMethod

    An object relationship

  • Subscription.PrepaidDeliveryPolicy Policy

    An object relationship

  • Subscription.PrepaidGiftRecipient StorefrontUser

    An object relationship

  • Subscription.PrepaidSubscriptionLines [SubscriptionLine!]

    An array relationship

  • Subscription.ShippingAddress Address

    An object relationship

  • Subscription.Site Site

    An object relationship

  • Subscription.StorefrontUser StorefrontUser

    An object relationship

  • Subscription.SubscriptionLines [SubscriptionLine!]

    An array relationship

  • Subscription.SurpriseDelightSessions [SurpriseDelightSessions!]

    An array relationship

  • Subscription.billingPolicyId uuid
  • Subscription.cancelledAt timestamptz
  • Subscription.churnPredictedAt timestamptz
  • Subscription.churnRiskReasons [String!]
  • Subscription.churnScore numeric
  • Subscription.createdAt timestamptz
  • Subscription.currencyCode String
  • Subscription.customAttributes jsonb
  • Subscription.cyclesCompleted Int
  • Subscription.deliveryPolicyId uuid
  • Subscription.deliveryPrice numeric
  • Subscription.deliveryPriceOverride Int
  • Subscription.id uuid
  • Subscription.isPickup Boolean
  • Subscription.lastBillingAttemptAt timestamptz
  • Subscription.maxStreakCount Int
  • Subscription.metadata jsonb
  • Subscription.migrationIndex Int
  • Subscription.nextBillingDate timestamptz
  • Subscription.nextRenewalDate timestamptz

    For prepaid, estimated date when the prepaid subscription will bill for the next period

  • Subscription.note String
  • Subscription.originOrder Order

    An object relationship

  • Subscription.originOrderId uuid
  • Subscription.platformId String
  • Subscription.prepaidDeliveryPolicyId uuid
  • Subscription.prepaidProductPricesPerDelivery jsonb
  • Subscription.remainingCyclesUntilRenewal Int

    For prepaid, orders remaining before the subscription bills again

  • Subscription.shippingAddressId uuid
  • Subscription.siteId uuid
  • Subscription.status String
  • Subscription.statusContext String
  • Subscription.storefrontUserId uuid
  • Subscription.streakCount Int
  • Subscription.streakExpiresAt timestamptz
  • Subscription.updatedAt timestamptz
  • created_at timestamptz
  • group String
  • id uuid
  • ruleId uuid
  • status String
  • subscriptionId uuid
query ListSurpriseDelight($subscriptionId: uuid!) {
  SurpriseDelightSessions(where: {subscriptionId: {_eq: $subscriptionId}}) {
    id
    ruleId
    status
    group
    created_at
  }
}
Variables
{
  "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()
                      
Response 200
{
  "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

Fields
Input Field Description
productVariantId - uuid!
sellingPlanGroupId - uuid!
Example
{
  "productVariantId": uuid,
  "sellingPlanGroupId": uuid
}

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'.

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

address1

column name

address2

column name

city

column name

company

column name

country

column name

createdAt

column name

doorCode

column name

firstName

column name

id

column name

lastName

column name

phoneNumber

column name

platformId

column name

province

column name

storefrontUserId

column name

updatedAt

column name

zip

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

Fields
Input Field Description
customAttributes - jsonb
price - Float
quantity - Int
subscriptionId - uuid!
upsell - Boolean
variantId - uuid!
Example
{
  "customAttributes": jsonb,
  "price": 123.45,
  "quantity": 987,
  "subscriptionId": uuid,
  "upsell": true,
  "variantId": uuid
}

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

Fields
Field Name Description
Policy - Policy! An object relationship
createdAt - timestamptz!
cutoffDay - Int
day - Int!
id - uuid!
missedAnchorAllowance - Int
month - Int
policyId - uuid!
strictness - String!
type - String!
updatedAt - timestamptz!
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"

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

Description

order by avg() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

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"

Fields
Input Field Description
createdAt - order_by
cutoffDay - order_by
day - order_by
id - order_by
missedAnchorAllowance - order_by
month - order_by
policyId - order_by
strictness - order_by
type - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
cutoffDay - order_by
day - order_by
id - order_by
missedAnchorAllowance - order_by
month - order_by
policyId - order_by
strictness - order_by
type - order_by
updatedAt - order_by
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

Description

order by stddev() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_sum_order_by

Description

order by sum() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_var_pop_order_by

Description

order by var_pop() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_var_samp_order_by

Description

order by var_samp() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

Anchor_variance_order_by

Description

order by variance() on columns of table "Anchor"

Fields
Input Field Description
cutoffDay - order_by
day - order_by
missedAnchorAllowance - order_by
month - order_by
Example
{
  "cutoffDay": "asc",
  "day": "asc",
  "missedAnchorAllowance": "asc",
  "month": "asc"
}

ApplyDiscountCodeInput

Fields
Input Field Description
code - String!
subscriptionId - uuid!
Example
{
  "code": "abc123",
  "subscriptionId": uuid
}

ApplyDiscountCodeOutput

Fields
Field Name Description
message - String!
ok - Boolean!
Example
{"message": "abc123", "ok": true}

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"

Fields
Input Field Description
createdAt - order_by
eventType - order_by
id - order_by
storefrontUserId - order_by
subscriptionId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
eventType - order_by
id - order_by
storefrontUserId - order_by
subscriptionId - order_by
updatedAt - order_by
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'.

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".

Fields
Input Field Description
CancelFlowSession - CancelFlowSession_order_by
cancelFlowId - order_by
cancelFlowSessionId - order_by
createdAt - order_by
id - order_by
order - order_by
otherReasonBody - order_by
reason - order_by
rebuttal - order_by
updatedAt - order_by
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'.

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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
id - order_by
status - order_by
subscriptionId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
id - order_by
status - order_by
subscriptionId - order_by
updatedAt - order_by
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

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

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

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
Input Field Description
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
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"

Fields
Input Field Description
action - order_by
cancelFlowId - order_by
created_at - order_by
id - order_by
reason - order_by
rebuttal - order_by
siteId - order_by
status - order_by
subscriptionId - order_by
updated_at - order_by
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"

Fields
Input Field Description
action - order_by
cancelFlowId - order_by
created_at - order_by
id - order_by
reason - order_by
rebuttal - order_by
siteId - order_by
status - order_by
subscriptionId - order_by
updated_at - order_by
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"

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

Description

order by avg() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_bool_exp

Description

Boolean expression to filter rows from the table "CancelFlowV3". All fields are combined with a logical 'AND'.

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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
enabledAt - order_by
name - order_by
ranking - order_by
siteId - order_by
status - order_by
updatedAt - order_by
versionNumber - order_by
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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
enabledAt - order_by
name - order_by
ranking - order_by
siteId - order_by
status - order_by
updatedAt - order_by
versionNumber - order_by
Example
{
  "cancelFlowId": "asc",
  "createdAt": "asc",
  "enabledAt": "asc",
  "name": "asc",
  "ranking": "asc",
  "siteId": "asc",
  "status": "asc",
  "updatedAt": "asc",
  "versionNumber": "asc"
}

CancelFlowV3_stddev_order_by

Description

order by stddev() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_sum_order_by

Description

order by sum() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_var_pop_order_by

Description

order by var_pop() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_var_samp_order_by

Description

order by var_samp() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

CancelFlowV3_variance_order_by

Description

order by variance() on columns of table "CancelFlowV3"

Fields
Input Field Description
ranking - order_by
versionNumber - order_by
Example
{"ranking": "asc", "versionNumber": "asc"}

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

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'.

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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
id - order_by
siteId - order_by
status - order_by
subscriptionId - order_by
type - order_by
updatedAt - order_by
versionNumber - order_by
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"

Fields
Input Field Description
cancelFlowId - order_by
createdAt - order_by
id - order_by
siteId - order_by
status - order_by
subscriptionId - order_by
type - order_by
updatedAt - order_by
versionNumber - order_by
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

Fields
Input Field Description
cancelSessionId - String
invokeSubscriptionCancelJourneys - Boolean
permanentlyCancel - Boolean
shouldSendNotif - Boolean
subscriptionId - uuid!
Example
{
  "cancelSessionId": "xyz789",
  "invokeSubscriptionCancelJourneys": false,
  "permanentlyCancel": false,
  "shouldSendNotif": true,
  "subscriptionId": uuid
}

CancelSubscriptionOutput

Fields
Field Name Description
ok - Boolean!
Example
{"ok": true}

CreateSubscriptionCustomAttribute

Fields
Input Field Description
key - String!
value - String
Example
{
  "key": "xyz789",
  "value": "xyz789"
}

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

Fields
Input Field Description
price - Float
quantity - Int!
variantId - uuid!
Example
{"price": 987.65, "quantity": 987, "variantId": uuid}

CreateSubscriptionOutput

Fields
Field Name Description
id - uuid!
platformId - String
Example
{
  "id": uuid,
  "platformId": "xyz789"
}

CreateSubscriptionPolicyInfo

Fields
Input Field Description
interval - SellingPlanIntervalEnum!
intervalCount - Int!
Example
{"interval": "DAY", "intervalCount": 123}

CreateSubscriptionType

Values
Enum Value Description

PREPAID

SUBSCRIBE_AND_SAVE

Example
"PREPAID"

CreditRewards

Description

site credit rewards configuration

Fields
Field Name Description
Site - Site! An object relationship
enabled - Boolean!
id - uuid!
removedAt - timestamptz
type - String!
value - jsonb!
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'.

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

Description

order by max() on columns of table "CreditRewards"

Fields
Input Field Description
id - order_by
removedAt - order_by
type - order_by
Example
{"id": "asc", "removedAt": "asc", "type": "asc"}

CreditRewards_min_order_by

Description

order by min() on columns of table "CreditRewards"

Fields
Input Field Description
id - order_by
removedAt - order_by
type - order_by
Example
{"id": "asc", "removedAt": "asc", "type": "asc"}

DailyRevenueMetricsInput

Fields
Input Field Description
dateEnd - String!
dateStart - String!
Example
{
  "dateEnd": "xyz789",
  "dateStart": "xyz789"
}

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"

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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
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
Input Field Description
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
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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
Example
{
  "allocationPresentmentAmount": "asc",
  "fixedValue": "asc",
  "maxTimesUsed": "asc",
  "percentage": "asc",
  "timesUsed": "asc"
}

Discount_sum_order_by

Description

order by sum() on columns of table "Discount"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
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"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
Example
{
  "allocationPresentmentAmount": "asc",
  "fixedValue": "asc",
  "maxTimesUsed": "asc",
  "percentage": "asc",
  "timesUsed": "asc"
}

Discount_variance_order_by

Description

order by variance() on columns of table "Discount"

Fields
Input Field Description
allocationPresentmentAmount - order_by
fixedValue - order_by
maxTimesUsed - order_by
percentage - order_by
timesUsed - order_by
Example
{
  "allocationPresentmentAmount": "asc",
  "fixedValue": "asc",
  "maxTimesUsed": "asc",
  "percentage": "asc",
  "timesUsed": "asc"
}

DynamicBox

Description

columns and relationships of "DynamicBox"

Fields
Field Name Description
DynamicBox_SelectableProductVariants - [DynamicBox_SelectableProductVariant!]! An array relationship
Product - Product! An object relationship
fixedDiscount - jsonb
id - uuid!
percentDiscount - jsonb
sizeInterval - jsonb
sizeRange - jsonb
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"

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'.

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

Description

order by max() on columns of table "DynamicBox_SelectableProductVariant"

Fields
Input Field Description
deletedAt - order_by
dynamicBoxId - order_by
productVariantId - order_by
Example
{"deletedAt": "asc", "dynamicBoxId": "asc", "productVariantId": "asc"}

DynamicBox_SelectableProductVariant_min_order_by

Description

order by min() on columns of table "DynamicBox_SelectableProductVariant"

Fields
Input Field Description
deletedAt - order_by
dynamicBoxId - order_by
productVariantId - order_by
Example
{"deletedAt": "asc", "dynamicBoxId": "asc", "productVariantId": "asc"}

DynamicBoxConfigInput

Fields
Input Field Description
boxId - String!
boxIndex - String!
boxSectionId - String
Example
{
  "boxId": "abc123",
  "boxIndex": "xyz789",
  "boxSectionId": "abc123"
}

DynamicBoxContentInput

Fields
Input Field Description
quantity - Int!
variantId - String!
Example
{"quantity": 123, "variantId": "abc123"}

Float

Example
123.45

Float_comparison_exp

Description

Boolean expression to compare columns of type "Float". All fields are combined with logical 'AND'.

Fields
Input Field Description
_eq - Float
_gt - Float
_gte - Float
_in - [Float!]
_is_null - Boolean
_lt - Float
_lte - Float
_neq - Float
_nin - [Float!]
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

Fields
Input Field Description
email - String!
returnToPath - String Optional path to redirect the user to after authentication. This is appended to /a/account, e.g. "/subscriptions" becomes /a/account/subscriptions
Example
{
  "email": "abc123",
  "returnToPath": "xyz789"
}

GenerateMagicLinkOutput

Fields
Field Name Description
error - String
expiresAt - String
magicLinkUrl - String
ok - Boolean!
Example
{
  "error": "xyz789",
  "expiresAt": "abc123",
  "magicLinkUrl": "xyz789",
  "ok": false
}

GenerateQuickActionTokenOutput

Fields
Field Name Description
qaToken - String!
Example
{"qaToken": "abc123"}

GetCustomerCreditBalanceInput

Fields
Input Field Description
email - String
platformId - String
storefrontUserId - String
Example
{
  "email": "xyz789",
  "platformId": "abc123",
  "storefrontUserId": "abc123"
}

GetCustomerCreditBalanceOutput

Fields
Field Name Description
credits - Float!
currencyCode - String!
currencyStringValue - String!
currencyValue - Float!
siteCurrencyCode - String!
siteCurrencyStringValue - String!
siteCurrencyValue - Float!
storefrontUserId - String!
Example
{
  "credits": 987.65,
  "currencyCode": "xyz789",
  "currencyStringValue": "abc123",
  "currencyValue": 123.45,
  "siteCurrencyCode": "abc123",
  "siteCurrencyStringValue": "xyz789",
  "siteCurrencyValue": 123.45,
  "storefrontUserId": "xyz789"
}

Holiday

Description

columns and relationships of "Holiday"

Fields
Field Name Description
Site - Site! An object relationship
id - uuid!
Example
{"Site": Site, "id": uuid}

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'.

Fields
Input Field Description
_eq - Int
_gt - Int
_gte - Int
_in - [Int!]
_is_null - Boolean
_lt - Int
_lte - Int
_neq - Int
_nin - [Int!]
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

Description

order by max() on columns of table "Notification"

Fields
Input Field Description
enabledAt - order_by Time that the notification was last enabled, not updated on other updates
id - order_by
Example
{"enabledAt": "asc", "id": "asc"}

Notification_min_order_by

Description

order by min() on columns of table "Notification"

Fields
Input Field Description
enabledAt - order_by Time that the notification was last enabled, not updated on other updates
id - order_by
Example
{"enabledAt": "asc", "id": "asc"}

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'.

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"

Fields
Input Field Description
body - order_by
createdAt - order_by
deliveredAt - order_by
email - order_by
id - order_by
notificationId - order_by
phoneNumber - order_by
status - order_by
subject - order_by
subscriptionId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
body - order_by
createdAt - order_by
deliveredAt - order_by
email - order_by
id - order_by
notificationId - order_by
phoneNumber - order_by
status - order_by
subject - order_by
subscriptionId - order_by
updatedAt - order_by
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"

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"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
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
Input Field Description
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
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

asc

in ascending order, nulls last

asc_nulls_first

in ascending order, nulls first

asc_nulls_last

in ascending order, nulls last

desc

in descending order, nulls first

desc_nulls_first

in descending order, nulls first

desc_nulls_last

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

appId

column name

cancelledAt

column name

clientIp

column name

createdAt

column name

currencyCode

column name

deletedAt

column name

deliveredAt

column name

firstOrderInPrepaidSequence

column name

fulfillAt

column name

fulfillmentOrderCredit

column name

id

column name

name

column name

note

column name

platformId

column name

platformNumber

column name

prepaidSubscriptionId

column name

processedAt

column name

shippingAddressId

column name

siteId

column name

storefrontUserId

column name

subscriptionId

column name

taxExempt

column name

taxesIncluded

column name

totalPrice

column name

totalPricePresentmentAmount

column name

updatedAt

column name
Example
"appId"

Order_stddev_order_by

Description

order by stddev() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_sum_order_by

Description

order by sum() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_var_pop_order_by

Description

order by var_pop() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_var_samp_order_by

Description

order by var_samp() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
Example
{
  "fulfillmentOrderCredit": "asc",
  "totalPrice": "asc",
  "totalPricePresentmentAmount": "asc"
}

Order_variance_order_by

Description

order by variance() on columns of table "Order"

Fields
Input Field Description
fulfillmentOrderCredit - order_by
totalPrice - order_by Total order price in the site currency code
totalPricePresentmentAmount - order_by In customers currency code (set in currencyCode field)
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

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

Description

order by avg() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_bool_exp

Description

Boolean expression to filter rows from the table "OrderDiscountApplication". All fields are combined with a logical 'AND'.

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

Description

order by stddev() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_sum_order_by

Description

order by sum() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_var_pop_order_by

Description

order by var_pop() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_var_samp_order_by

Description

order by var_samp() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderDiscountApplication_variance_order_by

Description

order by variance() on columns of table "OrderDiscountApplication"

Fields
Input Field Description
fixedValue - order_by
index - order_by
percentage - order_by
Example
{"fixedValue": "asc", "index": "asc", "percentage": "asc"}

OrderLineItem_aggregate_order_by

Description

order by aggregate values of table "OrderLineItem"

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

Description

order by avg() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

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

attributionGroupId

column name

createdAt

column name

currencyCode

column name

customAttributes

column name

groupId

column name

id

column name

orderId

column name

platformId

column name

pricePresentmentAmount

column name

pricePresentmentCurrencyCode

column name

priceWithoutDiscount

column name

productVariantId

column name

quantity

column name

subscriptionLineId

column name

updatedAt

column name
Example
"attributionGroupId"

OrderLineItem_stddev_order_by

Description

order by stddev() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_sum_order_by

Description

order by sum() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_var_pop_order_by

Description

order by var_pop() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_var_samp_order_by

Description

order by var_samp() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

OrderLineItem_variance_order_by

Description

order by variance() on columns of table "OrderLineItem"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{
  "pricePresentmentAmount": "asc",
  "priceWithoutDiscount": "asc",
  "quantity": "asc"
}

pauseSubscriptionInput

Fields
Input Field Description
debugCaller - String
skipOption - SkipOption
subscriptionId - String!
Example
{
  "debugCaller": "xyz789",
  "skipOption": SkipOption,
  "subscriptionId": "abc123"
}

pauseSubscriptionOutput

Fields
Field Name Description
message - String!
ok - Boolean!
Example
{"message": "xyz789", "ok": false}

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"

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

Description

order by avg() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

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

Description

order by stddev() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_sum_order_by

Description

order by sum() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_var_pop_order_by

Description

order by var_pop() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_var_samp_order_by

Description

order by var_samp() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

PaymentMethod_variance_order_by

Description

order by variance() on columns of table "PaymentMethod"

Fields
Input Field Description
expiryMonth - order_by
expiryYear - order_by
lastDigits - order_by
Example
{"expiryMonth": "asc", "expiryYear": "asc", "lastDigits": "asc"}

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

createdAt

column name

id

column name

interval

column name

intervalCount

column name

isMaxCycleV2

column name

maxCycles

column name

minCycles

column name

updatedAt

column name
Example
"createdAt"

PricingPolicy_aggregate_order_by

Description

order by aggregate values of table "PricingPolicy"

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

Description

order by avg() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

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"

Fields
Input Field Description
afterCycle - order_by
createdAt - order_by
fixedPrice - order_by
id - order_by
percentageOff - order_by
sellingPlanId - order_by
sellingPlanPricingPolicyAdjustmentType - order_by
updatedAt - order_by
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"

Fields
Input Field Description
afterCycle - order_by
createdAt - order_by
fixedPrice - order_by
id - order_by
percentageOff - order_by
sellingPlanId - order_by
sellingPlanPricingPolicyAdjustmentType - order_by
updatedAt - order_by
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".

Fields
Input Field Description
SellingPlan - SellingPlan_order_by
afterCycle - order_by
createdAt - order_by
fixedPrice - order_by
id - order_by
percentageOff - order_by
sellingPlanId - order_by
sellingPlanPricingPolicyAdjustmentType - order_by
updatedAt - order_by
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

afterCycle

column name

createdAt

column name

fixedPrice

column name

id

column name

percentageOff

column name

sellingPlanId

column name

sellingPlanPricingPolicyAdjustmentType

column name

updatedAt

column name
Example
"afterCycle"

PricingPolicy_stddev_order_by

Description

order by stddev() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_sum_order_by

Description

order by sum() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_var_pop_order_by

Description

order by var_pop() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_var_samp_order_by

Description

order by var_samp() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

PricingPolicy_variance_order_by

Description

order by variance() on columns of table "PricingPolicy"

Fields
Input Field Description
afterCycle - order_by
fixedPrice - order_by
percentageOff - order_by
Example
{"afterCycle": "asc", "fixedPrice": "asc", "percentageOff": "asc"}

Product_aggregate_order_by

Description

order by aggregate values of table "Product"

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

Description

order by avg() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

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"

Fields
Input Field Description
createdAt - order_by
deletedAt - order_by
description - order_by
id - order_by
imageSrc - order_by
oneTimeUpsellPercentageOff - order_by
platformId - order_by
siteId - order_by
slug - order_by
smsOrder - order_by
status - order_by
title - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
deletedAt - order_by
description - order_by
id - order_by
imageSrc - order_by
oneTimeUpsellPercentageOff - order_by
platformId - order_by
siteId - order_by
slug - order_by
smsOrder - order_by
status - order_by
title - order_by
updatedAt - order_by
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

canUpsell

column name

createdAt

column name

deletedAt

column name

description

column name

hideOn1TimeUpsells

column name

id

column name

imageSrc

column name

images

column name

isDigitalOverride

column name

limitOneTimeUpsellQuantity

column name

metafields

column name

oneTimeUpsellPercentageOff

column name

platformId

column name

shopifyTags

column name

siteId

column name

slug

column name

smsOrder

column name

status

column name

title

column name

updatedAt

column name
Example
"canUpsell"

Product_stddev_order_by

Description

order by stddev() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_sum_order_by

Description

order by sum() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_var_pop_order_by

Description

order by var_pop() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_var_samp_order_by

Description

order by var_samp() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

Product_variance_order_by

Description

order by variance() on columns of table "Product"

Fields
Input Field Description
oneTimeUpsellPercentageOff - order_by
smsOrder - order_by
Example
{"oneTimeUpsellPercentageOff": "asc", "smsOrder": "asc"}

ProductVariant_aggregate_order_by

Description

order by aggregate values of table "ProductVariant"

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

Description

order by avg() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

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"

Fields
Input Field Description
compareAtPrice - order_by
createdAt - order_by
deletedAt - order_by
id - order_by
image - order_by
outOfStockAt - order_by
platformId - order_by
position - order_by
price - order_by
productId - order_by
sku - order_by
title - order_by
updatedAt - order_by
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"

Fields
Input Field Description
compareAtPrice - order_by
createdAt - order_by
deletedAt - order_by
id - order_by
image - order_by
outOfStockAt - order_by
platformId - order_by
position - order_by
price - order_by
productId - order_by
sku - order_by
title - order_by
updatedAt - order_by
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

compareAtPrice

column name

createdAt

column name

deletedAt

column name

id

column name

image

column name

marketPrices

column name

outOfStockAt

column name

platformId

column name

position

column name

price

column name

productId

column name

requiresShipping

column name

sku

column name

title

column name

updatedAt

column name
Example
"compareAtPrice"

ProductVariant_stddev_order_by

Description

order by stddev() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_sum_order_by

Description

order by sum() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_var_pop_order_by

Description

order by var_pop() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_var_samp_order_by

Description

order by var_samp() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

ProductVariant_variance_order_by

Description

order by variance() on columns of table "ProductVariant"

Fields
Input Field Description
compareAtPrice - order_by
position - order_by
price - order_by
Example
{"compareAtPrice": "asc", "position": "asc", "price": "asc"}

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

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'.

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"

Fields
Input Field Description
createdAt - order_by
credits - order_by
id - order_by
productVariantId - order_by
removedAt - order_by
tierLevelId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
credits - order_by
id - order_by
productVariantId - order_by
removedAt - order_by
tierLevelId - order_by
updatedAt - order_by
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'.

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

Fields
Input Field Description
newBillingDate - String!
subscriptionId - uuid!
Example
{
  "newBillingDate": "abc123",
  "subscriptionId": uuid
}

ReactivateSubscriptionOutput

Fields
Field Name Description
ok - Boolean!
Example
{"ok": true}

removeProductVariantFromSellingPlanGroupInput

Fields
Input Field Description
productVariantId - uuid!
sellingPlanGroupId - uuid!
Example
{
  "productVariantId": uuid,
  "sellingPlanGroupId": uuid
}

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

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'.

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"

Fields
Input Field Description
createdAt - order_by
creditDelta - order_by
creditRewardId - order_by
expiredAt - order_by
id - order_by
orderId - order_by
removedAt - order_by
rewardId - order_by
storefrontUserId - order_by
type - order_by
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"

Fields
Input Field Description
createdAt - order_by
creditDelta - order_by
creditRewardId - order_by
expiredAt - order_by
id - order_by
orderId - order_by
removedAt - order_by
rewardId - order_by
storefrontUserId - order_by
type - order_by
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"

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
Input Field Description
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
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'.

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'.

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"

Fields
Input Field Description
createdAt - order_by
id - order_by
productVariantId - order_by
sellingPlanGroupId - order_by
updatedAt - order_by
Example
{
  "createdAt": "asc",
  "id": "asc",
  "productVariantId": "asc",
  "sellingPlanGroupId": "asc",
  "updatedAt": "asc"
}

SellingPlanGroupResource_min_order_by

Description

order by min() on columns of table "SellingPlanGroupResource"

Fields
Input Field Description
createdAt - order_by
id - order_by
productVariantId - order_by
sellingPlanGroupId - order_by
updatedAt - order_by
Example
{
  "createdAt": "asc",
  "id": "asc",
  "productVariantId": "asc",
  "sellingPlanGroupId": "asc",
  "updatedAt": "asc"
}

SellingPlanIntervalEnum

Values
Enum Value Description

DAY

MONTH

WEEK

YEAR

Example
"DAY"

SetCommitmentOfferInput

Fields
Input Field Description
additionalCycles - Int!
subscriptionId - uuid!
Example
{"additionalCycles": 123, "subscriptionId": uuid}

SetCommitmentOfferOutput

Fields
Field Name Description
commitmentLength - Int!
commitmentStartCycle - Int!
minimumCancelCycle - Int!
subscriptionId - String!
Example
{
  "commitmentLength": 987,
  "commitmentStartCycle": 123,
  "minimumCancelCycle": 987,
  "subscriptionId": "xyz789"
}

SetDeliveryPriceOverrideInput

Fields
Input Field Description
deliveryPrice - Float
subscriptionId - uuid!
Example
{"deliveryPrice": 123.45, "subscriptionId": uuid}

SetDeliveryPriceOverrideOutput

Fields
Field Name Description
subscriptionId - uuid!
Example
{"subscriptionId": uuid}

ShipNowInput

Fields
Input Field Description
caller - String
subscriptionId - String!
Example
{
  "caller": "abc123",
  "subscriptionId": "xyz789"
}

ShipNowOutput

Fields
Field Name Description
message - String
ok - Boolean!
Example
{"message": "abc123", "ok": true}

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"

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

Description

order by avg() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderId - order_by
platformId - order_by
pricePresentmentAmount - order_by
pricePresentmentCurrencyCode - order_by
priceWithoutDiscount - order_by
title - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderId - order_by
platformId - order_by
pricePresentmentAmount - order_by
pricePresentmentCurrencyCode - order_by
priceWithoutDiscount - order_by
title - order_by
updatedAt - order_by
Example
{
  "createdAt": "asc",
  "id": "asc",
  "orderId": "asc",
  "platformId": "asc",
  "pricePresentmentAmount": "asc",
  "pricePresentmentCurrencyCode": "asc",
  "priceWithoutDiscount": "asc",
  "title": "asc",
  "updatedAt": "asc"
}

ShippingLine_stddev_order_by

Description

order by stddev() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_sum_order_by

Description

order by sum() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_var_pop_order_by

Description

order by var_pop() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_var_samp_order_by

Description

order by var_samp() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

ShippingLine_variance_order_by

Description

order by variance() on columns of table "ShippingLine"

Fields
Input Field Description
pricePresentmentAmount - order_by
priceWithoutDiscount - order_by
Example
{"pricePresentmentAmount": "asc", "priceWithoutDiscount": "asc"}

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'.

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

Fields
Input Field Description
unit - String!
value - Float!
Example
{"unit": "abc123", "value": 987.65}

SkipSubscriptionInput

Fields
Input Field Description
debugCaller - String
skipOption - SkipOption
subscriptionId - uuid!
Example
{
  "debugCaller": "xyz789",
  "skipOption": SkipOption,
  "subscriptionId": uuid
}

SkipSubscriptionOutput

Fields
Field Name Description
message - String
nextBillingDate - String
ok - Boolean!
Example
{
  "message": "abc123",
  "nextBillingDate": "xyz789",
  "ok": false
}

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"

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

Description

order by avg() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

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

Description

order by stddev() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_sum_order_by

Description

order by sum() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_var_pop_order_by

Description

order by var_pop() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_var_samp_order_by

Description

order by var_samp() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

SkuSwap_variance_order_by

Description

order by variance() on columns of table "SkuSwap"

Fields
Input Field Description
afterOrderNumber - order_by
newPrice - order_by
overrideDaysToNextBilling - order_by
Example
{
  "afterOrderNumber": "asc",
  "newPrice": "asc",
  "overrideDaysToNextBilling": "asc"
}

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
Input Field Description
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
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"

Fields
Input Field Description
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
siteId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
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
siteId - order_by
updatedAt - order_by
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

createdAt

column name

email

column name

emailLower

column name

firstName

column name

id

column name

lastName

column name

phoneNumber

column name

platformId

column name

qaToken

column name

redactedAt

column name

removedAt

column name

shopifyTags

column name

siteId

column name

smsTransactionalOptIn

column name

tempSmsTransactionalOptIn

column name

updatedAt

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"

Fields
Input Field Description
joinDate - order_by
removedAt - order_by
storefrontUserId - order_by
tierExpiresAt - order_by
tierLevelId - order_by
Example
{
  "joinDate": "asc",
  "removedAt": "asc",
  "storefrontUserId": "asc",
  "tierExpiresAt": "asc",
  "tierLevelId": "asc"
}

StorefrontUserTier_min_order_by

Description

order by min() on columns of table "StorefrontUserTier"

Fields
Input Field Description
joinDate - order_by
removedAt - order_by
storefrontUserId - order_by
tierExpiresAt - order_by
tierLevelId - order_by
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"

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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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
Input Field Description
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
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

billingPolicyId

column name

cancelledAt

column name

churnPredictedAt

column name

churnRiskReasons

column name

churnScore

column name

createdAt

column name

currencyCode

column name

customAttributes

column name

cyclesCompleted

column name

deliveryPolicyId

column name

deliveryPrice

column name

deliveryPriceOverride

column name

id

column name

isPickup

column name

lastBillingAttemptAt

column name

maxStreakCount

column name

metadata

column name

migrationIndex

column name

nextBillingDate

column name

note

column name

originOrderId

column name

platformId

column name

prepaidDeliveryPolicyId

column name

prepaidProductPricesPerDelivery

column name

shippingAddressId

column name

siteId

column name

status

column name

statusContext

column name

storefrontUserId

column name

streakCount

column name

streakExpiresAt

column name

updatedAt

column name
Example
"billingPolicyId"

Subscription_stddev_order_by

Description

order by stddev() on columns of table "Subscription"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
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"

Fields
Input Field Description
churnScore - order_by
cyclesCompleted - order_by
deliveryPrice - order_by
deliveryPriceOverride - order_by
maxStreakCount - order_by
migrationIndex - order_by
streakCount - order_by
Example
{
  "churnScore": "asc",
  "cyclesCompleted": "asc",
  "deliveryPrice": "asc",
  "deliveryPriceOverride": "asc",
  "maxStreakCount": "asc",
  "migrationIndex": "asc",
  "streakCount": "asc"
}

SubscriptionEditIntervalInput

Fields
Input Field Description
billingInterval - String
billingIntervalCount - Int
debugCaller - String
nextBillingDate - String
prepaidDeliveryInterval - String
prepaidDeliveryIntervalCount - Int
quickActionMetadata - jsonb
subscriptionId - uuid!
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

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

Description

order by avg() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_bool_exp

Description

Boolean expression to filter rows from the table "SubscriptionLine". All fields are combined with a logical 'AND'.

Fields
Input Field Description
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
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

createdAt

column name

customAttributes

column name

groupId

column name

id

column name

isPrepaid

column name

ordersRemaining

column name

platformId

column name

prepaidSubscriptionId

column name

priceWithoutDiscount

column name

productVariantId

column name

quantity

column name

reChargeId

column name

removedAt

column name

sellingPlanId

column name

subscriptionId

column name

taxable

column name

titleOverride

column name

updatedAt

column name
Example
"createdAt"

SubscriptionLine_stddev_order_by

Description

order by stddev() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_sum_order_by

Description

order by sum() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_var_pop_order_by

Description

order by var_pop() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_var_samp_order_by

Description

order by var_samp() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionLine_variance_order_by

Description

order by variance() on columns of table "SubscriptionLine"

Fields
Input Field Description
ordersRemaining - order_by
priceWithoutDiscount - order_by
quantity - order_by
Example
{"ordersRemaining": "asc", "priceWithoutDiscount": "asc", "quantity": "asc"}

SubscriptionUpdatePaymentMethodInput

Fields
Input Field Description
paymentMethodPlatformId - String
subscriptionId - uuid!
Example
{
  "paymentMethodPlatformId": "abc123",
  "subscriptionId": uuid
}

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'.

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'.

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"

Fields
Input Field Description
created_at - order_by
group - order_by
id - order_by
ruleId - order_by
status - order_by
subscriptionId - order_by
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"

Fields
Input Field Description
created_at - order_by
group - order_by
id - order_by
ruleId - order_by
status - order_by
subscriptionId - order_by
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".

Fields
Input Field Description
Subscription - Subscription_order_by
created_at - order_by
group - order_by
id - order_by
ruleId - order_by
status - order_by
subscriptionId - order_by
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

created_at

column name

group

column name

id

column name

ruleId

column name

status

column name

subscriptionId

column name
Example
"created_at"

SwapPricingOptionType

Values
Enum Value Description

CUSTOM

NEW_VARIANT_PRICE

SAME

Example
"CUSTOM"

SwapSubscriptionProductVariantsInput

Fields
Input Field Description
isGiftSwap - Boolean
newCustomPrice - String
newProductVariantId - String!
oldProductVariantId - String!
pricingOption - SwapPricingOptionType
subscriptionId - String!
subscriptionLinesToSwapFrom - [String!]
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'.

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"

Fields
Input Field Description
createdAt - order_by
id - order_by
name - order_by Value of the tag
siteId - order_by
type - order_by The item this tag applied to (ex. Customer, Product, etc.). There should be a corresponding enum value for this column in Frost.
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
id - order_by
name - order_by Value of the tag
siteId - order_by
type - order_by The item this tag applied to (ex. Customer, Product, etc.). There should be a corresponding enum value for this column in Frost.
updatedAt - order_by
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'.

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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderId - order_by
productId - order_by
storefrontUserId - order_by
tagId - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderId - order_by
productId - order_by
storefrontUserId - order_by
tagId - order_by
updatedAt - order_by
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"

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

Description

order by avg() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderLineItemId - order_by
price - order_by
pricePresentmentAmount - order_by
pricePresentmentCurrencyCode - order_by
rate - order_by
shippingLineId - order_by
title - order_by
updatedAt - order_by
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"

Fields
Input Field Description
createdAt - order_by
id - order_by
orderLineItemId - order_by
price - order_by
pricePresentmentAmount - order_by
pricePresentmentCurrencyCode - order_by
rate - order_by
shippingLineId - order_by
title - order_by
updatedAt - order_by
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

Description

order by stddev() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_stddev_pop_order_by

Description

order by stddev_pop() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_stddev_samp_order_by

Description

order by stddev_samp() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_sum_order_by

Description

order by sum() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_var_pop_order_by

Description

order by var_pop() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_var_samp_order_by

Description

order by var_samp() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

TaxLine_variance_order_by

Description

order by variance() on columns of table "TaxLine"

Fields
Input Field Description
price - order_by
pricePresentmentAmount - order_by
rate - order_by
Example
{"price": "asc", "pricePresentmentAmount": "asc", "rate": "asc"}

Theme

Description

columns and relationships of "Theme"

Fields
Field Name Description
Site - Site! An object relationship
id - uuid!
Example
{"Site": Site, "id": uuid}

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
Input Field Description
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
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

Fields
Input Field Description
isTemporaryPause - Boolean
subscriptionId - String!
Example
{
  "isTemporaryPause": false,
  "subscriptionId": "abc123"
}

unpauseSubscriptionOutput

Fields
Field Name Description
message - String!
ok - Boolean!
Example
{"message": "xyz789", "ok": true}

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

Fields
Input Field Description
date - String!
debugCaller - String
subscriptionId - uuid!
Example
{
  "date": "abc123",
  "debugCaller": "abc123",
  "subscriptionId": uuid
}

UpdateNextBillingDateOutput

Fields
Field Name Description
message - String!
ok - Boolean!
Example
{"message": "xyz789", "ok": true}

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

Fields
Input Field Description
note - String
subscriptionId - String!
Example
{
  "note": "xyz789",
  "subscriptionId": "abc123"
}

UpdateSubscriptionNoteOutput

Fields
Field Name Description
note - String
ok - Boolean!
Example
{"note": "abc123", "ok": false}

UpdateSubscriptionShippingAddressInput

Fields
Input Field Description
address1 - String
address2 - String
city - String
company - String
country - String
doorCode - String
firstName - String
lastName - String
phone - String
province - String
subscriptionId - String!
zip - String
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

Fields
Field Name Description
message - String
ok - Boolean!
Example
{"message": "xyz789", "ok": false}

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'.

Fields
Input Field Description
_eq - uuid
_gt - uuid
_gte - uuid
_in - [uuid!]
_is_null - Boolean
_lt - uuid
_lte - uuid
_neq - uuid
_nin - [uuid!]
Example
{
  "_eq": uuid,
  "_gt": uuid,
  "_gte": uuid,
  "_in": [uuid],
  "_is_null": true,
  "_lt": uuid,
  "_lte": uuid,
  "_neq": uuid,
  "_nin": [uuid]
}