GraphQL API Reference

Welcome to the Submarine Platform GraphQL API reference. This reference includes the complete set of GraphQL types, queries, mutations, and their parameters for interacting with the Submarine eco-system.

For more general Submarine platform documentation, please check out our platform overview.

Learn how to authenticate to the API in the Getting Started guide.

Platform API Status∶ https://status.getsubmarine.com

API Endpoints
# Production:
https://api.getsubmarine.com/graphql
Headers
# You will need your API Token, these are environment specific
Authorization: Bearer <YOUR_PLATFORM_TOKEN_HERE>
Version

1.0.0

Channels

Queries

channel

Description

Find a channel by ID, or return the current channel.

Response

Returns a Channel

Arguments
Name Description
id - SharedGlobalID The channel's ID.

Example

Query
query channel($id: SharedGlobalID) {
  channel(id: $id) {
    channelType
    config {
      ...PlatformConfigFragment
    }
    createdAt
    externalId
    id
    identifier
    name
    organisation {
      ...OrganisationFragment
    }
    sharedSecret
    status
    updatedAt
  }
}
Variables
{"id": SharedGlobalID}
Response
{
  "data": {
    "channel": {
      "channelType": "SHOPIFY",
      "config": PlatformConfig,
      "createdAt": ISO8601DateTime,
      "externalId": 4,
      "id": GlobalID,
      "identifier": "xyz789",
      "name": "xyz789",
      "organisation": Organisation,
      "sharedSecret": "xyz789",
      "status": "ACTIVE",
      "updatedAt": ISO8601DateTime
    }
  }
}

channels

Description

List all channels.

Response

Returns a ChannelConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query channels(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  channels(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...ChannelEdgeFragment
    }
    nodes {
      ...ChannelFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "channels": {
      "edges": [ChannelEdge],
      "nodes": [Channel],
      "pageInfo": PageInfo
    }
  }
}

Objects

Channel

Description

A sales channel.

Fields
Field Name Description
channelType - ChannelType! The type of sales channel (eg. Shopify).
config - PlatformConfig! The channel's Submarine configuration.
createdAt - ISO8601DateTime! The time the channel was created
externalId - ID! The channel's external ID.
id - GlobalID! The channel's ID.
identifier - String! The channel's identifier
name - String The channel's name
organisation - Organisation! The channel's owner.
sharedSecret - String! The shared secret to be used when decoding Submarine notifications.
status - ChannelStatus! The channel's status (eg. active).
updatedAt - ISO8601DateTime! The time the channel was last updated
Example
{
  "channelType": "SHOPIFY",
  "config": PlatformConfig,
  "createdAt": ISO8601DateTime,
  "externalId": "4",
  "id": GlobalID,
  "identifier": "xyz789",
  "name": "abc123",
  "organisation": Organisation,
  "sharedSecret": "abc123",
  "status": "ACTIVE",
  "updatedAt": ISO8601DateTime
}

Organisations

Queries

organisation

Description

Find an organisation by ID, or return the current organisation

Response

Returns an Organisation

Arguments
Name Description
id - GlobalID The organisation's ID.

Example

Query
query organisation($id: GlobalID) {
  organisation(id: $id) {
    address {
      ...MailingAddressFragment
    }
    channels {
      ...ChannelConnectionFragment
    }
    createdAt
    email
    id
    name
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "organisation": {
      "address": MailingAddress,
      "channels": ChannelConnection,
      "createdAt": "xyz789",
      "email": "abc123",
      "id": GlobalID,
      "name": "abc123",
      "status": "ACTIVE",
      "updatedAt": "xyz789"
    }
  }
}

organisations

Description

List all organisations.

Response

Returns an OrganisationConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query organisations(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  organisations(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...OrganisationEdgeFragment
    }
    nodes {
      ...OrganisationFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 987,
  "last": 123
}
Response
{
  "data": {
    "organisations": {
      "edges": [OrganisationEdge],
      "nodes": [Organisation],
      "pageInfo": PageInfo
    }
  }
}

Mutations

organisationCreate

Description

Create a new organisation.

Response

Returns an OrganisationCreatePayload

Arguments
Name Description
input - OrganisationCreateInput! Input for creating an organisation.

Example

Query
mutation organisationCreate($input: OrganisationCreateInput!) {
  organisationCreate(input: $input) {
    organisation {
      ...OrganisationFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": OrganisationCreateInput}
Response
{
  "data": {
    "organisationCreate": {
      "organisation": Organisation,
      "userErrors": [UserError]
    }
  }
}

Objects

Organisation

Description

An organisation using the Submarine Platform.

Fields
Field Name Description
address - MailingAddress The organisation's mailing address.
channels - ChannelConnection! The organisation's channels.
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

createdAt - String! The time the organisation was created
email - String! The organisation's email address.
id - GlobalID! The organisation's ID.
name - String! The organisation's name.
status - OrganisationStatus! The organisation's status (eg. active).
updatedAt - String! The time the organisation was last updated
Example
{
  "address": MailingAddress,
  "channels": ChannelConnection,
  "createdAt": "xyz789",
  "email": "xyz789",
  "id": GlobalID,
  "name": "xyz789",
  "status": "ACTIVE",
  "updatedAt": "xyz789"
}

Products

Queries

product

Description

Find a product by ID.

Response

Returns a Product

Arguments
Name Description
id - SharedGlobalID! The product's ID.

Example

Query
query product($id: SharedGlobalID!) {
  product(id: $id) {
    channel {
      ...ChannelFragment
    }
    externalId
    id
    imageUrl
    productVariants {
      ...ProductVariantFragment
    }
    status
    title
  }
}
Variables
{"id": SharedGlobalID}
Response
{
  "data": {
    "product": {
      "channel": Channel,
      "externalId": "xyz789",
      "id": GlobalID,
      "imageUrl": "xyz789",
      "productVariants": [ProductVariant],
      "status": "DELETED",
      "title": "abc123"
    }
  }
}

products

Description

List all products.

Response

Returns a ProductConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query products(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  products(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...ProductEdgeFragment
    }
    nodes {
      ...ProductFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "products": {
      "edges": [ProductEdge],
      "nodes": [Product],
      "pageInfo": PageInfo
    }
  }
}

Mutations

productCreate

Description

Create a new product.

Response

Returns a ProductCreatePayload

Arguments
Name Description
input - ProductCreateInput! Input for creating a product.

Example

Query
mutation productCreate($input: ProductCreateInput!) {
  productCreate(input: $input) {
    product {
      ...ProductFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductCreateInput}
Response
{
  "data": {
    "productCreate": {
      "product": Product,
      "userErrors": [UserError]
    }
  }
}

productDelete

Description

Delete a product.

Response

Returns a ProductDeletePayload

Arguments
Name Description
input - ProductDeleteInput! Input for deleting a product.

Example

Query
mutation productDelete($input: ProductDeleteInput!) {
  productDelete(input: $input) {
    deletedProductId
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductDeleteInput}
Response
{
  "data": {
    "productDelete": {
      "deletedProductId": GlobalID,
      "userErrors": [UserError]
    }
  }
}

productUpdate

Description

Update a product.

Response

Returns a ProductUpdatePayload

Arguments
Name Description
input - ProductUpdateInput! Input for updating a product.

Example

Query
mutation productUpdate($input: ProductUpdateInput!) {
  productUpdate(input: $input) {
    product {
      ...ProductFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductUpdateInput}
Response
{
  "data": {
    "productUpdate": {
      "product": Product,
      "userErrors": [UserError]
    }
  }
}

Objects

Product

Description

A product.

Fields
Field Name Description
channel - Channel! The product's channel.
externalId - String! The product's external ID.
id - GlobalID! The product's ID.
imageUrl - String The product's image url.
productVariants - [ProductVariant!]! The product's variants.
status - ProductStatus! The product's status.
title - String The product's title.
Example
{
  "channel": Channel,
  "externalId": "abc123",
  "id": GlobalID,
  "imageUrl": "abc123",
  "productVariants": [ProductVariant],
  "status": "DELETED",
  "title": "abc123"
}

Product Variants

Queries

productVariant

Description

Find a product variant by ID.

Response

Returns a ProductVariant

Arguments
Name Description
id - SharedGlobalID! The product variant's ID.

Example

Query
query productVariant($id: SharedGlobalID!) {
  productVariant(id: $id) {
    externalId
    id
    imageUrl
    price {
      ...MoneyFragment
    }
    product {
      ...ProductFragment
    }
    shippable
    sku
    status
    taxable
    title
    weightGrams
  }
}
Variables
{"id": SharedGlobalID}
Response
{
  "data": {
    "productVariant": {
      "externalId": "xyz789",
      "id": GlobalID,
      "imageUrl": "abc123",
      "price": Money,
      "product": Product,
      "shippable": true,
      "sku": "abc123",
      "status": "DELETED",
      "taxable": false,
      "title": "abc123",
      "weightGrams": 123
    }
  }
}

productVariants

Description

List all product variants.

Response

Returns a ProductVariantConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query productVariants(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  productVariants(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...ProductVariantEdgeFragment
    }
    nodes {
      ...ProductVariantFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "productVariants": {
      "edges": [ProductVariantEdge],
      "nodes": [ProductVariant],
      "pageInfo": PageInfo
    }
  }
}

Mutations

productVariantCreate

Description

Create a new product variant.

Response

Returns a ProductVariantCreatePayload

Arguments
Name Description
input - ProductVariantCreateInput! Input for creating a product variant.

Example

Query
mutation productVariantCreate($input: ProductVariantCreateInput!) {
  productVariantCreate(input: $input) {
    productVariant {
      ...ProductVariantFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductVariantCreateInput}
Response
{
  "data": {
    "productVariantCreate": {
      "productVariant": ProductVariant,
      "userErrors": [UserError]
    }
  }
}

productVariantDelete

Description

Delete a product variant.

Response

Returns a ProductVariantDeletePayload

Arguments
Name Description
input - ProductVariantDeleteInput! Input for deleting a product variant.

Example

Query
mutation productVariantDelete($input: ProductVariantDeleteInput!) {
  productVariantDelete(input: $input) {
    deletedProductVariantId
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductVariantDeleteInput}
Response
{
  "data": {
    "productVariantDelete": {
      "deletedProductVariantId": GlobalID,
      "userErrors": [UserError]
    }
  }
}

productVariantUpdate

Description

Update a product variant.

Response

Returns a ProductVariantUpdatePayload

Arguments
Name Description
input - ProductVariantUpdateInput! Input for updating a product variant.

Example

Query
mutation productVariantUpdate($input: ProductVariantUpdateInput!) {
  productVariantUpdate(input: $input) {
    productVariant {
      ...ProductVariantFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ProductVariantUpdateInput}
Response
{
  "data": {
    "productVariantUpdate": {
      "productVariant": ProductVariant,
      "userErrors": [UserError]
    }
  }
}

Objects

ProductVariant

Description

A product.

Fields
Field Name Description
externalId - String! The variant's external ID.
id - GlobalID! The product variant's ID.
imageUrl - String The variant's image URL.
price - Money! The variant's price
product - Product! The product this variant belongs to.
shippable - Boolean! Whether the variant requires shipping.
sku - String The variant's SKU.
status - ProductVariantStatus! The variant's status.
taxable - Boolean! Whether a tax is charged when the variant is sold.
title - String The variant's title.
weightGrams - Int The variant's weight in grams.
Example
{
  "externalId": "abc123",
  "id": GlobalID,
  "imageUrl": "abc123",
  "price": Money,
  "product": Product,
  "shippable": false,
  "sku": "abc123",
  "status": "DELETED",
  "taxable": false,
  "title": "abc123",
  "weightGrams": 987
}

Webhooks

Queries

webhook

Description

Find a webhook by ID.

Response

Returns a Webhook

Arguments
Name Description
id - GlobalID! The webhook's ID.

Example

Query
query webhook($id: GlobalID!) {
  webhook(id: $id) {
    channel {
      ...ChannelFragment
    }
    createdAt
    id
    status
    topic
    updatedAt
    url
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "webhook": {
      "channel": Channel,
      "createdAt": ISO8601DateTime,
      "id": GlobalID,
      "status": "ACTIVE",
      "topic": "CAMPAIGN_ORDER_CANCELLED",
      "updatedAt": ISO8601DateTime,
      "url": Url
    }
  }
}

webhooks

Description

List all webhooks.

Response

Returns a WebhookConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query webhooks(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  webhooks(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...WebhookEdgeFragment
    }
    nodes {
      ...WebhookFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 123,
  "last": 987
}
Response
{
  "data": {
    "webhooks": {
      "edges": [WebhookEdge],
      "nodes": [Webhook],
      "pageInfo": PageInfo
    }
  }
}

Mutations

webhookCreate

Description

Creates a webhook subscription.

Response

Returns a WebhookCreatePayload

Arguments
Name Description
input - WebhookCreateInput! Input for creating a webhook subscription.

Example

Query
mutation webhookCreate($input: WebhookCreateInput!) {
  webhookCreate(input: $input) {
    userErrors {
      ...UserErrorFragment
    }
    webhook {
      ...WebhookFragment
    }
  }
}
Variables
{"input": WebhookCreateInput}
Response
{
  "data": {
    "webhookCreate": {
      "userErrors": [UserError],
      "webhook": Webhook
    }
  }
}

webhookDelete

Description

Deletes a webhook subscription.

Response

Returns a WebhookDeletePayload

Arguments
Name Description
input - WebhookDeleteInput! Input for deleting a Webhook Subscription.

Example

Query
mutation webhookDelete($input: WebhookDeleteInput!) {
  webhookDelete(input: $input) {
    deletedWebhookId
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": WebhookDeleteInput}
Response
{
  "data": {
    "webhookDelete": {
      "deletedWebhookId": GlobalID,
      "userErrors": [UserError]
    }
  }
}

webhookUpdate

Description

Updates a webhook subscription.

Response

Returns a WebhookUpdatePayload

Arguments
Name Description
input - WebhookUpdateInput! Input for updating the webhook.

Example

Query
mutation webhookUpdate($input: WebhookUpdateInput!) {
  webhookUpdate(input: $input) {
    userErrors {
      ...UserErrorFragment
    }
    webhook {
      ...WebhookFragment
    }
  }
}
Variables
{"input": WebhookUpdateInput}
Response
{
  "data": {
    "webhookUpdate": {
      "userErrors": [UserError],
      "webhook": Webhook
    }
  }
}

Objects

Webhook

Description

A webhook.

Fields
Field Name Description
channel - Channel! The webhooks's channel
createdAt - ISO8601DateTime! The time the webhook was created
id - GlobalID! The webhooks's ID.
status - WebhookStatus! The webhooks's status (eg. ACTIVE).
topic - WebhookTopic! The webhooks's topic (eg. CHARGE_FAILED).
updatedAt - ISO8601DateTime! The time the webhook was last updated
url - Url! The webhooks url path
Example
{
  "channel": Channel,
  "createdAt": ISO8601DateTime,
  "id": GlobalID,
  "status": "ACTIVE",
  "topic": "CAMPAIGN_ORDER_CANCELLED",
  "updatedAt": ISO8601DateTime,
  "url": Url
}

Charges

Queries

charge

Description

Find a Charge by ID.

Response

Returns a Charge

Arguments
Name Description
id - GlobalID! The charge's ID.

Example

Query
query charge($id: GlobalID!) {
  charge(id: $id) {
    amount {
      ...MoneyFragment
    }
    chargeType
    createdAt
    customer {
      ...CustomerFragment
    }
    description
    externalId
    failureCode
    failureMessage
    id
    metadata
    paymentIntent {
      ...PaymentIntentFragment
    }
    recordStatus
    refunds {
      ...RefundFragment
    }
    source
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "charge": {
      "amount": Money,
      "chargeType": "AUTHORISE",
      "createdAt": ISO8601DateTime,
      "customer": Customer,
      "description": "abc123",
      "externalId": "xyz789",
      "failureCode": "API_ERROR",
      "failureMessage": "abc123",
      "id": GlobalID,
      "metadata": Metadata,
      "paymentIntent": PaymentIntent,
      "recordStatus": "PROCESSED",
      "refunds": [Refund],
      "source": "SHOPIFY",
      "status": "FAILED",
      "updatedAt": ISO8601DateTime
    }
  }
}

charges

Description

List all charges.

Response

Returns a ChargeConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query charges(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  charges(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...ChargeEdgeFragment
    }
    nodes {
      ...ChargeFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 123
}
Response
{
  "data": {
    "charges": {
      "edges": [ChargeEdge],
      "nodes": [Charge],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

chargeCapture

Description

Captures a charge for a payment intent.

Response

Returns a ChargeCapturePayload

Arguments
Name Description
input - ChargeCaptureInput! Input for capturing a charge.

Example

Query
mutation chargeCapture($input: ChargeCaptureInput!) {
  chargeCapture(input: $input) {
    charge {
      ...ChargeFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ChargeCaptureInput}
Response
{
  "data": {
    "chargeCapture": {
      "charge": Charge,
      "userErrors": [UserError]
    }
  }
}

chargeRecord

Description

Records a charge for a payment intent.

Response

Returns a ChargeRecordPayload

Arguments
Name Description
input - ChargeRecordInput! Input for recording a charge.

Example

Query
mutation chargeRecord($input: ChargeRecordInput!) {
  chargeRecord(input: $input) {
    charge {
      ...ChargeFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ChargeRecordInput}
Response
{
  "data": {
    "chargeRecord": {
      "charge": Charge,
      "userErrors": [UserError]
    }
  }
}

Objects

Charge

Description

A Charge

Fields
Field Name Description
amount - Money The amount the charge is for.
chargeType - ChargeType The type of charge.
createdAt - ISO8601DateTime! The time the charge was created.
customer - Customer! The customer associated with the charge.
description - String The charge's description.
externalId - String The external ID of the charge.
failureCode - ChargeFailureCode The type of failure.
failureMessage - String The failure message.
id - GlobalID! The ID of the charge.
metadata - Metadata Unstructured key/value pairs.
paymentIntent - PaymentIntent! The associated payment intent.
recordStatus - RecordStatus The record status of charge.
refunds - [Refund!] The refunds associated with this charge.
source - ChargeSource The source of the charge.
status - ChargeStatus The charge's status.
updatedAt - ISO8601DateTime The time the charge was last updated.
Example
{
  "amount": Money,
  "chargeType": "AUTHORISE",
  "createdAt": ISO8601DateTime,
  "customer": Customer,
  "description": "xyz789",
  "externalId": "xyz789",
  "failureCode": "API_ERROR",
  "failureMessage": "abc123",
  "id": GlobalID,
  "metadata": Metadata,
  "paymentIntent": PaymentIntent,
  "recordStatus": "PROCESSED",
  "refunds": [Refund],
  "source": "SHOPIFY",
  "status": "FAILED",
  "updatedAt": ISO8601DateTime
}

Payment Intents

Queries

paymentIntent

Description

Find a Payment Intent by ID.

Response

Returns a PaymentIntent

Arguments
Name Description
id - GlobalID! The payment intent's ID.

Example

Query
query paymentIntent($id: GlobalID!) {
  paymentIntent(id: $id) {
    adjustments {
      ...PaymentIntentAdjustmentFragment
    }
    amount {
      ...MoneyFragment
    }
    amountPaid {
      ...MoneyFragment
    }
    amountRefunded {
      ...MoneyFragment
    }
    balanceOwing {
      ...MoneyFragment
    }
    charges {
      ...ChargeFragment
    }
    createdAt
    customer {
      ...CustomerFragment
    }
    finalisedAt
    flexible
    id
    metadata
    paymentMethod {
      ...PaymentMethodFragment
    }
    refunds {
      ...RefundFragment
    }
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "paymentIntent": {
      "adjustments": [PaymentIntentAdjustment],
      "amount": Money,
      "amountPaid": Money,
      "amountRefunded": Money,
      "balanceOwing": Money,
      "charges": [Charge],
      "createdAt": ISO8601DateTime,
      "customer": Customer,
      "finalisedAt": ISO8601DateTime,
      "flexible": false,
      "id": GlobalID,
      "metadata": Metadata,
      "paymentMethod": PaymentMethod,
      "refunds": [Refund],
      "status": "CANCELLED",
      "updatedAt": ISO8601DateTime
    }
  }
}

paymentIntents

Description

List all payment intents.

Response

Returns a PaymentIntentConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query paymentIntents(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  paymentIntents(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...PaymentIntentEdgeFragment
    }
    nodes {
      ...PaymentIntentFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "paymentIntents": {
      "edges": [PaymentIntentEdge],
      "nodes": [PaymentIntent],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

paymentIntentAdjustmentCreate

Description

Creates an adjustment to a payment intent.

Arguments
Name Description
input - PaymentIntentAdjustmentCreateInput! Input for creating a payment intent.

Example

Query
mutation paymentIntentAdjustmentCreate($input: PaymentIntentAdjustmentCreateInput!) {
  paymentIntentAdjustmentCreate(input: $input) {
    paymentIntentAdjustment {
      ...PaymentIntentAdjustmentFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentIntentAdjustmentCreateInput}
Response
{
  "data": {
    "paymentIntentAdjustmentCreate": {
      "paymentIntentAdjustment": PaymentIntentAdjustment,
      "userErrors": [UserError]
    }
  }
}

paymentIntentCancel

Description

Cancels a payment intent.

Response

Returns a PaymentIntentCancelPayload

Arguments
Name Description
input - PaymentIntentCancelInput! Input for cancelling a payment intent.

Example

Query
mutation paymentIntentCancel($input: PaymentIntentCancelInput!) {
  paymentIntentCancel(input: $input) {
    paymentIntent {
      ...PaymentIntentFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentIntentCancelInput}
Response
{
  "data": {
    "paymentIntentCancel": {
      "paymentIntent": PaymentIntent,
      "userErrors": [UserError]
    }
  }
}

paymentIntentCreate

Description

Creates a payment intent.

Response

Returns a PaymentIntentCreatePayload

Arguments
Name Description
input - PaymentIntentCreateInput! Input for creating a payment intent.

Example

Query
mutation paymentIntentCreate($input: PaymentIntentCreateInput!) {
  paymentIntentCreate(input: $input) {
    paymentIntent {
      ...PaymentIntentFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentIntentCreateInput}
Response
{
  "data": {
    "paymentIntentCreate": {
      "paymentIntent": PaymentIntent,
      "userErrors": [UserError]
    }
  }
}

paymentIntentUpdate

Description

Updates a payment intent.

Response

Returns a PaymentIntentUpdatePayload

Arguments
Name Description
input - PaymentIntentUpdateInput! Input for updating a payment intent.

Example

Query
mutation paymentIntentUpdate($input: PaymentIntentUpdateInput!) {
  paymentIntentUpdate(input: $input) {
    paymentIntent {
      ...PaymentIntentFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentIntentUpdateInput}
Response
{
  "data": {
    "paymentIntentUpdate": {
      "paymentIntent": PaymentIntent,
      "userErrors": [UserError]
    }
  }
}

Objects

PaymentIntent

Description

A payment intent.

Fields
Field Name Description
adjustments - [PaymentIntentAdjustment!] The adjustments made against this payment intent.
amount - Money The payment intent money amount
amountPaid - Money The payment intent money amount
amountRefunded - Money The payment intent money amount
balanceOwing - Money The payment intent money amount
charges - [Charge!] The charges made against this payment intent.
createdAt - ISO8601DateTime! PaymentIntent creation time
customer - Customer! The customer
finalisedAt - ISO8601DateTime PaymentIntent finalised time
flexible - Boolean The flexibility of a payment intent
id - GlobalID! The payment intent's ID.
metadata - Metadata Unstructured key/value pairs
paymentMethod - PaymentMethod! The associated payment method
refunds - [Refund!] The refunds made against this payment intent.
status - PaymentIntentStatus Status of the payment intent
updatedAt - ISO8601DateTime PaymentIntent last updated at
Example
{
  "adjustments": [PaymentIntentAdjustment],
  "amount": Money,
  "amountPaid": Money,
  "amountRefunded": Money,
  "balanceOwing": Money,
  "charges": [Charge],
  "createdAt": ISO8601DateTime,
  "customer": Customer,
  "finalisedAt": ISO8601DateTime,
  "flexible": false,
  "id": GlobalID,
  "metadata": Metadata,
  "paymentMethod": PaymentMethod,
  "refunds": [Refund],
  "status": "CANCELLED",
  "updatedAt": ISO8601DateTime
}

Payment Methods

Queries

paymentMethod

Description

Find a Payment Method by ID.

Response

Returns a PaymentMethod

Arguments
Name Description
id - GlobalID! The payment method's ID.

Example

Query
query paymentMethod($id: GlobalID!) {
  paymentMethod(id: $id) {
    activePaymentInstrument {
      ...PaymentInstrumentFragment
    }
    channel {
      ...ChannelFragment
    }
    createdAt
    customer {
      ...CustomerFragment
    }
    externalId
    id
    metadata
    paymentInstruments {
      ...PaymentInstrumentFragment
    }
    paymentIntents {
      ...PaymentIntentConnectionFragment
    }
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "paymentMethod": {
      "activePaymentInstrument": PaymentInstrument,
      "channel": Channel,
      "createdAt": ISO8601DateTime,
      "customer": Customer,
      "externalId": "xyz789",
      "id": GlobalID,
      "metadata": Metadata,
      "paymentInstruments": [PaymentInstrument],
      "paymentIntents": PaymentIntentConnection,
      "status": "ACTIVE",
      "updatedAt": ISO8601DateTime
    }
  }
}

paymentMethods

Description

List all payment methods.

Response

Returns a PaymentMethodConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query paymentMethods(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  paymentMethods(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...PaymentMethodEdgeFragment
    }
    nodes {
      ...PaymentMethodFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "paymentMethods": {
      "edges": [PaymentMethodEdge],
      "nodes": [PaymentMethod],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

paymentMethodCancel

Description

Cancels a payment method.

Response

Returns a PaymentMethodCancelPayload

Arguments
Name Description
input - PaymentMethodCancelInput! Input for cancelling a payment method.

Example

Query
mutation paymentMethodCancel($input: PaymentMethodCancelInput!) {
  paymentMethodCancel(input: $input) {
    paymentMethod {
      ...PaymentMethodFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentMethodCancelInput}
Response
{
  "data": {
    "paymentMethodCancel": {
      "paymentMethod": PaymentMethod,
      "userErrors": [UserError]
    }
  }
}

paymentMethodCreate

Description

Creates a payment method.

Response

Returns a PaymentMethodCreatePayload

Arguments
Name Description
input - PaymentMethodCreateInput! Input for creating a payment method.

Example

Query
mutation paymentMethodCreate($input: PaymentMethodCreateInput!) {
  paymentMethodCreate(input: $input) {
    paymentMethod {
      ...PaymentMethodFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentMethodCreateInput}
Response
{
  "data": {
    "paymentMethodCreate": {
      "paymentMethod": PaymentMethod,
      "userErrors": [UserError]
    }
  }
}

paymentMethodUpdate

Description

Updates a payment method.

Response

Returns a PaymentMethodUpdatePayload

Arguments
Name Description
input - PaymentMethodUpdateInput! Input for updating a payment method.

Example

Query
mutation paymentMethodUpdate($input: PaymentMethodUpdateInput!) {
  paymentMethodUpdate(input: $input) {
    paymentMethod {
      ...PaymentMethodFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PaymentMethodUpdateInput}
Response
{
  "data": {
    "paymentMethodUpdate": {
      "paymentMethod": PaymentMethod,
      "userErrors": [UserError]
    }
  }
}

Objects

PaymentMethod

Description

A payment method.

Fields
Field Name Description
activePaymentInstrument - PaymentInstrument!
channel - Channel! The payment method's channel.
createdAt - ISO8601DateTime! The date and time when the payment method was created.
customer - Customer! The payment method's customer.
externalId - String The (optional) external ID of the payment method.
id - GlobalID! The payment method's ID.
metadata - Metadata Unstructured key/value pairs.
paymentInstruments - [PaymentInstrument!] The payment instruments associated to this payment method.
paymentIntents - PaymentIntentConnection The payment intents associated with this payment method.
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

status - PaymentMethodStatus The status of the payment method.
updatedAt - ISO8601DateTime The date and time when the payment method was last updated.
Example
{
  "activePaymentInstrument": PaymentInstrument,
  "channel": Channel,
  "createdAt": ISO8601DateTime,
  "customer": Customer,
  "externalId": "abc123",
  "id": GlobalID,
  "metadata": Metadata,
  "paymentInstruments": [PaymentInstrument],
  "paymentIntents": PaymentIntentConnection,
  "status": "ACTIVE",
  "updatedAt": ISO8601DateTime
}

Refunds

Queries

refund

Description

Find a Refund by ID.

Response

Returns a Refund

Arguments
Name Description
id - GlobalID! The refund's ID.

Example

Query
query refund($id: GlobalID!) {
  refund(id: $id) {
    amount {
      ...MoneyFragment
    }
    charge {
      ...ChargeFragment
    }
    createdAt
    customer {
      ...CustomerFragment
    }
    description
    externalId
    id
    metadata
    paymentIntent {
      ...PaymentIntentFragment
    }
    recordStatus
    source
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "refund": {
      "amount": Money,
      "charge": Charge,
      "createdAt": ISO8601DateTime,
      "customer": Customer,
      "description": "abc123",
      "externalId": "abc123",
      "id": GlobalID,
      "metadata": Metadata,
      "paymentIntent": PaymentIntent,
      "recordStatus": "PROCESSED",
      "source": "SHOPIFY",
      "status": "FAILED",
      "updatedAt": ISO8601DateTime
    }
  }
}

refunds

Description

List all refunds.

Response

Returns a RefundConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query refunds(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  refunds(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...RefundEdgeFragment
    }
    nodes {
      ...RefundFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "refunds": {
      "edges": [RefundEdge],
      "nodes": [Refund],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

refundProcess

Description

Processes a refund for a payment intent.

Response

Returns a RefundProcessPayload

Arguments
Name Description
input - RefundProcessInput! Input for processing a refund.

Example

Query
mutation refundProcess($input: RefundProcessInput!) {
  refundProcess(input: $input) {
    refund {
      ...RefundFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": RefundProcessInput}
Response
{
  "data": {
    "refundProcess": {
      "refund": Refund,
      "userErrors": [UserError]
    }
  }
}

refundRecord

Description

Record a refund for a payment intent.

Response

Returns a RefundRecordPayload

Arguments
Name Description
input - RefundRecordInput! Input for recording a refund.

Example

Query
mutation refundRecord($input: RefundRecordInput!) {
  refundRecord(input: $input) {
    refund {
      ...RefundFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": RefundRecordInput}
Response
{
  "data": {
    "refundRecord": {
      "refund": Refund,
      "userErrors": [UserError]
    }
  }
}

Objects

Refund

Description

A Refund

Fields
Field Name Description
amount - Money The amount the refund if for.
charge - Charge The refund's parent charge.
createdAt - ISO8601DateTime! The time the refund was created.
customer - Customer! The customer associated with the refund.
description - String The refund's description.
externalId - String The external ID of the refund.
id - GlobalID! The ID of the refund.
metadata - Metadata Unstructured key/value pairs/
paymentIntent - PaymentIntent! The associated payment intent.
recordStatus - RecordStatus The record status of refund.
source - ChargeSource The source of the refund.
status - RefundStatus The refund's status.
updatedAt - ISO8601DateTime The time the refund was last updated.
Example
{
  "amount": Money,
  "charge": Charge,
  "createdAt": ISO8601DateTime,
  "customer": Customer,
  "description": "abc123",
  "externalId": "abc123",
  "id": GlobalID,
  "metadata": Metadata,
  "paymentIntent": PaymentIntent,
  "recordStatus": "PROCESSED",
  "source": "SHOPIFY",
  "status": "FAILED",
  "updatedAt": ISO8601DateTime
}

Shopify Credentials

Mutations

shopifyCredentialsCreate

Description

Creates a set of Shopify credentials.

Response

Returns a ShopifyCredentialsCreatePayload

Arguments
Name Description
input - ShopifyCredentialsCreateInput! Input for creating shopify credentials.

Example

Query
mutation shopifyCredentialsCreate($input: ShopifyCredentialsCreateInput!) {
  shopifyCredentialsCreate(input: $input) {
    shopifyCredentials {
      ...ShopifyCredentialsFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": ShopifyCredentialsCreateInput}
Response
{
  "data": {
    "shopifyCredentialsCreate": {
      "shopifyCredentials": ShopifyCredentials,
      "userErrors": [UserError]
    }
  }
}

Campaign Orders

Queries

campaignOrder

Description

Find an campaign order by ID.

Response

Returns a CampaignOrder

Arguments
Name Description
id - GlobalID! The campaign order's ID.

Example

Query
query campaignOrder($id: GlobalID!) {
  campaignOrder(id: $id) {
    allocatedQuantity
    campaign {
      ... on CrowdfundingCampaign {
        ...CrowdfundingCampaignFragment
      }
      ... on PresaleCampaign {
        ...PresaleCampaignFragment
      }
    }
    campaignInventoryItem {
      ...CampaignInventoryItemFragment
    }
    campaignItem {
      ...CampaignItemFragment
    }
    campaignOrderGroup {
      ...CampaignOrderGroupFragment
    }
    cancelReason
    cancelledBy
    customer {
      ...CustomerFragment
    }
    financials {
      ...CampaignOrderFinancialsFragment
    }
    fulfilmentStatus
    id
    identifier
    milestones {
      ...CampaignOrderMilestonesFragment
    }
    originalQuantity
    paymentIntent {
      ...PaymentIntentFragment
    }
    paymentMethod {
      ...PaymentMethodFragment
    }
    paymentStatus
    product {
      ...ProductFragment
    }
    productVariant {
      ...ProductVariantFragment
    }
    quantity
    sequentialId
    status
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "campaignOrder": {
      "allocatedQuantity": 123,
      "campaign": CrowdfundingCampaign,
      "campaignInventoryItem": CampaignInventoryItem,
      "campaignItem": CampaignItem,
      "campaignOrderGroup": CampaignOrderGroup,
      "cancelReason": "xyz789",
      "cancelledBy": "CUSTOMER",
      "customer": Customer,
      "financials": CampaignOrderFinancials,
      "fulfilmentStatus": "ALLOCATED",
      "id": GlobalID,
      "identifier": "abc123",
      "milestones": CampaignOrderMilestones,
      "originalQuantity": 987,
      "paymentIntent": PaymentIntent,
      "paymentMethod": PaymentMethod,
      "paymentStatus": "FAILED",
      "product": Product,
      "productVariant": ProductVariant,
      "quantity": 987,
      "sequentialId": 123,
      "status": "ALLOCATED"
    }
  }
}

campaignOrderPagination

Description

Next and previous campaign orders

Response

Returns a PaginationResult

Arguments
Name Description
campaignId - GlobalID Return only campaign orders belonging to this campaign.
campaignType - CampaignType Return only campaign orders of the given type.
customerId - [SharedGlobalID!] Return only campaign orders belonging to these customers.
fulfilmentStatus - [CampaignOrderFulfilmentStatus!] The campaign order's fulfilment status.
paymentStatus - [CampaignOrderPaymentStatus!] The campaign order's payment status.
productVariantId - [SharedGlobalID!] Return only campaign orders for these variants.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - CampaignOrderSortKey The key used to sort campaign orders.
status - [CampaignOrderStatus!] The campaign order's status.

Example

Query
query campaignOrderPagination(
  $campaignId: GlobalID,
  $campaignType: CampaignType,
  $customerId: [SharedGlobalID!],
  $fulfilmentStatus: [CampaignOrderFulfilmentStatus!],
  $paymentStatus: [CampaignOrderPaymentStatus!],
  $productVariantId: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: CampaignOrderSortKey,
  $status: [CampaignOrderStatus!]
) {
  campaignOrderPagination(
    campaignId: $campaignId,
    campaignType: $campaignType,
    customerId: $customerId,
    fulfilmentStatus: $fulfilmentStatus,
    paymentStatus: $paymentStatus,
    productVariantId: $productVariantId,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status
  ) {
    queryArguments
    nextCampaignOrders {
      ...CampaignOrderConnectionFragment
    }
    nextCrowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    nextPresaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    previousCampaignOrders {
      ...CampaignOrderConnectionFragment
    }
    previousCrowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    previousPresaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    nextSubscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    nextSubscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    nextSubscriptions {
      ...SubscriptionConnectionFragment
    }
    previousSubscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    previousSubscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    previousSubscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "campaignId": GlobalID,
  "campaignType": "CROWDFUNDING",
  "customerId": [SharedGlobalID],
  "fulfilmentStatus": ["ALLOCATED"],
  "paymentStatus": ["FAILED"],
  "productVariantId": [SharedGlobalID],
  "query": "xyz789",
  "sortDirection": "ASC",
  "sortKey": "CREATED_AT",
  "status": ["ALLOCATED"]
}
Response
{
  "data": {
    "campaignOrderPagination": {
      "queryArguments": "abc123",
      "nextCampaignOrders": CampaignOrderConnection,
      "nextCrowdfundingCampaigns": CrowdfundingCampaignConnection,
      "nextPresaleCampaigns": PresaleCampaignConnection,
      "previousCampaignOrders": CampaignOrderConnection,
      "previousCrowdfundingCampaigns": CrowdfundingCampaignConnection,
      "previousPresaleCampaigns": PresaleCampaignConnection,
      "nextSubscriptionOrders": SubscriptionOrderConnection,
      "nextSubscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "nextSubscriptions": SubscriptionConnection,
      "previousSubscriptionOrders": SubscriptionOrderConnection,
      "previousSubscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "previousSubscriptions": SubscriptionConnection
    }
  }
}

campaignOrders

Description

List all campaign orders.

Response

Returns a CampaignOrderConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query campaignOrders(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  campaignOrders(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...CampaignOrderEdgeFragment
    }
    nodes {
      ...CampaignOrderFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "campaignOrders": {
      "edges": [CampaignOrderEdge],
      "nodes": [CampaignOrder],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

searchCampaignOrders

Description

Search campaign orders

Response

Returns a SearchResult

Arguments
Name Description
campaignId - GlobalID Return only campaign orders belonging to this campaign.
campaignType - CampaignType Return only campaign orders of the given type.
customerId - [SharedGlobalID!] Return only campaign orders belonging to these customers.
fulfilmentStatus - [CampaignOrderFulfilmentStatus!] The campaign order's fulfilment status.
paymentStatus - [CampaignOrderPaymentStatus!] The campaign order's payment status.
productVariantId - [SharedGlobalID!] Return only campaign orders for these variants.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - CampaignOrderSortKey The key used to sort campaign orders.
status - [CampaignOrderStatus!] The campaign order's status.

Example

Query
query searchCampaignOrders(
  $campaignId: GlobalID,
  $campaignType: CampaignType,
  $customerId: [SharedGlobalID!],
  $fulfilmentStatus: [CampaignOrderFulfilmentStatus!],
  $paymentStatus: [CampaignOrderPaymentStatus!],
  $productVariantId: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: CampaignOrderSortKey,
  $status: [CampaignOrderStatus!]
) {
  searchCampaignOrders(
    campaignId: $campaignId,
    campaignType: $campaignType,
    customerId: $customerId,
    fulfilmentStatus: $fulfilmentStatus,
    paymentStatus: $paymentStatus,
    productVariantId: $productVariantId,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "campaignId": GlobalID,
  "campaignType": "CROWDFUNDING",
  "customerId": [SharedGlobalID],
  "fulfilmentStatus": ["ALLOCATED"],
  "paymentStatus": ["FAILED"],
  "productVariantId": [SharedGlobalID],
  "query": "xyz789",
  "sortDirection": "ASC",
  "sortKey": "CREATED_AT",
  "status": ["ALLOCATED"]
}
Response
{
  "data": {
    "searchCampaignOrders": {
      "queryArguments": "abc123",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

Mutations

campaignOrderCancel

Description

Cancels a campaign order.

Response

Returns a CampaignOrderCancelPayload

Arguments
Name Description
input - CampaignOrderCancelInput! Input for canceling the campaign order.

Example

Query
mutation campaignOrderCancel($input: CampaignOrderCancelInput!) {
  campaignOrderCancel(input: $input) {
    campaignOrder {
      ...CampaignOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CampaignOrderCancelInput}
Response
{
  "data": {
    "campaignOrderCancel": {
      "campaignOrder": CampaignOrder,
      "userErrors": [UserError]
    }
  }
}

campaignOrderCreate

Description

Creates a campaign order.

Response

Returns a CampaignOrderCreatePayload

Arguments
Name Description
input - CampaignOrderCreateInput! Input for creating a campaign order.

Example

Query
mutation campaignOrderCreate($input: CampaignOrderCreateInput!) {
  campaignOrderCreate(input: $input) {
    campaignOrder {
      ...CampaignOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CampaignOrderCreateInput}
Response
{
  "data": {
    "campaignOrderCreate": {
      "campaignOrder": CampaignOrder,
      "userErrors": [UserError]
    }
  }
}

campaignOrderDecreaseQuantity

Description

Decreases quantity on a campaign order.

Arguments
Name Description
input - CampaignOrderDecreaseQuantityInput! Input for updating the campaign order.

Example

Query
mutation campaignOrderDecreaseQuantity($input: CampaignOrderDecreaseQuantityInput!) {
  campaignOrderDecreaseQuantity(input: $input) {
    campaignOrder {
      ...CampaignOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CampaignOrderDecreaseQuantityInput}
Response
{
  "data": {
    "campaignOrderDecreaseQuantity": {
      "campaignOrder": CampaignOrder,
      "userErrors": [UserError]
    }
  }
}

Objects

CampaignOrder

Description

The order of a Campaign Order Group

Fields
Field Name Description
allocatedQuantity - Int! The allocated quantity.
campaign - Campaign! The parent campaign.
campaignInventoryItem - CampaignInventoryItem The inventory item.
campaignItem - CampaignItem The campaign item.
campaignOrderGroup - CampaignOrderGroup! The campaign order's group.
cancelReason - String The reason for cancellation.
cancelledBy - Persona The originator of the cancellation.
customer - Customer! The campaign order's customer.
financials - CampaignOrderFinancials
fulfilmentStatus - CampaignOrderFulfilmentStatus! The fulfilment status of the order
id - GlobalID! The ID of the campaign order
identifier - String! The campaign order's identifier
milestones - CampaignOrderMilestones
originalQuantity - Int! Original quantity of product in this order
paymentIntent - PaymentIntent The payment intent of the campaign order.
paymentMethod - PaymentMethod The payment method of the campaign order.
paymentStatus - CampaignOrderPaymentStatus The payment status of the campaign order.
product - Product! The product
productVariant - ProductVariant! The product variant
quantity - Int! Quantity of product in this order
sequentialId - Int! The ordered ID of the campaign order.
status - CampaignOrderStatus! The status of the campaign order.
Example
{
  "allocatedQuantity": 987,
  "campaign": CrowdfundingCampaign,
  "campaignInventoryItem": CampaignInventoryItem,
  "campaignItem": CampaignItem,
  "campaignOrderGroup": CampaignOrderGroup,
  "cancelReason": "abc123",
  "cancelledBy": "CUSTOMER",
  "customer": Customer,
  "financials": CampaignOrderFinancials,
  "fulfilmentStatus": "ALLOCATED",
  "id": GlobalID,
  "identifier": "xyz789",
  "milestones": CampaignOrderMilestones,
  "originalQuantity": 123,
  "paymentIntent": PaymentIntent,
  "paymentMethod": PaymentMethod,
  "paymentStatus": "FAILED",
  "product": Product,
  "productVariant": ProductVariant,
  "quantity": 987,
  "sequentialId": 987,
  "status": "ALLOCATED"
}

PaginationResult

Description

The previous and next objects in a connection.

Fields
Field Name Description
queryArguments - String! The query arguments as a JSON string
nextCampaignOrders - CampaignOrderConnection The next campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

nextCrowdfundingCampaigns - CrowdfundingCampaignConnection The next crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

nextPresaleCampaigns - PresaleCampaignConnection The next presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousCampaignOrders - CampaignOrderConnection The previous campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousCrowdfundingCampaigns - CrowdfundingCampaignConnection The previous crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousPresaleCampaigns - PresaleCampaignConnection The previous presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

nextSubscriptionOrders - SubscriptionOrderConnection The next subscription orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

nextSubscriptionPlanGroups - SubscriptionPlanGroupConnection The next subscription plan groups
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

nextSubscriptions - SubscriptionConnection The next subscriptions
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousSubscriptionOrders - SubscriptionOrderConnection The previous subscription orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousSubscriptionPlanGroups - SubscriptionPlanGroupConnection The previous subscription plan groups
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

previousSubscriptions - SubscriptionConnection The previous subscriptions
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

Example
{
  "queryArguments": "xyz789",
  "nextCampaignOrders": CampaignOrderConnection,
  "nextCrowdfundingCampaigns": CrowdfundingCampaignConnection,
  "nextPresaleCampaigns": PresaleCampaignConnection,
  "previousCampaignOrders": CampaignOrderConnection,
  "previousCrowdfundingCampaigns": CrowdfundingCampaignConnection,
  "previousPresaleCampaigns": PresaleCampaignConnection,
  "nextSubscriptionOrders": SubscriptionOrderConnection,
  "nextSubscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "nextSubscriptions": SubscriptionConnection,
  "previousSubscriptionOrders": SubscriptionOrderConnection,
  "previousSubscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "previousSubscriptions": SubscriptionConnection
}

SearchResult

Description

A search result.

Fields
Field Name Description
queryArguments - String! The query arguments as a JSON string
campaignOrders - CampaignOrderConnection The matching campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

crowdfundingCampaigns - CrowdfundingCampaignConnection The matching crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

presaleCampaigns - PresaleCampaignConnection The matching presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionOrders - SubscriptionOrderConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionPlanGroups - SubscriptionPlanGroupConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptions - SubscriptionConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

Example
{
  "queryArguments": "abc123",
  "campaignOrders": CampaignOrderConnection,
  "crowdfundingCampaigns": CrowdfundingCampaignConnection,
  "presaleCampaigns": PresaleCampaignConnection,
  "subscriptionOrders": SubscriptionOrderConnection,
  "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "subscriptions": SubscriptionConnection
}

Campaign Order Groups

Queries

campaignOrderGroup

Description

Find an campaign order group by ID

Response

Returns a CampaignOrderGroup

Arguments
Name Description
id - SharedGlobalID! The campaign order group's ID

Example

Query
query campaignOrderGroup($id: SharedGlobalID!) {
  campaignOrderGroup(id: $id) {
    campaignOrders {
      ...CampaignOrderFragment
    }
    customer {
      ...CustomerFragment
    }
    externalId
    financials {
      ...CampaignOrderGroupFinancialsFragment
    }
    id
    identifier
    lineItemsCount
    milestones {
      ...CampaignOrderGroupMilestonesFragment
    }
    paymentIntent {
      ...PaymentIntentFragment
    }
    paymentMethod {
      ...PaymentMethodFragment
    }
    paymentStatus
    status
  }
}
Variables
{"id": SharedGlobalID}
Response
{
  "data": {
    "campaignOrderGroup": {
      "campaignOrders": [CampaignOrder],
      "customer": Customer,
      "externalId": "xyz789",
      "financials": CampaignOrderGroupFinancials,
      "id": GlobalID,
      "identifier": "xyz789",
      "lineItemsCount": 987,
      "milestones": CampaignOrderGroupMilestones,
      "paymentIntent": PaymentIntent,
      "paymentMethod": PaymentMethod,
      "paymentStatus": "FAILED",
      "status": "ALLOCATED"
    }
  }
}

campaignOrderGroups

Description

List all campaign order groups

Response

Returns a CampaignOrderGroupConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query campaignOrderGroups(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  campaignOrderGroups(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...CampaignOrderGroupEdgeFragment
    }
    nodes {
      ...CampaignOrderGroupFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 123
}
Response
{
  "data": {
    "campaignOrderGroups": {
      "edges": [CampaignOrderGroupEdge],
      "nodes": [CampaignOrderGroup],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

Mutations

campaignOrderGroupCancel

Description

Cancels a campaign order group.

Response

Returns a CampaignOrderGroupCancelPayload

Arguments
Name Description
input - CampaignOrderGroupCancelInput! Input for canceling the campaign order group.

Example

Query
mutation campaignOrderGroupCancel($input: CampaignOrderGroupCancelInput!) {
  campaignOrderGroupCancel(input: $input) {
    campaignOrderGroup {
      ...CampaignOrderGroupFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CampaignOrderGroupCancelInput}
Response
{
  "data": {
    "campaignOrderGroupCancel": {
      "campaignOrderGroup": CampaignOrderGroup,
      "userErrors": [UserError]
    }
  }
}

Objects

CampaignOrderGroup

Description

The group of orders by a customer for a Campaign

Fields
Field Name Description
campaignOrders - [CampaignOrder!]! The campaign order group's orders.
customer - Customer! The campaign order group's customer.
externalId - String! The campaign order group's external ID.
financials - CampaignOrderGroupFinancials
id - GlobalID! The id of the campaign order group
identifier - String! The campaign order group's identifier
lineItemsCount - Int The campaign order group's total count of line items.
milestones - CampaignOrderGroupMilestones
paymentIntent - PaymentIntent The payment intent of the campaign order group.
paymentMethod - PaymentMethod The payment method of the campaign order group.
paymentStatus - CampaignOrderPaymentStatus The payment status of the campaign order group.
status - CampaignOrderGroupStatus! The status of the campaign order group.
Example
{
  "campaignOrders": [CampaignOrder],
  "customer": Customer,
  "externalId": "xyz789",
  "financials": CampaignOrderGroupFinancials,
  "id": GlobalID,
  "identifier": "xyz789",
  "lineItemsCount": 987,
  "milestones": CampaignOrderGroupMilestones,
  "paymentIntent": PaymentIntent,
  "paymentMethod": PaymentMethod,
  "paymentStatus": "FAILED",
  "status": "ALLOCATED"
}

Crowdfunding Campaign

Queries

crowdfundingCampaign

Description

Find a crowdfunding campaign by ID

Response

Returns a CrowdfundingCampaign

Arguments
Name Description
id - GlobalID! The crowdfunding campaign's ID.

Example

Query
query crowdfundingCampaign($id: GlobalID!) {
  crowdfundingCampaign(id: $id) {
    activeCampaignOrdersCount
    allocatedInventoryCount
    allocationStatus
    appliedInventoryCount
    archivedAt
    campaignEndTotalUnits
    campaignEndTotalValue {
      ...MoneyFragment
    }
    campaignInventoryItems {
      ...CampaignInventoryItemFragment
    }
    campaignItemType
    campaignItems {
      ...CampaignItemFragment
    }
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    campaignOrdersCount
    campaignRunningTotalUnits
    campaignRunningTotalValue {
      ...MoneyFragment
    }
    cancelledAt
    channel {
      ...ChannelFragment
    }
    completedAt
    createdAt
    currency
    description
    dueAt
    endAt
    endedAt
    fulfilAt
    fulfillingAt
    goal {
      ... on TotalUnitsCrowdfundingGoal {
        ...TotalUnitsCrowdfundingGoalFragment
      }
      ... on TotalValueCrowdfundingGoal {
        ...TotalValueCrowdfundingGoalFragment
      }
    }
    goalProgress
    goalStatus
    gracePeriodHours
    id
    identifier
    inventoryApplications {
      ...InventoryApplicationFragment
    }
    launchAt
    launchedAt
    limit
    name
    productVariants {
      ...ProductVariantFragment
    }
    products {
      ...ProductFragment
    }
    reference
    reservedItemsCount
    sequentialId
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "crowdfundingCampaign": {
      "activeCampaignOrdersCount": 123,
      "allocatedInventoryCount": 987,
      "allocationStatus": "ALLOCATED",
      "appliedInventoryCount": 123,
      "archivedAt": ISO8601DateTime,
      "campaignEndTotalUnits": 987,
      "campaignEndTotalValue": Money,
      "campaignInventoryItems": [CampaignInventoryItem],
      "campaignItemType": "PRODUCT",
      "campaignItems": [CampaignItem],
      "campaignOrders": CampaignOrderConnection,
      "campaignOrdersCount": 123,
      "campaignRunningTotalUnits": 987,
      "campaignRunningTotalValue": Money,
      "cancelledAt": ISO8601DateTime,
      "channel": Channel,
      "completedAt": ISO8601DateTime,
      "createdAt": ISO8601DateTime,
      "currency": "AED",
      "description": "xyz789",
      "dueAt": ISO8601DateTime,
      "endAt": ISO8601DateTime,
      "endedAt": ISO8601DateTime,
      "fulfilAt": ISO8601DateTime,
      "fulfillingAt": ISO8601DateTime,
      "goal": TotalUnitsCrowdfundingGoal,
      "goalProgress": 123.45,
      "goalStatus": "FAILED",
      "gracePeriodHours": 987,
      "id": GlobalID,
      "identifier": "xyz789",
      "inventoryApplications": [InventoryApplication],
      "launchAt": ISO8601DateTime,
      "launchedAt": ISO8601DateTime,
      "limit": 123,
      "name": "xyz789",
      "productVariants": [ProductVariant],
      "products": [Product],
      "reference": "abc123",
      "reservedItemsCount": 123,
      "sequentialId": 123,
      "status": "CANCELLED",
      "updatedAt": ISO8601DateTime
    }
  }
}

crowdfundingCampaigns

Description

List all crowdfunding campaigns

Response

Returns a CrowdfundingCampaignConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query crowdfundingCampaigns(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  crowdfundingCampaigns(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...CrowdfundingCampaignEdgeFragment
    }
    nodes {
      ...CrowdfundingCampaignFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "crowdfundingCampaigns": {
      "edges": [CrowdfundingCampaignEdge],
      "nodes": [CrowdfundingCampaign],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

searchCrowdfundingCampaigns

Description

Search crowdfunding campaigns

Response

Returns a SearchResult

Arguments
Name Description
allocationStatus - [CampaignAllocationStatus!] The campaign's allocation status.
goalType - [CrowdfundingGoalType!] The campaign's goal type.
isAllocating - Boolean Whether the campaign is allocating.
isArchived - Boolean Whether the campaign is archived.
productIds - [SharedGlobalID!] Return campaigns containing any of these product IDs
productVariantIds - [SharedGlobalID!] Return campaigns containing any of these product variant IDs.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - CrowdfundingCampaignSortKey The key used to sort campaigns.
status - [CampaignStatus!] The campaign's status.

Example

Query
query searchCrowdfundingCampaigns(
  $allocationStatus: [CampaignAllocationStatus!],
  $goalType: [CrowdfundingGoalType!],
  $isAllocating: Boolean,
  $isArchived: Boolean,
  $productIds: [SharedGlobalID!],
  $productVariantIds: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: CrowdfundingCampaignSortKey,
  $status: [CampaignStatus!]
) {
  searchCrowdfundingCampaigns(
    allocationStatus: $allocationStatus,
    goalType: $goalType,
    isAllocating: $isAllocating,
    isArchived: $isArchived,
    productIds: $productIds,
    productVariantIds: $productVariantIds,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "allocationStatus": ["ALLOCATED"],
  "goalType": ["TOTAL_UNITS"],
  "isAllocating": false,
  "isArchived": true,
  "productIds": [SharedGlobalID],
  "productVariantIds": [SharedGlobalID],
  "query": "abc123",
  "sortDirection": "ASC",
  "sortKey": "COMPLETED_AT",
  "status": ["CANCELLED"]
}
Response
{
  "data": {
    "searchCrowdfundingCampaigns": {
      "queryArguments": "abc123",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

Mutations

crowdfundingCampaignAddProductVariants

Description

Add product variants to an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignAddProductVariantsInput! Input for adding product variants to the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignAddProductVariants($input: CrowdfundingCampaignAddProductVariantsInput!) {
  crowdfundingCampaignAddProductVariants(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignAddProductVariantsInput}
Response
{
  "data": {
    "crowdfundingCampaignAddProductVariants": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignAddProducts

Description

Add products to an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignAddProductsInput! Input for adding products to the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignAddProducts($input: CrowdfundingCampaignAddProductsInput!) {
  crowdfundingCampaignAddProducts(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignAddProductsInput}
Response
{
  "data": {
    "crowdfundingCampaignAddProducts": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignApplyBulkInventory

Description

Apply bulk inventory to a crowdfunding campaign

Arguments
Name Description
input - CrowdfundingCampaignApplyBulkInventoryInput! Input for applying bulk inventory.

Example

Query
mutation crowdfundingCampaignApplyBulkInventory($input: CrowdfundingCampaignApplyBulkInventoryInput!) {
  crowdfundingCampaignApplyBulkInventory(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignApplyBulkInventoryInput}
Response
{
  "data": {
    "crowdfundingCampaignApplyBulkInventory": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignApplyInventory

Description

Apply inventory to a crowdfunding campaign

Arguments
Name Description
input - CrowdfundingCampaignApplyInventoryInput! Input for applying inventory.

Example

Query
mutation crowdfundingCampaignApplyInventory($input: CrowdfundingCampaignApplyInventoryInput!) {
  crowdfundingCampaignApplyInventory(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignApplyInventoryInput}
Response
{
  "data": {
    "crowdfundingCampaignApplyInventory": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignCancel

Description

Cancel an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignCancelInput! Input for Cancelling the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignCancel($input: CrowdfundingCampaignCancelInput!) {
  crowdfundingCampaignCancel(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignCancelInput}
Response
{
  "data": {
    "crowdfundingCampaignCancel": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignCreate

Description

Create a existing campaign.

Arguments
Name Description
input - CrowdfundingCampaignCreateInput! Input for creating a crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignCreate($input: CrowdfundingCampaignCreateInput!) {
  crowdfundingCampaignCreate(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignCreateInput}
Response
{
  "data": {
    "crowdfundingCampaignCreate": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignDelete

Description

Delete an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignDeleteInput! Input for deleting the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignDelete($input: CrowdfundingCampaignDeleteInput!) {
  crowdfundingCampaignDelete(input: $input) {
    deletedCrowdfundingCampaignId
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignDeleteInput}
Response
{
  "data": {
    "crowdfundingCampaignDelete": {
      "deletedCrowdfundingCampaignId": GlobalID,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignEnd

Description

End an existing campaign.

Response

Returns a CrowdfundingCampaignEndPayload

Arguments
Name Description
input - CrowdfundingCampaignEndInput! Input for ending the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignEnd($input: CrowdfundingCampaignEndInput!) {
  crowdfundingCampaignEnd(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignEndInput}
Response
{
  "data": {
    "crowdfundingCampaignEnd": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignFulfil

Description

Fulfil an existing campaign.

Arguments
Name Description
input - CrowdfundingCampaignFulfilInput! Input for fulfilling the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignFulfil($input: CrowdfundingCampaignFulfilInput!) {
  crowdfundingCampaignFulfil(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignFulfilInput}
Response
{
  "data": {
    "crowdfundingCampaignFulfil": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignLaunch

Description

Launch an existing campaign.

Arguments
Name Description
input - CrowdfundingCampaignLaunchInput! Input for launching the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignLaunch($input: CrowdfundingCampaignLaunchInput!) {
  crowdfundingCampaignLaunch(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignLaunchInput}
Response
{
  "data": {
    "crowdfundingCampaignLaunch": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignRemoveProductVariants

Description

Removes product variants from an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignRemoveProductVariantsInput! Input for removing product variants from the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignRemoveProductVariants($input: CrowdfundingCampaignRemoveProductVariantsInput!) {
  crowdfundingCampaignRemoveProductVariants(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignRemoveProductVariantsInput}
Response
{
  "data": {
    "crowdfundingCampaignRemoveProductVariants": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignRemoveProducts

Description

Removes products from an existing crowdfunding campaign.

Arguments
Name Description
input - CrowdfundingCampaignRemoveProductsInput! Input for removing products from the crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignRemoveProducts($input: CrowdfundingCampaignRemoveProductsInput!) {
  crowdfundingCampaignRemoveProducts(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignRemoveProductsInput}
Response
{
  "data": {
    "crowdfundingCampaignRemoveProducts": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

crowdfundingCampaignUpdate

Description

Update an existing campaign.

Arguments
Name Description
input - CrowdfundingCampaignUpdateInput! Input for updating a crowdfunding campaign.

Example

Query
mutation crowdfundingCampaignUpdate($input: CrowdfundingCampaignUpdateInput!) {
  crowdfundingCampaignUpdate(input: $input) {
    crowdfundingCampaign {
      ...CrowdfundingCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": CrowdfundingCampaignUpdateInput}
Response
{
  "data": {
    "crowdfundingCampaignUpdate": {
      "crowdfundingCampaign": CrowdfundingCampaign,
      "userErrors": [UserError]
    }
  }
}

Objects

CrowdfundingCampaign

Description

A Platform crowdfunding campaign

Fields
Field Name Description
activeCampaignOrdersCount - Int! The campaign's total count of active orders.
allocatedInventoryCount - Int! The campaign's count of inventory allocated.
allocationStatus - CampaignAllocationStatus! The allocation status of the campaign.
appliedInventoryCount - Int! The total amount of inventory currently applied to the campaign.
archivedAt - ISO8601DateTime The date the campaign was archived.
campaignEndTotalUnits - Int The campaign's total units when the campaign ends.
campaignEndTotalValue - Money The campaign's total value when the campaign ends.
campaignInventoryItems - [CampaignInventoryItem!]! The campaign's inventory items.
campaignItemType - CampaignItemType! The type of items in the campaign.
campaignItems - [CampaignItem!]! The campaign's items.
campaignOrders - CampaignOrderConnection! The campaign's orders.
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

campaignOrdersCount - Int! The campaign's total count of orders.
campaignRunningTotalUnits - Int The campaign's running total units.
campaignRunningTotalValue - Money The campaign's running total value.
cancelledAt - ISO8601DateTime The date the crowdfunding campaign was cancelled.
channel - Channel! The crowdfunding campaign's channel.
completedAt - ISO8601DateTime The date the crowdfunding campaign completed.
createdAt - ISO8601DateTime The date the crowdfunding campaign was created.
currency - CurrencyCode! The campaign currency.
description - String! The campaign description.
Arguments
interpolate - Boolean

Whether to replace the description's placeholders with actual values.

dueAt - ISO8601DateTime! The date the payment for the crowdfunding campaign is due.
endAt - ISO8601DateTime! The date the campaign will end
endedAt - ISO8601DateTime The date the crowdfunding campaign ended.
fulfilAt - ISO8601DateTime The date the campaign will be fulfilled
fulfillingAt - ISO8601DateTime The date the crowdfunding campaign started fulfilling.
goal - CrowdfundingGoal! The campaign's goal.
goalProgress - Float! The campaign's goal progress percentage.
goalStatus - CrowdfundingGoalStatus! The campaign's goal status.
gracePeriodHours - Int! The number of hours a customer has to rectify a failed campaign payment before their campaign order is cancelled.
id - GlobalID! The ID of the campaign
identifier - String! The identifier of the campaign.
inventoryApplications - [InventoryApplication!]! The campaign's inventory applications.
launchAt - ISO8601DateTime! The date the campaign will be launched
launchedAt - ISO8601DateTime The date the crowdfunding campaign launched.
limit - Int The maximum number of units of the linked products that can be sold
name - String! The name of the campaign.
Arguments
interpolate - Boolean

Whether to replace the name's placeholders with actual values.

productVariants - [ProductVariant!] The product IDs that are included in the campaign.
products - [Product!] The product IDs that are included in the campaign.
reference - String! The campaign reference.
reservedItemsCount - Int! The campaign's total count of reserved items.
sequentialId - Int! The ordered ID of the campaign.
status - CampaignStatus! The campaign's status (eg. active).
updatedAt - ISO8601DateTime The date the presale was last updated.
Example
{
  "activeCampaignOrdersCount": 123,
  "allocatedInventoryCount": 987,
  "allocationStatus": "ALLOCATED",
  "appliedInventoryCount": 987,
  "archivedAt": ISO8601DateTime,
  "campaignEndTotalUnits": 987,
  "campaignEndTotalValue": Money,
  "campaignInventoryItems": [CampaignInventoryItem],
  "campaignItemType": "PRODUCT",
  "campaignItems": [CampaignItem],
  "campaignOrders": CampaignOrderConnection,
  "campaignOrdersCount": 123,
  "campaignRunningTotalUnits": 123,
  "campaignRunningTotalValue": Money,
  "cancelledAt": ISO8601DateTime,
  "channel": Channel,
  "completedAt": ISO8601DateTime,
  "createdAt": ISO8601DateTime,
  "currency": "AED",
  "description": "abc123",
  "dueAt": ISO8601DateTime,
  "endAt": ISO8601DateTime,
  "endedAt": ISO8601DateTime,
  "fulfilAt": ISO8601DateTime,
  "fulfillingAt": ISO8601DateTime,
  "goal": TotalUnitsCrowdfundingGoal,
  "goalProgress": 123.45,
  "goalStatus": "FAILED",
  "gracePeriodHours": 123,
  "id": GlobalID,
  "identifier": "abc123",
  "inventoryApplications": [InventoryApplication],
  "launchAt": ISO8601DateTime,
  "launchedAt": ISO8601DateTime,
  "limit": 123,
  "name": "abc123",
  "productVariants": [ProductVariant],
  "products": [Product],
  "reference": "abc123",
  "reservedItemsCount": 123,
  "sequentialId": 123,
  "status": "CANCELLED",
  "updatedAt": ISO8601DateTime
}

SearchResult

Description

A search result.

Fields
Field Name Description
queryArguments - String! The query arguments as a JSON string
campaignOrders - CampaignOrderConnection The matching campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

crowdfundingCampaigns - CrowdfundingCampaignConnection The matching crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

presaleCampaigns - PresaleCampaignConnection The matching presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionOrders - SubscriptionOrderConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionPlanGroups - SubscriptionPlanGroupConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptions - SubscriptionConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

Example
{
  "queryArguments": "xyz789",
  "campaignOrders": CampaignOrderConnection,
  "crowdfundingCampaigns": CrowdfundingCampaignConnection,
  "presaleCampaigns": PresaleCampaignConnection,
  "subscriptionOrders": SubscriptionOrderConnection,
  "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "subscriptions": SubscriptionConnection
}

Presale Campaign

Queries

presaleCampaign

Description

Find a presale campaign by ID

Response

Returns a PresaleCampaign

Arguments
Name Description
id - GlobalID! The presale campaign's ID.

Example

Query
query presaleCampaign($id: GlobalID!) {
  presaleCampaign(id: $id) {
    activeCampaignOrdersCount
    allocatedInventoryCount
    allocationStatus
    appliedInventoryCount
    archivedAt
    campaignInventoryItems {
      ...CampaignInventoryItemFragment
    }
    campaignItemType
    campaignItems {
      ...CampaignItemFragment
    }
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    campaignOrdersCount
    cancelledAt
    channel {
      ...ChannelFragment
    }
    completedAt
    createdAt
    deposit {
      ...CampaignDepositFragment
    }
    description
    dueAt
    endAt
    endedAt
    fulfilAt
    fulfillingAt
    gracePeriodHours
    id
    identifier
    inventoryApplications {
      ...InventoryApplicationFragment
    }
    launchAt
    launchedAt
    limit
    name
    productVariants {
      ...ProductVariantFragment
    }
    products {
      ...ProductFragment
    }
    reference
    reservedItemsCount
    sequentialId
    status
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "presaleCampaign": {
      "activeCampaignOrdersCount": 123,
      "allocatedInventoryCount": 987,
      "allocationStatus": "ALLOCATED",
      "appliedInventoryCount": 123,
      "archivedAt": ISO8601DateTime,
      "campaignInventoryItems": [CampaignInventoryItem],
      "campaignItemType": "PRODUCT",
      "campaignItems": [CampaignItem],
      "campaignOrders": CampaignOrderConnection,
      "campaignOrdersCount": 123,
      "cancelledAt": ISO8601DateTime,
      "channel": Channel,
      "completedAt": ISO8601DateTime,
      "createdAt": ISO8601DateTime,
      "deposit": CampaignDeposit,
      "description": "You will be charged the remaining balance when the product is released.",
      "dueAt": ISO8601DateTime,
      "endAt": ISO8601DateTime,
      "endedAt": ISO8601DateTime,
      "fulfilAt": ISO8601DateTime,
      "fulfillingAt": ISO8601DateTime,
      "gracePeriodHours": 123,
      "id": GlobalID,
      "identifier": "xyz789",
      "inventoryApplications": [InventoryApplication],
      "launchAt": ISO8601DateTime,
      "launchedAt": ISO8601DateTime,
      "limit": 987,
      "name": "June Pre-order for Product.",
      "productVariants": [ProductVariant],
      "products": [Product],
      "reference": "Pre-order June Product #REF-021",
      "reservedItemsCount": 987,
      "sequentialId": 123,
      "status": "CANCELLED",
      "updatedAt": ISO8601DateTime
    }
  }
}

presaleCampaigns

Description

List all presale campaigns

Response

Returns a PresaleCampaignConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query presaleCampaigns(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  presaleCampaigns(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...PresaleCampaignEdgeFragment
    }
    nodes {
      ...PresaleCampaignFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 123
}
Response
{
  "data": {
    "presaleCampaigns": {
      "edges": [PresaleCampaignEdge],
      "nodes": [PresaleCampaign],
      "pageInfo": PageInfo,
      "totalCount": 123
    }
  }
}

searchPresaleCampaigns

Description

Search presale campaigns

Response

Returns a SearchResult

Arguments
Name Description
allocationStatus - [CampaignAllocationStatus!] The campaign's allocation status.
isAllocating - Boolean Whether the campaign is allocating.
isArchived - Boolean Whether the campaign is archived.
productIds - [SharedGlobalID!] Return campaigns containing any of these product IDs
productVariantIds - [SharedGlobalID!] Return campaigns containing any of these product variant IDs.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - PresaleCampaignSortKey The key used to sort campaigns.
status - [CampaignStatus!] The campaign's status.

Example

Query
query searchPresaleCampaigns(
  $allocationStatus: [CampaignAllocationStatus!],
  $isAllocating: Boolean,
  $isArchived: Boolean,
  $productIds: [SharedGlobalID!],
  $productVariantIds: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: PresaleCampaignSortKey,
  $status: [CampaignStatus!]
) {
  searchPresaleCampaigns(
    allocationStatus: $allocationStatus,
    isAllocating: $isAllocating,
    isArchived: $isArchived,
    productIds: $productIds,
    productVariantIds: $productVariantIds,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "allocationStatus": ["ALLOCATED"],
  "isAllocating": false,
  "isArchived": false,
  "productIds": [SharedGlobalID],
  "productVariantIds": [SharedGlobalID],
  "query": "xyz789",
  "sortDirection": "ASC",
  "sortKey": "COMPLETED_AT",
  "status": ["CANCELLED"]
}
Response
{
  "data": {
    "searchPresaleCampaigns": {
      "queryArguments": "xyz789",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

Mutations

presaleCampaignAddProductVariants

Description

Add product variants to an existing campaign.

Arguments
Name Description
input - PresaleCampaignAddProductVariantsInput! Input for adding product variants to the presale campaign.

Example

Query
mutation presaleCampaignAddProductVariants($input: PresaleCampaignAddProductVariantsInput!) {
  presaleCampaignAddProductVariants(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignAddProductVariantsInput}
Response
{
  "data": {
    "presaleCampaignAddProductVariants": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignAddProducts

Description

Add products to an existing campaign.

Arguments
Name Description
input - PresaleCampaignAddProductsInput! Input for adding products to the presale campaign.

Example

Query
mutation presaleCampaignAddProducts($input: PresaleCampaignAddProductsInput!) {
  presaleCampaignAddProducts(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignAddProductsInput}
Response
{
  "data": {
    "presaleCampaignAddProducts": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignApplyBulkInventory

Description

Apply bulk inventory to a presale campaign

Arguments
Name Description
input - PresaleCampaignApplyBulkInventoryInput! Input for applying bulk inventory.

Example

Query
mutation presaleCampaignApplyBulkInventory($input: PresaleCampaignApplyBulkInventoryInput!) {
  presaleCampaignApplyBulkInventory(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignApplyBulkInventoryInput}
Response
{
  "data": {
    "presaleCampaignApplyBulkInventory": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignApplyInventory

Description

Apply inventory to a presale campaign

Arguments
Name Description
input - PresaleCampaignApplyInventoryInput! Input for applying inventory.

Example

Query
mutation presaleCampaignApplyInventory($input: PresaleCampaignApplyInventoryInput!) {
  presaleCampaignApplyInventory(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignApplyInventoryInput}
Response
{
  "data": {
    "presaleCampaignApplyInventory": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignCancel

Description

Cancel an existing presale campaign.

Response

Returns a PresaleCampaignCancelPayload

Arguments
Name Description
input - PresaleCampaignCancelInput! Input for cancelling the presale campaign.

Example

Query
mutation presaleCampaignCancel($input: PresaleCampaignCancelInput!) {
  presaleCampaignCancel(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignCancelInput}
Response
{
  "data": {
    "presaleCampaignCancel": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignCreate

Description

Create a new presale campaign.

Response

Returns a PresaleCampaignCreatePayload

Arguments
Name Description
input - PresaleCampaignCreateInput! Input for creating a presale campaign.

Example

Query
mutation presaleCampaignCreate($input: PresaleCampaignCreateInput!) {
  presaleCampaignCreate(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignCreateInput}
Response
{
  "data": {
    "presaleCampaignCreate": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignDelete

Description

Delete an existing presale campaign.

Response

Returns a PresaleCampaignDeletePayload

Arguments
Name Description
input - PresaleCampaignDeleteInput! Input for deleting the presale campaign.

Example

Query
mutation presaleCampaignDelete($input: PresaleCampaignDeleteInput!) {
  presaleCampaignDelete(input: $input) {
    deletedPresaleCampaignId
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignDeleteInput}
Response
{
  "data": {
    "presaleCampaignDelete": {
      "deletedPresaleCampaignId": GlobalID,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignEnd

Description

End an existing campaign.

Response

Returns a PresaleCampaignEndPayload

Arguments
Name Description
input - PresaleCampaignEndInput! Input for ending the presale campaign.

Example

Query
mutation presaleCampaignEnd($input: PresaleCampaignEndInput!) {
  presaleCampaignEnd(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignEndInput}
Response
{
  "data": {
    "presaleCampaignEnd": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignFulfil

Description

Fulfil an existing campaign.

Response

Returns a PresaleCampaignFulfilPayload

Arguments
Name Description
input - PresaleCampaignFulfilInput! Input for fulfilling the presale campaign.

Example

Query
mutation presaleCampaignFulfil($input: PresaleCampaignFulfilInput!) {
  presaleCampaignFulfil(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignFulfilInput}
Response
{
  "data": {
    "presaleCampaignFulfil": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignLaunch

Description

Launch an existing campaign.

Response

Returns a PresaleCampaignLaunchPayload

Arguments
Name Description
input - PresaleCampaignLaunchInput! Input for launching the presale campaign.

Example

Query
mutation presaleCampaignLaunch($input: PresaleCampaignLaunchInput!) {
  presaleCampaignLaunch(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignLaunchInput}
Response
{
  "data": {
    "presaleCampaignLaunch": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignRemoveProductVariants

Description

Remove product variants from presale campaign

Arguments
Name Description
input - PresaleCampaignRemoveProductVariantsInput! Input for removing product variants from the presale campaign.

Example

Query
mutation presaleCampaignRemoveProductVariants($input: PresaleCampaignRemoveProductVariantsInput!) {
  presaleCampaignRemoveProductVariants(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignRemoveProductVariantsInput}
Response
{
  "data": {
    "presaleCampaignRemoveProductVariants": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignRemoveProducts

Description

Remove products from presale campaign

Arguments
Name Description
input - PresaleCampaignRemoveProductsInput! Input for removing products from the presale campaign.

Example

Query
mutation presaleCampaignRemoveProducts($input: PresaleCampaignRemoveProductsInput!) {
  presaleCampaignRemoveProducts(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignRemoveProductsInput}
Response
{
  "data": {
    "presaleCampaignRemoveProducts": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

presaleCampaignUpdate

Description

Update a new presale campaign.

Response

Returns a PresaleCampaignUpdatePayload

Arguments
Name Description
input - PresaleCampaignUpdateInput! Input for updating the presale campaign.

Example

Query
mutation presaleCampaignUpdate($input: PresaleCampaignUpdateInput!) {
  presaleCampaignUpdate(input: $input) {
    presaleCampaign {
      ...PresaleCampaignFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": PresaleCampaignUpdateInput}
Response
{
  "data": {
    "presaleCampaignUpdate": {
      "presaleCampaign": PresaleCampaign,
      "userErrors": [UserError]
    }
  }
}

Objects

PresaleCampaign

Description

A Platform campaign of type Presale.

Fields
Field Name Description
activeCampaignOrdersCount - Int! The campaign's total count of active orders.
allocatedInventoryCount - Int! The campaign's count of inventory allocated.
allocationStatus - CampaignAllocationStatus! The allocation status of the campaign.
appliedInventoryCount - Int! The total amount of inventory currently applied to the campaign.
archivedAt - ISO8601DateTime The date the campaign was archived.
campaignInventoryItems - [CampaignInventoryItem!]! The campaign's inventory items.
campaignItemType - CampaignItemType! The type of items in the campaign.
campaignItems - [CampaignItem!]! The campaign's items.
campaignOrders - CampaignOrderConnection! The campaign's orders.
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

campaignOrdersCount - Int! The campaign's total count of orders.
cancelledAt - ISO8601DateTime The date the presale was cancelled.
channel - Channel! The presale campaign's channel.
completedAt - ISO8601DateTime The date the presale completed.
createdAt - ISO8601DateTime The date the presale created.
deposit - CampaignDeposit The amount to be collected at checkout.
description - String! The campaign description.
Arguments
interpolate - Boolean

Whether to replace the description's placeholders with actual values.

dueAt - ISO8601DateTime! The date the payment for the presale is due.
endAt - ISO8601DateTime! The date the presale will end.
endedAt - ISO8601DateTime The date the presale ended.
fulfilAt - ISO8601DateTime The date the presale will be fulfilled.
fulfillingAt - ISO8601DateTime The date the presale started fulfilling.
gracePeriodHours - Int! The number of hours a customer has to rectify a failed presale campaign payment before their campaign order is cancelled.
id - GlobalID! The ID of the campaign.
identifier - String! The identifier of the campaign.
inventoryApplications - [InventoryApplication!]! The campaign's inventory applications.
launchAt - ISO8601DateTime! The date the presale will be launched.
launchedAt - ISO8601DateTime The date the presale launched.
limit - Int! The maximum number of units of the linked products that can be sold.
name - String! The name of the campaign.
Arguments
interpolate - Boolean

Whether to replace the name's placeholders with actual values.

productVariants - [ProductVariant!] The product IDs that are included in the campaign.
products - [Product!] The product IDs that are included in the campaign.
reference - String! The campaign reference.
reservedItemsCount - Int! The campaign's total count of reserved items.
sequentialId - Int! The ordered ID of the campaign.
status - CampaignStatus! The campaign's status.
updatedAt - ISO8601DateTime The date the presale was last updated.
Example
{
  "activeCampaignOrdersCount": 123,
  "allocatedInventoryCount": 987,
  "allocationStatus": "ALLOCATED",
  "appliedInventoryCount": 123,
  "archivedAt": ISO8601DateTime,
  "campaignInventoryItems": [CampaignInventoryItem],
  "campaignItemType": "PRODUCT",
  "campaignItems": [CampaignItem],
  "campaignOrders": CampaignOrderConnection,
  "campaignOrdersCount": 987,
  "cancelledAt": ISO8601DateTime,
  "channel": Channel,
  "completedAt": ISO8601DateTime,
  "createdAt": ISO8601DateTime,
  "deposit": CampaignDeposit,
  "description": "You will be charged the remaining balance when the product is released.",
  "dueAt": ISO8601DateTime,
  "endAt": ISO8601DateTime,
  "endedAt": ISO8601DateTime,
  "fulfilAt": ISO8601DateTime,
  "fulfillingAt": ISO8601DateTime,
  "gracePeriodHours": 123,
  "id": GlobalID,
  "identifier": "abc123",
  "inventoryApplications": [InventoryApplication],
  "launchAt": ISO8601DateTime,
  "launchedAt": ISO8601DateTime,
  "limit": 987,
  "name": "June Pre-order for Product.",
  "productVariants": [ProductVariant],
  "products": [Product],
  "reference": "Pre-order June Product #REF-021",
  "reservedItemsCount": 987,
  "sequentialId": 123,
  "status": "CANCELLED",
  "updatedAt": ISO8601DateTime
}

SearchResult

Description

A search result.

Fields
Field Name Description
queryArguments - String! The query arguments as a JSON string
campaignOrders - CampaignOrderConnection The matching campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

crowdfundingCampaigns - CrowdfundingCampaignConnection The matching crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

presaleCampaigns - PresaleCampaignConnection The matching presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionOrders - SubscriptionOrderConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionPlanGroups - SubscriptionPlanGroupConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptions - SubscriptionConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

Example
{
  "queryArguments": "xyz789",
  "campaignOrders": CampaignOrderConnection,
  "crowdfundingCampaigns": CrowdfundingCampaignConnection,
  "presaleCampaigns": PresaleCampaignConnection,
  "subscriptionOrders": SubscriptionOrderConnection,
  "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "subscriptions": SubscriptionConnection
}

Subscription Planning

Queries

subscriptionPlanGroup

Description

Find an subscription plan group by ID.

Response

Returns a SubscriptionPlanGroup

Arguments
Name Description
id - GlobalID! The subscription plan group's ID.

Example

Query
query subscriptionPlanGroup($id: GlobalID!) {
  subscriptionPlanGroup(id: $id) {
    billingBehaviour {
      ...SubscriptionBillingBehaviourFragment
    }
    channel {
      ...ChannelFragment
    }
    createdAt
    deliveryBehaviour {
      ...SubscriptionDeliveryBehaviourFragment
    }
    id
    identifier
    inventoryBehaviour {
      ...SubscriptionInventoryBehaviourFragment
    }
    name
    pricingBehaviour {
      ...SubscriptionPricingBehaviourFragment
    }
    productGroup {
      ...SubscriptionProductGroupFragment
    }
    reference
    status
    subscriptionPlans {
      ...SubscriptionPlanFragment
    }
    subscriptionPlansCount
    subscriptionsCount
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "subscriptionPlanGroup": {
      "billingBehaviour": SubscriptionBillingBehaviour,
      "channel": Channel,
      "createdAt": ISO8601DateTime,
      "deliveryBehaviour": SubscriptionDeliveryBehaviour,
      "id": GlobalID,
      "identifier": "xyz789",
      "inventoryBehaviour": SubscriptionInventoryBehaviour,
      "name": "xyz789",
      "pricingBehaviour": SubscriptionPricingBehaviour,
      "productGroup": SubscriptionProductGroup,
      "reference": "abc123",
      "status": "ACTIVE",
      "subscriptionPlans": [SubscriptionPlan],
      "subscriptionPlansCount": Count,
      "subscriptionsCount": Count,
      "updatedAt": ISO8601DateTime
    }
  }
}

subscriptionPlanGroups

Description

List all subscription plan groups.

Response

Returns a SubscriptionPlanGroupConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query subscriptionPlanGroups(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  subscriptionPlanGroups(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...SubscriptionPlanGroupEdgeFragment
    }
    nodes {
      ...SubscriptionPlanGroupFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "xyz789",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "subscriptionPlanGroups": {
      "edges": [SubscriptionPlanGroupEdge],
      "nodes": [SubscriptionPlanGroup],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

subscriptionPlanGroupCreate

Description

Creates a subscription plan group.

Arguments
Name Description
input - SubscriptionPlanGroupCreateInput! Input for creating a subscription plan group.

Example

Query
mutation subscriptionPlanGroupCreate($input: SubscriptionPlanGroupCreateInput!) {
  subscriptionPlanGroupCreate(input: $input) {
    subscriptionPlanGroup {
      ...SubscriptionPlanGroupFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionPlanGroupCreateInput}
Response
{
  "data": {
    "subscriptionPlanGroupCreate": {
      "subscriptionPlanGroup": SubscriptionPlanGroup,
      "userErrors": [UserError]
    }
  }
}

Objects

SubscriptionPlanGroup

Fields
Field Name Description
billingBehaviour - SubscriptionBillingBehaviour!
channel - Channel! The subscription plan group's channel.
createdAt - ISO8601DateTime The date the subscription plan group was created.
deliveryBehaviour - SubscriptionDeliveryBehaviour!
id - GlobalID! The ID of the subscription plan group
identifier - String!
inventoryBehaviour - SubscriptionInventoryBehaviour!
name - String! The name of the subscription plan group.
pricingBehaviour - SubscriptionPricingBehaviour!
productGroup - SubscriptionProductGroup!
reference - String! The subscription plan group reference.
status - SubscriptionPlanGroupStatus! The subscription plan group's status.
subscriptionPlans - [SubscriptionPlan!]!
subscriptionPlansCount - Count!
subscriptionsCount - Count!
updatedAt - ISO8601DateTime The date the subscription plan group was last updated.
Example
{
  "billingBehaviour": SubscriptionBillingBehaviour,
  "channel": Channel,
  "createdAt": ISO8601DateTime,
  "deliveryBehaviour": SubscriptionDeliveryBehaviour,
  "id": GlobalID,
  "identifier": "abc123",
  "inventoryBehaviour": SubscriptionInventoryBehaviour,
  "name": "abc123",
  "pricingBehaviour": SubscriptionPricingBehaviour,
  "productGroup": SubscriptionProductGroup,
  "reference": "abc123",
  "status": "ACTIVE",
  "subscriptionPlans": [SubscriptionPlan],
  "subscriptionPlansCount": Count,
  "subscriptionsCount": Count,
  "updatedAt": ISO8601DateTime
}

Subscriptions

Queries

searchSubscriptionOrders

Description

Search subscriptions

Response

Returns a SearchResult

Arguments
Name Description
customerIds - [SharedGlobalID!]
paymentStatus - [SubscriptionOrderPaymentStatus!]
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - SubscriptionOrderSortKey
status - [SubscriptionOrderStatus!] The subscription order's status.
subscriptionId - GlobalID
subscriptionPlanId - GlobalID

Example

Query
query searchSubscriptionOrders(
  $customerIds: [SharedGlobalID!],
  $paymentStatus: [SubscriptionOrderPaymentStatus!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: SubscriptionOrderSortKey,
  $status: [SubscriptionOrderStatus!],
  $subscriptionId: GlobalID,
  $subscriptionPlanId: GlobalID
) {
  searchSubscriptionOrders(
    customerIds: $customerIds,
    paymentStatus: $paymentStatus,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status,
    subscriptionId: $subscriptionId,
    subscriptionPlanId: $subscriptionPlanId
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "customerIds": [SharedGlobalID],
  "paymentStatus": ["FAILED"],
  "query": "abc123",
  "sortDirection": "ASC",
  "sortKey": "CYCLE_INDEX",
  "status": ["CANCELLED"],
  "subscriptionId": GlobalID,
  "subscriptionPlanId": GlobalID
}
Response
{
  "data": {
    "searchSubscriptionOrders": {
      "queryArguments": "abc123",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

searchSubscriptionPlanGroups

Description

Search subscription plan groups

Response

Returns a SearchResult

Arguments
Name Description
productIds - [SharedGlobalID!] Return only subscription plan groups for these variants.
productVariantIds - [SharedGlobalID!] Return only subscription plan groups for these variants.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - SubscriptionPlanGroupSortKey
status - [SubscriptionPlanGroupStatus!] The subscription plan group's status.

Example

Query
query searchSubscriptionPlanGroups(
  $productIds: [SharedGlobalID!],
  $productVariantIds: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: SubscriptionPlanGroupSortKey,
  $status: [SubscriptionPlanGroupStatus!]
) {
  searchSubscriptionPlanGroups(
    productIds: $productIds,
    productVariantIds: $productVariantIds,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "productIds": [SharedGlobalID],
  "productVariantIds": [SharedGlobalID],
  "query": "xyz789",
  "sortDirection": "ASC",
  "sortKey": "CREATED_AT",
  "status": ["ACTIVE"]
}
Response
{
  "data": {
    "searchSubscriptionPlanGroups": {
      "queryArguments": "xyz789",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

searchSubscriptions

Description

Search subscriptions

Response

Returns a SearchResult

Arguments
Name Description
customerIds - [SharedGlobalID!] Return only subscriptions belonging to these customers.
query - String A query string.
sortDirection - SortDirection The sort direction.
sortKey - SubscriptionSortKey
status - [SubscriptionStatus!] The subscription's status.
subscriptionPlanId - GlobalID Return only subscriptions belonging to this subscription plan.

Example

Query
query searchSubscriptions(
  $customerIds: [SharedGlobalID!],
  $query: String,
  $sortDirection: SortDirection,
  $sortKey: SubscriptionSortKey,
  $status: [SubscriptionStatus!],
  $subscriptionPlanId: GlobalID
) {
  searchSubscriptions(
    customerIds: $customerIds,
    query: $query,
    sortDirection: $sortDirection,
    sortKey: $sortKey,
    status: $status,
    subscriptionPlanId: $subscriptionPlanId
  ) {
    queryArguments
    campaignOrders {
      ...CampaignOrderConnectionFragment
    }
    crowdfundingCampaigns {
      ...CrowdfundingCampaignConnectionFragment
    }
    presaleCampaigns {
      ...PresaleCampaignConnectionFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlanGroups {
      ...SubscriptionPlanGroupConnectionFragment
    }
    subscriptions {
      ...SubscriptionConnectionFragment
    }
  }
}
Variables
{
  "customerIds": [SharedGlobalID],
  "query": "abc123",
  "sortDirection": "ASC",
  "sortKey": "CREATED_AT",
  "status": ["ACTIVE"],
  "subscriptionPlanId": GlobalID
}
Response
{
  "data": {
    "searchSubscriptions": {
      "queryArguments": "abc123",
      "campaignOrders": CampaignOrderConnection,
      "crowdfundingCampaigns": CrowdfundingCampaignConnection,
      "presaleCampaigns": PresaleCampaignConnection,
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
      "subscriptions": SubscriptionConnection
    }
  }
}

subscription

Description

Find a subscription by ID.

Response

Returns a Subscription

Arguments
Name Description
id - GlobalID! The subscription's ID.

Example

Query
query subscription($id: GlobalID!) {
  subscription(id: $id) {
    availableSubscriptionPlans {
      ...SubscriptionPlanFragment
    }
    billingBehaviour {
      ...SubscriptionBillingBehaviourFragment
    }
    cancelledAt
    channel {
      ...ChannelFragment
    }
    createdAt
    currency
    customer {
      ...CustomerFragment
    }
    deliveryBehaviour {
      ...SubscriptionDeliveryBehaviourFragment
    }
    deliveryMethod {
      ...SubscriptionDeliveryMethodFragment
    }
    externalId
    id
    identifier
    inventoryBehaviour {
      ...SubscriptionInventoryBehaviourFragment
    }
    lastProcessedOrder {
      ...SubscriptionOrderFragment
    }
    nextBillingAt
    nextDeliveryAt
    nextScheduledOrder {
      ...SubscriptionOrderFragment
    }
    order {
      ...OrderFragment
    }
    paymentMethod {
      ...PaymentMethodFragment
    }
    pricingBehaviour {
      ...SubscriptionPricingBehaviourFragment
    }
    processedSubscriptionOrdersCount
    source
    status
    subscriptionGroup {
      ...SubscriptionGroupFragment
    }
    subscriptionItems {
      ...SubscriptionItemFragment
    }
    subscriptionOrders {
      ...SubscriptionOrderConnectionFragment
    }
    subscriptionPlan {
      ...SubscriptionPlanFragment
    }
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "subscription": {
      "availableSubscriptionPlans": [SubscriptionPlan],
      "billingBehaviour": SubscriptionBillingBehaviour,
      "cancelledAt": ISO8601DateTime,
      "channel": Channel,
      "createdAt": ISO8601DateTime,
      "currency": "AED",
      "customer": Customer,
      "deliveryBehaviour": SubscriptionDeliveryBehaviour,
      "deliveryMethod": SubscriptionDeliveryMethod,
      "externalId": "abc123",
      "id": GlobalID,
      "identifier": "xyz789",
      "inventoryBehaviour": SubscriptionInventoryBehaviour,
      "lastProcessedOrder": SubscriptionOrder,
      "nextBillingAt": ISO8601DateTime,
      "nextDeliveryAt": ISO8601DateTime,
      "nextScheduledOrder": SubscriptionOrder,
      "order": Order,
      "paymentMethod": PaymentMethod,
      "pricingBehaviour": SubscriptionPricingBehaviour,
      "processedSubscriptionOrdersCount": 123,
      "source": "API",
      "status": "ACTIVE",
      "subscriptionGroup": SubscriptionGroup,
      "subscriptionItems": [SubscriptionItem],
      "subscriptionOrders": SubscriptionOrderConnection,
      "subscriptionPlan": SubscriptionPlan,
      "updatedAt": ISO8601DateTime
    }
  }
}

subscriptionGroup

Description

Find a subscription group by ID.

Response

Returns a SubscriptionGroup

Arguments
Name Description
id - GlobalID! The subscription group's ID.

Example

Query
query subscriptionGroup($id: GlobalID!) {
  subscriptionGroup(id: $id) {
    createdAt
    id
    identifier
    subscriptions {
      ...SubscriptionFragment
    }
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "subscriptionGroup": {
      "createdAt": ISO8601DateTime,
      "id": GlobalID,
      "identifier": "xyz789",
      "subscriptions": [Subscription],
      "updatedAt": ISO8601DateTime
    }
  }
}

subscriptionGroups

Description

List all subscription groups.

Response

Returns a SubscriptionGroupConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query subscriptionGroups(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  subscriptionGroups(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...SubscriptionGroupEdgeFragment
    }
    nodes {
      ...SubscriptionGroupFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 123,
  "last": 987
}
Response
{
  "data": {
    "subscriptionGroups": {
      "edges": [SubscriptionGroupEdge],
      "nodes": [SubscriptionGroup],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

subscriptionOrder

Description

Find a subscription order by ID.

Response

Returns a SubscriptionOrder

Arguments
Name Description
id - GlobalID! The subscription's ID.

Example

Query
query subscriptionOrder($id: GlobalID!) {
  subscriptionOrder(id: $id) {
    billingBehaviour {
      ...SubscriptionBillingBehaviourFragment
    }
    cancelledAt
    createdAt
    customer {
      ...CustomerFragment
    }
    customised
    cycleEndAt
    cycleIndex
    cycleStartAt
    deliveryBehaviour {
      ...SubscriptionDeliveryBehaviourFragment
    }
    deliveryMethod {
      ...SubscriptionDeliveryMethodFragment
    }
    expectedBillingAt
    expectedDeliveryAt
    financials {
      ...SubscriptionOrderFinancialsFragment
    }
    id
    identifier
    order {
      ...OrderFragment
    }
    paymentIntent {
      ...PaymentIntentFragment
    }
    paymentMethod {
      ...PaymentMethodFragment
    }
    paymentStatus
    processedAt
    skipped
    skippedAt
    status
    subscription {
      ...SubscriptionFragment
    }
    subscriptionOrderItems {
      ...SubscriptionOrderItemFragment
    }
    updatedAt
  }
}
Variables
{"id": GlobalID}
Response
{
  "data": {
    "subscriptionOrder": {
      "billingBehaviour": SubscriptionBillingBehaviour,
      "cancelledAt": ISO8601DateTime,
      "createdAt": ISO8601DateTime,
      "customer": Customer,
      "customised": false,
      "cycleEndAt": ISO8601DateTime,
      "cycleIndex": Count,
      "cycleStartAt": ISO8601DateTime,
      "deliveryBehaviour": SubscriptionDeliveryBehaviour,
      "deliveryMethod": SubscriptionDeliveryMethod,
      "expectedBillingAt": ISO8601DateTime,
      "expectedDeliveryAt": ISO8601DateTime,
      "financials": SubscriptionOrderFinancials,
      "id": GlobalID,
      "identifier": "abc123",
      "order": Order,
      "paymentIntent": PaymentIntent,
      "paymentMethod": PaymentMethod,
      "paymentStatus": "FAILED",
      "processedAt": ISO8601DateTime,
      "skipped": false,
      "skippedAt": ISO8601DateTime,
      "status": "CANCELLED",
      "subscription": Subscription,
      "subscriptionOrderItems": [SubscriptionOrderItem],
      "updatedAt": ISO8601DateTime
    }
  }
}

subscriptionOrders

Description

List all subscription orders.

Response

Returns a SubscriptionOrderConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query subscriptionOrders(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  subscriptionOrders(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...SubscriptionOrderEdgeFragment
    }
    nodes {
      ...SubscriptionOrderFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "abc123",
  "before": "abc123",
  "first": 987,
  "last": 987
}
Response
{
  "data": {
    "subscriptionOrders": {
      "edges": [SubscriptionOrderEdge],
      "nodes": [SubscriptionOrder],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

subscriptions

Description

List all subscriptions.

Response

Returns a SubscriptionConnection

Arguments
Name Description
after - String Returns the elements in the list that come after the specified cursor.
before - String Returns the elements in the list that come before the specified cursor.
first - Int Returns the first n elements from the list.
last - Int Returns the last n elements from the list.

Example

Query
query subscriptions(
  $after: String,
  $before: String,
  $first: Int,
  $last: Int
) {
  subscriptions(
    after: $after,
    before: $before,
    first: $first,
    last: $last
  ) {
    edges {
      ...SubscriptionEdgeFragment
    }
    nodes {
      ...SubscriptionFragment
    }
    pageInfo {
      ...PageInfoFragment
    }
    totalCount
  }
}
Variables
{
  "after": "xyz789",
  "before": "abc123",
  "first": 987,
  "last": 123
}
Response
{
  "data": {
    "subscriptions": {
      "edges": [SubscriptionEdge],
      "nodes": [Subscription],
      "pageInfo": PageInfo,
      "totalCount": 987
    }
  }
}

Mutations

subscriptionItemAdd

Description

Adds an item to the subscription.

Response

Returns a SubscriptionItemAddPayload

Arguments
Name Description
input - SubscriptionItemAddInput! Input for adding a subscription item.

Example

Query
mutation subscriptionItemAdd($input: SubscriptionItemAddInput!) {
  subscriptionItemAdd(input: $input) {
    addedItem {
      ...SubscriptionItemFragment
    }
    subscription {
      ...SubscriptionFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionItemAddInput}
Response
{
  "data": {
    "subscriptionItemAdd": {
      "addedItem": SubscriptionItem,
      "subscription": Subscription,
      "userErrors": [UserError]
    }
  }
}

subscriptionOrderItemAdd

Description

Adds a subscription order item.

Response

Returns a SubscriptionOrderItemAddPayload

Arguments
Name Description
input - SubscriptionOrderItemAddInput! Input for adding a subscription order item.

Example

Query
mutation subscriptionOrderItemAdd($input: SubscriptionOrderItemAddInput!) {
  subscriptionOrderItemAdd(input: $input) {
    addedItem {
      ...SubscriptionOrderItemFragment
    }
    subscriptionOrder {
      ...SubscriptionOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionOrderItemAddInput}
Response
{
  "data": {
    "subscriptionOrderItemAdd": {
      "addedItem": SubscriptionOrderItem,
      "subscriptionOrder": SubscriptionOrder,
      "userErrors": [UserError]
    }
  }
}

subscriptionOrderProcess

Description

Process a subscription order.

Response

Returns a SubscriptionOrderProcessPayload

Arguments
Name Description
input - SubscriptionOrderProcessInput! Input for processing a subscription order.

Example

Query
mutation subscriptionOrderProcess($input: SubscriptionOrderProcessInput!) {
  subscriptionOrderProcess(input: $input) {
    subscriptionOrder {
      ...SubscriptionOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionOrderProcessInput}
Response
{
  "data": {
    "subscriptionOrderProcess": {
      "subscriptionOrder": SubscriptionOrder,
      "userErrors": [UserError]
    }
  }
}

subscriptionOrderSkip

Description

Skip a subscription order.

Response

Returns a SubscriptionOrderSkipPayload

Arguments
Name Description
input - SubscriptionOrderSkipInput! Input for skipping a subscription order.

Example

Query
mutation subscriptionOrderSkip($input: SubscriptionOrderSkipInput!) {
  subscriptionOrderSkip(input: $input) {
    skippedSubscriptionOrders {
      ...SubscriptionOrderFragment
    }
    subscriptionOrder {
      ...SubscriptionOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionOrderSkipInput}
Response
{
  "data": {
    "subscriptionOrderSkip": {
      "skippedSubscriptionOrders": [SubscriptionOrder],
      "subscriptionOrder": SubscriptionOrder,
      "userErrors": [UserError]
    }
  }
}

subscriptionOrderUnskip

Description

Unskip a subscription order.

Response

Returns a SubscriptionOrderUnskipPayload

Arguments
Name Description
input - SubscriptionOrderUnskipInput! Input for unskip a subscription order.

Example

Query
mutation subscriptionOrderUnskip($input: SubscriptionOrderUnskipInput!) {
  subscriptionOrderUnskip(input: $input) {
    subscriptionOrder {
      ...SubscriptionOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionOrderUnskipInput}
Response
{
  "data": {
    "subscriptionOrderUnskip": {
      "subscriptionOrder": SubscriptionOrder,
      "userErrors": [UserError]
    }
  }
}

subscriptionOrderUpdate

Description

Updates a subscription order.

Response

Returns a SubscriptionOrderUpdatePayload

Arguments
Name Description
input - SubscriptionOrderUpdateInput! Input for updating a subscription order.

Example

Query
mutation subscriptionOrderUpdate($input: SubscriptionOrderUpdateInput!) {
  subscriptionOrderUpdate(input: $input) {
    subscriptionOrder {
      ...SubscriptionOrderFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionOrderUpdateInput}
Response
{
  "data": {
    "subscriptionOrderUpdate": {
      "subscriptionOrder": SubscriptionOrder,
      "userErrors": [UserError]
    }
  }
}

subscriptionSetFrequency

Description

Sets the frequency of a subscription.

Response

Returns a SubscriptionSetFrequencyPayload

Arguments
Name Description
input - SubscriptionSetFrequencyInput! Input for setting subscription frequency.

Example

Query
mutation subscriptionSetFrequency($input: SubscriptionSetFrequencyInput!) {
  subscriptionSetFrequency(input: $input) {
    subscription {
      ...SubscriptionFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}
Variables
{"input": SubscriptionSetFrequencyInput}
Response
{
  "data": {
    "subscriptionSetFrequency": {
      "subscription": Subscription,
      "userErrors": [UserError]
    }
  }
}

Objects

SearchResult

Description

A search result.

Fields
Field Name Description
queryArguments - String! The query arguments as a JSON string
campaignOrders - CampaignOrderConnection The matching campaign orders
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

crowdfundingCampaigns - CrowdfundingCampaignConnection The matching crowdfunding campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

presaleCampaigns - PresaleCampaignConnection The matching presale campaigns
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionOrders - SubscriptionOrderConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptionPlanGroups - SubscriptionPlanGroupConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

subscriptions - SubscriptionConnection
Arguments
after - String

Returns the elements in the list that come after the specified cursor.

before - String

Returns the elements in the list that come before the specified cursor.

first - Int

Returns the first n elements from the list.

last - Int

Returns the last n elements from the list.

Example
{
  "queryArguments": "abc123",
  "campaignOrders": CampaignOrderConnection,
  "crowdfundingCampaigns": CrowdfundingCampaignConnection,
  "presaleCampaigns": PresaleCampaignConnection,
  "subscriptionOrders": SubscriptionOrderConnection,
  "subscriptionPlanGroups": SubscriptionPlanGroupConnection,
  "subscriptions": SubscriptionConnection
}

SubscriptionGroup

Fields
Field Name Description
createdAt - ISO8601DateTime The date the subscription group was created.
id - GlobalID! The ID of the subscription group.
identifier - String!
subscriptions - [Subscription!]!
updatedAt - ISO8601DateTime The date the subscription group was last updated.
Example
{
  "createdAt": ISO8601DateTime,
  "id": GlobalID,
  "identifier": "abc123",
  "subscriptions": [Subscription],
  "updatedAt": ISO8601DateTime
}

SubscriptionOrder

Fields
Field Name Description
billingBehaviour - SubscriptionBillingBehaviour!
cancelledAt - ISO8601DateTime
createdAt - ISO8601DateTime The date the subscription was created.
customer - Customer! The subscription's customer.
customised - Boolean!
cycleEndAt - ISO8601DateTime
cycleIndex - Count!
cycleStartAt - ISO8601DateTime
deliveryBehaviour - SubscriptionDeliveryBehaviour!
deliveryMethod - SubscriptionDeliveryMethod!
expectedBillingAt - ISO8601DateTime
expectedDeliveryAt - ISO8601DateTime
financials - SubscriptionOrderFinancials
id - GlobalID! The ID of the subscription.
identifier - String! The identifier of the subscription order.
order - Order The order ID of the subscription.
paymentIntent - PaymentIntent The payment intent of the subscription.
paymentMethod - PaymentMethod The payment method of the subscription.
paymentStatus - SubscriptionOrderPaymentStatus!
processedAt - ISO8601DateTime
skipped - Boolean!
skippedAt - ISO8601DateTime
status - SubscriptionOrderStatus! The subscription order's status.
subscription - Subscription!
subscriptionOrderItems - [SubscriptionOrderItem!]! The subscription order's items.
updatedAt - ISO8601DateTime The date the subscription was last updated.
Example
{
  "billingBehaviour": SubscriptionBillingBehaviour,
  "cancelledAt": ISO8601DateTime,
  "createdAt": ISO8601DateTime,
  "customer": Customer,
  "customised": true,
  "cycleEndAt": ISO8601DateTime,
  "cycleIndex": Count,
  "cycleStartAt": ISO8601DateTime,
  "deliveryBehaviour": SubscriptionDeliveryBehaviour,
  "deliveryMethod": SubscriptionDeliveryMethod,
  "expectedBillingAt": ISO8601DateTime,
  "expectedDeliveryAt": ISO8601DateTime,
  "financials": SubscriptionOrderFinancials,
  "id": GlobalID,
  "identifier": "xyz789",
  "order": Order,
  "paymentIntent": PaymentIntent,
  "paymentMethod": PaymentMethod,
  "paymentStatus": "FAILED",
  "processedAt": ISO8601DateTime,
  "skipped": true,
  "skippedAt": ISO8601DateTime,
  "status": "CANCELLED",
  "subscription": Subscription,
  "subscriptionOrderItems": [SubscriptionOrderItem],
  "updatedAt": ISO8601DateTime
}

Connections

CampaignOrderConnection

Description

The connection type for CampaignOrder.

Fields
Field Name Description
edges - [CampaignOrderEdge] A list of edges.
nodes - [CampaignOrder] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
totalCount - Int! The total number of items in the collection
Example
{
  "edges": [CampaignOrderEdge],
  "nodes": [CampaignOrder],
  "pageInfo": PageInfo,
  "totalCount": 123
}

CampaignOrderEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - CampaignOrder The item at the end of the edge.
Example
{
  "cursor": "xyz789",
  "node": CampaignOrder
}

CampaignOrderGroupConnection

Description

The connection type for CampaignOrderGroup.

Fields
Field Name Description
edges - [CampaignOrderGroupEdge] A list of edges.
nodes - [CampaignOrderGroup] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
totalCount - Int! The total number of items in the collection
Example
{
  "edges": [CampaignOrderGroupEdge],
  "nodes": [CampaignOrderGroup],
  "pageInfo": PageInfo,
  "totalCount": 123
}

CampaignOrderGroupEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - CampaignOrderGroup The item at the end of the edge.
Example
{
  "cursor": "abc123",
  "node": CampaignOrderGroup
}

ChannelConnection

Description

The connection type for Channel.

Fields
Field Name Description
edges - [ChannelEdge] A list of edges.
nodes - [Channel] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
Example
{
  "edges": [ChannelEdge],
  "nodes": [Channel],
  "pageInfo": PageInfo
}

ChannelEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - Channel The item at the end of the edge.
Example
{
  "cursor": "xyz789",
  "node": Channel
}

ChargeConnection

Description

The connection type for Charge.

Fields
Field Name Description
edges - [ChargeEdge] A list of edges.
nodes - [Charge] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
totalCount - Int! The total number of items in the collection
Example
{
  "edges": [ChargeEdge],
  "nodes": [Charge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

ChargeEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination.
node - Charge The item at the end of the edge.
Example
{
  "cursor": "abc123",
  "node": Charge
}

CrowdfundingCampaignConnection

Description

The connection type for CrowdfundingCampaign.

Fields
Field Name Description
edges - [CrowdfundingCampaignEdge] A list of edges.
nodes - [CrowdfundingCampaign] A list of nodes.
pageInfo - PageInfo! Information to aid in pagination.
totalCount - Int! The total number of items in the collection
Example
{
  "edges": [CrowdfundingCampaignEdge],
  "nodes": [CrowdfundingCampaign],
  "pageInfo"