Customer API Reference

The Customer API allows your customers to purchase tickets. It supports creating a cart, adding line items, checking out, and retrieving the resulting order.

A typical workflow is to create a new Cart with at least one Cart Line item, providing the Customer's first and last names, phone number, and email address. In order to present ticket options for purchase, the Customer API also provides details of all Events, Venues, Sessions, Ticket Types, and Session Ticket Types (a Ticket Type offered for a specific Session). It also supports providing details of your Account (including the default currency and locale settings) and available Payment Gateways.

Once a transaction has been successfully completed, the Customer API also supports downloading the detail of the Order and associated Tickets.

Separate to the Customer API, the Admin API can be used to configure every aspect of your ticketing setup, and to retrieve customer and transaction data.

Contact

API Support

support@mightytix.com

Terms of Service

https://mightytix.com/terms

API Endpoints
# Customer API:
https://[your-mightytix-domain]/customer-api/graphql

Authentication

No authentication is needed for the Customer API. Anyone can create a new Cart, but the returned Cart id must be specified for all subsequent Cart manipulation operations.

Queries

account

Response

Returns an Account!

Example

Query
query Account {
  account {
    currency
    locale
    name
    url
  }
}
Response
{
  "data": {
    "account": {
      "currency": "USD",
      "locale": "en-US",
      "name": "Stark Industries",
      "url": "stark.example.com"
    }
  }
}

cart

Response

Returns a Cart

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query Cart($id: ID!) {
  cart(id: $id) {
    acceptsMarketing
    bookingFees
    cartLines {
      bookingFees
      cart {
        ...CartFragment
      }
      id
      quantity
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
      subtotal
    }
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "cart": {
      "acceptsMarketing": true,
      "bookingFees": "123.45",
      "cartLines": [CartLine],
      "email": "john.doe@example.com",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "John",
      "id": "4",
      "lastName": "Doe",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "xyz789",
      "phone": "(555) 123-4567",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

event

Response

Returns an Event

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query Event($id: ID!) {
  event(id: $id) {
    descriptionHtml
    id
    name
    sessions {
      edges {
        ...SessionEdgeFragment
      }
      pageInfo {
        ...PageInfoFragment
      }
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "event": {
      "descriptionHtml": "<p>The event description.</p>",
      "id": 4,
      "name": "The Event Name",
      "sessions": EventSessionsConnection
    }
  }
}

events

Response

Returns an EventConnection!

Arguments
Name Description
filter - EventFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [EventSort!] Specify to sort results. Default = [{direction: ASC, field: name}]

Example

Query
query Events(
  $filter: EventFilter,
  $paging: CursorPaging,
  $sorting: [EventSort!]
) {
  events(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...EventFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "filter": {},
  "paging": {"first": 10},
  "sorting": [{"direction": "ASC", "field": "name"}]
}
Response
{
  "data": {
    "events": {
      "edges": [EventEdge],
      "pageInfo": PageInfo
    }
  }
}

order

Response

Returns an Order

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query Order($id: ID!) {
  order(id: $id) {
    acceptsMarketing
    bookingFees
    cardExpMonth
    cardExpYear
    cardLast4
    cardNetwork
    email
    firstName
    id
    lastName
    originalBookingFees
    originalPaymentFees
    originalSubtotal
    originalTotal
    paymentFees
    paymentIntentId
    paymentStatus
    phone
    processed
    publicId
    subtotal
    tickets {
      bookingFee
      id
      number
      order {
        ...OrderFragment
      }
      price
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
    }
    total
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "order": {
      "acceptsMarketing": false,
      "bookingFees": "123.45",
      "cardExpMonth": 123.45,
      "cardExpYear": 987.65,
      "cardLast4": 987.65,
      "cardNetwork": "xyz789",
      "email": "abc123",
      "firstName": "xyz789",
      "id": "4",
      "lastName": "xyz789",
      "originalBookingFees": "123.45",
      "originalPaymentFees": "123.45",
      "originalSubtotal": "123.45",
      "originalTotal": "123.45",
      "paymentFees": "123.45",
      "paymentIntentId": "abc123",
      "paymentStatus": "PAID",
      "phone": "xyz789",
      "processed": "2023-01-01T00:00:00.000Z",
      "publicId": "abc123",
      "subtotal": "123.45",
      "tickets": [Ticket],
      "total": "123.45"
    }
  }
}

orders

Response

Returns an OrderConnection!

Arguments
Name Description
filter - OrderFilter! Specify to filter the records returned.
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [OrderSort!] Specify to sort results. Default = []

Example

Query
query Orders(
  $filter: OrderFilter!,
  $paging: CursorPaging,
  $sorting: [OrderSort!]
) {
  orders(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...OrderFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "filter": OrderFilter,
  "paging": {"first": 10},
  "sorting": [""]
}
Response
{
  "data": {
    "orders": {
      "edges": [OrderEdge],
      "pageInfo": PageInfo
    }
  }
}

paymentGateways

Response

Returns a PaymentGatewayConnection!

Arguments
Name Description
filter - PaymentGatewayFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [PaymentGatewaySort!] Specify to sort results. Default = []

Example

Query
query PaymentGateways(
  $filter: PaymentGatewayFilter,
  $paging: CursorPaging,
  $sorting: [PaymentGatewaySort!]
) {
  paymentGateways(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...PaymentGatewayFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{"filter": {}, "paging": {"first": 10}, "sorting": [""]}
Response
{
  "data": {
    "paymentGateways": {
      "edges": [PaymentGatewayEdge],
      "pageInfo": PageInfo
    }
  }
}

session

Response

Returns a Session

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query Session($id: ID!) {
  session(id: $id) {
    capacity
    doors
    end
    event {
      descriptionHtml
      id
      name
      sessions {
        ...EventSessionsConnectionFragment
      }
    }
    eventId
    id
    offsale
    onsale
    sessionTicketTypes {
      bookingFee
      capacity
      enabled
      price
      session {
        ...SessionFragment
      }
      sessionId
      ticketType {
        ...TicketTypeFragment
      }
      ticketTypeId
    }
    start
    venue {
      address
      city
      country
      id
      latLong
      name
      postalCode
      space
      state
      suburb
      timezone
    }
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "session": {
      "capacity": 123,
      "doors": "2023-01-01T00:00:00.000Z",
      "end": "2023-01-01T00:00:00.000Z",
      "event": Event,
      "eventId": "xyz789",
      "id": 4,
      "offsale": "2023-01-01T00:00:00.000Z",
      "onsale": "2023-01-01T00:00:00.000Z",
      "sessionTicketTypes": SessionTicketType,
      "start": "2023-01-01T00:00:00.000Z",
      "venue": Venue
    }
  }
}

sessionTicketType

Response

Returns a SessionTicketType

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query SessionTicketType($id: ID!) {
  sessionTicketType(id: $id) {
    bookingFee
    capacity
    enabled
    price
    session {
      capacity
      doors
      end
      event {
        ...EventFragment
      }
      eventId
      id
      offsale
      onsale
      sessionTicketTypes {
        ...SessionTicketTypeFragment
      }
      start
      venue {
        ...VenueFragment
      }
    }
    sessionId
    ticketType {
      bookingFee
      id
      name
      price
      sessionTicketTypes {
        ...SessionTicketTypeFragment
      }
      sort
    }
    ticketTypeId
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "sessionTicketType": {
      "bookingFee": "123.45",
      "capacity": 987,
      "enabled": true,
      "price": "123.45",
      "session": Session,
      "sessionId": "4",
      "ticketType": TicketType,
      "ticketTypeId": "4"
    }
  }
}

sessionTicketTypes

Response

Returns a SessionTicketTypeConnection!

Arguments
Name Description
filter - SessionTicketTypeFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [SessionTicketTypeSort!] Specify to sort results. Default = []

Example

Query
query SessionTicketTypes(
  $filter: SessionTicketTypeFilter,
  $paging: CursorPaging,
  $sorting: [SessionTicketTypeSort!]
) {
  sessionTicketTypes(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...SessionTicketTypeFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{"filter": {}, "paging": {"first": 10}, "sorting": [""]}
Response
{
  "data": {
    "sessionTicketTypes": {
      "edges": [SessionTicketTypeEdge],
      "pageInfo": PageInfo
    }
  }
}

sessions

Response

Returns a SessionConnection!

Arguments
Name Description
filter - SessionFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [SessionSort!] Specify to sort results. Default = [{direction: ASC, field: start}]

Example

Query
query Sessions(
  $filter: SessionFilter,
  $paging: CursorPaging,
  $sorting: [SessionSort!]
) {
  sessions(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...SessionFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "filter": {},
  "paging": {"first": 10},
  "sorting": [{"direction": "ASC", "field": "start"}]
}
Response
{
  "data": {
    "sessions": {
      "edges": [SessionEdge],
      "pageInfo": PageInfo
    }
  }
}

ticketType

Response

Returns a TicketType

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query TicketType($id: ID!) {
  ticketType(id: $id) {
    bookingFee
    id
    name
    price
    sessionTicketTypes {
      bookingFee
      capacity
      enabled
      price
      session {
        ...SessionFragment
      }
      sessionId
      ticketType {
        ...TicketTypeFragment
      }
      ticketTypeId
    }
    sort
  }
}
Variables
{"id": "4"}
Response
{
  "data": {
    "ticketType": {
      "bookingFee": "123.45",
      "id": 4,
      "name": "xyz789",
      "price": "123.45",
      "sessionTicketTypes": [SessionTicketType],
      "sort": 987
    }
  }
}

ticketTypes

Response

Returns a TicketTypeConnection!

Arguments
Name Description
filter - TicketTypeFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [TicketTypeSort!] Specify to sort results. Default = [{direction: ASC, field: sort}, {direction: ASC, field: name}]

Example

Query
query TicketTypes(
  $filter: TicketTypeFilter,
  $paging: CursorPaging,
  $sorting: [TicketTypeSort!]
) {
  ticketTypes(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...TicketTypeFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "filter": {},
  "paging": {"first": 10},
  "sorting": [
    {"direction": "ASC", "field": "sort"},
    {"direction": "ASC", "field": "name"}
  ]
}
Response
{
  "data": {
    "ticketTypes": {
      "edges": [TicketTypeEdge],
      "pageInfo": PageInfo
    }
  }
}

venue

Response

Returns a Venue

Arguments
Name Description
id - ID! The id of the record to find.

Example

Query
query Venue($id: ID!) {
  venue(id: $id) {
    address
    city
    country
    id
    latLong
    name
    postalCode
    space
    state
    suburb
    timezone
  }
}
Variables
{"id": 4}
Response
{
  "data": {
    "venue": {
      "address": "xyz789",
      "city": "xyz789",
      "country": "abc123",
      "id": 4,
      "latLong": "abc123",
      "name": "abc123",
      "postalCode": "xyz789",
      "space": "abc123",
      "state": "abc123",
      "suburb": "abc123",
      "timezone": "abc123"
    }
  }
}

venues

Response

Returns a VenueConnection!

Arguments
Name Description
filter - VenueFilter Specify to filter the records returned. Default = {}
paging - CursorPaging Limit or page results. Default = {first: 10}
sorting - [VenueSort!] Specify to sort results. Default = [{direction: ASC, field: name}, {direction: ASC, field: space}]

Example

Query
query Venues(
  $filter: VenueFilter,
  $paging: CursorPaging,
  $sorting: [VenueSort!]
) {
  venues(
    filter: $filter,
    paging: $paging,
    sorting: $sorting
  ) {
    edges {
      cursor
      node {
        ...VenueFragment
      }
    }
    pageInfo {
      endCursor
      hasNextPage
      hasPreviousPage
      startCursor
    }
  }
}
Variables
{
  "filter": {},
  "paging": {"first": 10},
  "sorting": [
    {"direction": "ASC", "field": "name"},
    {"direction": "ASC", "field": "space"}
  ]
}
Response
{
  "data": {
    "venues": {
      "edges": [VenueEdge],
      "pageInfo": PageInfo
    }
  }
}

Mutations

createCart

Response

Returns a Cart!

Arguments
Name Description
input - CreateOneCartInput!

Example

Query
mutation CreateCart($input: CreateOneCartInput!) {
  createCart(input: $input) {
    acceptsMarketing
    bookingFees
    cartLines {
      bookingFees
      cart {
        ...CartFragment
      }
      id
      quantity
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
      subtotal
    }
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"input": CreateOneCartInput}
Response
{
  "data": {
    "createCart": {
      "acceptsMarketing": true,
      "bookingFees": "123.45",
      "cartLines": [CartLine],
      "email": "john.doe@example.com",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "John",
      "id": 4,
      "lastName": "Doe",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "abc123",
      "phone": "(555) 123-4567",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

createPaymentIntent

Response

Returns a Cart!

Arguments
Name Description
cartId - String!

Example

Query
mutation CreatePaymentIntent($cartId: String!) {
  createPaymentIntent(cartId: $cartId) {
    acceptsMarketing
    bookingFees
    cartLines {
      bookingFees
      cart {
        ...CartFragment
      }
      id
      quantity
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
      subtotal
    }
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"cartId": "abc123"}
Response
{
  "data": {
    "createPaymentIntent": {
      "acceptsMarketing": true,
      "bookingFees": "123.45",
      "cartLines": [CartLine],
      "email": "john.doe@example.com",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "John",
      "id": "4",
      "lastName": "Doe",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "xyz789",
      "phone": "(555) 123-4567",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

deleteCart

Response

Returns a CartDeleteResponse!

Arguments
Name Description
input - DeleteOneCartInput!

Example

Query
mutation DeleteCart($input: DeleteOneCartInput!) {
  deleteCart(input: $input) {
    acceptsMarketing
    bookingFees
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"input": DeleteOneCartInput}
Response
{
  "data": {
    "deleteCart": {
      "acceptsMarketing": false,
      "bookingFees": "123.45",
      "email": "abc123",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "xyz789",
      "id": "4",
      "lastName": "abc123",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "xyz789",
      "phone": "abc123",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

setCartLine

Response

Returns a Cart!

Arguments
Name Description
input - SetCartLineInput!

Example

Query
mutation SetCartLine($input: SetCartLineInput!) {
  setCartLine(input: $input) {
    acceptsMarketing
    bookingFees
    cartLines {
      bookingFees
      cart {
        ...CartFragment
      }
      id
      quantity
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
      subtotal
    }
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"input": SetCartLineInput}
Response
{
  "data": {
    "setCartLine": {
      "acceptsMarketing": false,
      "bookingFees": "123.45",
      "cartLines": [CartLine],
      "email": "john.doe@example.com",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "John",
      "id": "4",
      "lastName": "Doe",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "xyz789",
      "phone": "(555) 123-4567",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

updateCart

Response

Returns a Cart!

Arguments
Name Description
input - UpdateOneCartInput!

Example

Query
mutation UpdateCart($input: UpdateOneCartInput!) {
  updateCart(input: $input) {
    acceptsMarketing
    bookingFees
    cartLines {
      bookingFees
      cart {
        ...CartFragment
      }
      id
      quantity
      sessionTicketType {
        ...SessionTicketTypeFragment
      }
      subtotal
    }
    email
    expires
    firstName
    id
    lastName
    paymentFees
    paymentIntentClientSecret
    phone
    subtotal
    total
  }
}
Variables
{"input": UpdateOneCartInput}
Response
{
  "data": {
    "updateCart": {
      "acceptsMarketing": true,
      "bookingFees": "123.45",
      "cartLines": [CartLine],
      "email": "john.doe@example.com",
      "expires": "2023-01-01T00:00:00.000Z",
      "firstName": "John",
      "id": "4",
      "lastName": "Doe",
      "paymentFees": "123.45",
      "paymentIntentClientSecret": "xyz789",
      "phone": "(555) 123-4567",
      "subtotal": "123.45",
      "total": "123.45"
    }
  }
}

Types

Account

Description

The account represents your organisation.

Fields
Field Name Description
currency - String! The currency of the account.
locale - String! The locale of the account.
name - String! The name of the account.
url - String! The URL of the account.
Example
{
  "currency": "USD",
  "locale": "en-US",
  "name": "Stark Industries",
  "url": "stark.example.com"
}

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

BooleanFieldComparison

Fields
Input Field Description
is - Boolean
isNot - Boolean
Example
{"is": false, "isNot": true}

Cart

Description

A cart represents items to be purchased.

Fields
Field Name Description
acceptsMarketing - Boolean! Whether the customer has consented to future marketing communications.
bookingFees - Money! The estimated booking fees.
cartLines - [CartLine!]!
Arguments
filter - CartLineFilter

Specify to filter the records returned.

sorting - [CartLineSort!]

Specify to sort results.

email - String The email address of the customer.
expires - DateTime! When the cart expires.
firstName - String The first name of the customer.
id - ID! The ID of the cart.
lastName - String The last name of the customer.
paymentFees - Money! The estimated payment processing fees.
paymentIntentClientSecret - String The payment gateway's payment intent client secret.
phone - String The phone number of the customer.
subtotal - Money! The estimated subtotal amount before fees and discounts.
total - Money! The estimated total amount for the customer to pay.
Example
{
  "acceptsMarketing": false,
  "bookingFees": "123.45",
  "cartLines": [CartLine],
  "email": "john.doe@example.com",
  "expires": "2023-01-01T00:00:00.000Z",
  "firstName": "John",
  "id": "4",
  "lastName": "Doe",
  "paymentFees": "123.45",
  "paymentIntentClientSecret": "abc123",
  "phone": "(555) 123-4567",
  "subtotal": "123.45",
  "total": "123.45"
}

CartDeleteResponse

Fields
Field Name Description
acceptsMarketing - Boolean Whether the customer has consented to future marketing communications.
bookingFees - Money The estimated booking fees.
email - String The email address of the customer.
expires - DateTime When the cart expires.
firstName - String The first name of the customer.
id - ID The ID of the cart.
lastName - String The last name of the customer.
paymentFees - Money The estimated payment processing fees.
paymentIntentClientSecret - String The payment gateway's payment intent client secret.
phone - String The phone number of the customer.
subtotal - Money The estimated subtotal amount before fees and discounts.
total - Money The estimated total amount for the customer to pay.
Example
{
  "acceptsMarketing": false,
  "bookingFees": "123.45",
  "email": "abc123",
  "expires": "2023-01-01T00:00:00.000Z",
  "firstName": "xyz789",
  "id": "4",
  "lastName": "abc123",
  "paymentFees": "123.45",
  "paymentIntentClientSecret": "xyz789",
  "phone": "abc123",
  "subtotal": "123.45",
  "total": "123.45"
}

CartLine

Description

A cart line represents information about a session ticket type in the cart.

Fields
Field Name Description
bookingFees - Money! The estimated booking fees.
cart - Cart!
id - ID! The ID of the cart line.
quantity - Int! The quantity of these tickets in the cart.
sessionTicketType - SessionTicketType!
subtotal - Money! The estimated subtotal before fees and discounts.
Example
{
  "bookingFees": "123.45",
  "cart": Cart,
  "id": 4,
  "quantity": 987,
  "sessionTicketType": SessionTicketType,
  "subtotal": "123.45"
}

CartLineFilter

Fields
Input Field Description
and - [CartLineFilter!]
id - IDFilterComparison
or - [CartLineFilter!]
Example
{
  "and": [CartLineFilter],
  "id": IDFilterComparison,
  "or": [CartLineFilter]
}

CartLineInput

Description

The inputs for a cart line mutation.

Fields
Input Field Description
quantity - Int!
sessionId - String!

The ID of the session.

ticketTypeId - String!

The ID of the ticket type.

Example
{
  "quantity": 987,
  "sessionId": "xyz789",
  "ticketTypeId": "abc123"
}

CartLineSort

Fields
Input Field Description
direction - SortDirection!
field - CartLineSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "id", "nulls": "NULLS_FIRST"}

CartLineSortFields

Values
Enum Value Description

id

Example
"id"

ConnectionCursor

Description

Cursor for paging through collections

Example
ConnectionCursor

CreateCartInput

Description

The inputs for creating a cart.

Fields
Input Field Description
acceptsMarketing - Boolean

Whether the customer has consented to future marketing communications.

cartLines - [CartLineInput!]
email - String

The email address of the customer.

firstName - String

The first name of the customer.

lastName - String

The last name of the customer.

phone - String

The phone number of the customer.

Example
{
  "acceptsMarketing": true,
  "cartLines": [CartLineInput],
  "email": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "phone": "xyz789"
}

CreateOneCartInput

Fields
Input Field Description
cart - CreateCartInput!

The record to create

Example
{"cart": CreateCartInput}

CursorPaging

Fields
Input Field Description
after - ConnectionCursor

Paginate after opaque cursor

before - ConnectionCursor

Paginate before opaque cursor

first - Int

Paginate first

last - Int

Paginate last

Example
{
  "after": ConnectionCursor,
  "before": ConnectionCursor,
  "first": 123,
  "last": 123
}

DateFieldComparison

Fields
Input Field Description
between - DateFieldComparisonBetween
eq - DateTime
gt - DateTime
gte - DateTime
in - [DateTime!]
is - Boolean
isNot - Boolean
lt - DateTime
lte - DateTime
neq - DateTime
notBetween - DateFieldComparisonBetween
notIn - [DateTime!]
Example
{
  "between": DateFieldComparisonBetween,
  "eq": "2023-01-01T00:00:00.000Z",
  "gt": "2023-01-01T00:00:00.000Z",
  "gte": "2023-01-01T00:00:00.000Z",
  "in": ["2023-01-01T00:00:00.000Z"],
  "is": false,
  "isNot": false,
  "lt": "2023-01-01T00:00:00.000Z",
  "lte": "2023-01-01T00:00:00.000Z",
  "neq": "2023-01-01T00:00:00.000Z",
  "notBetween": DateFieldComparisonBetween,
  "notIn": ["2023-01-01T00:00:00.000Z"]
}

DateFieldComparisonBetween

Fields
Input Field Description
lower - DateTime!
upper - DateTime!
Example
{
  "lower": "2023-01-01T00:00:00.000Z",
  "upper": "2023-01-01T00:00:00.000Z"
}

DateTime

Description

A date-time string at UTC, such as 2019-12-03T09:54:33Z, compliant with the date-time format.

Example
"2023-01-01T00:00:00.000Z"

DeleteOneCartInput

Fields
Input Field Description
id - ID!

The id of the record to delete.

Example
{"id": 4}

Event

Description

An event object contains brand and messaging content bringing together one or more sessions, shows or performances.

Fields
Field Name Description
descriptionHtml - String The description of the event, with HTML formatting.
id - ID! The ID of the event.
name - ID! The name of the event.
sessions - EventSessionsConnection!
Arguments
filter - SessionFilter

Specify to filter the records returned.

paging - CursorPaging

Limit or page results.

sorting - [SessionSort!]

Specify to sort results.

Example
{
  "descriptionHtml": "<p>The event description.</p>",
  "id": "4",
  "name": "The Event Name",
  "sessions": EventSessionsConnection
}

EventConnection

Fields
Field Name Description
edges - [EventEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [EventEdge],
  "pageInfo": PageInfo
}

EventEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - Event! The node containing the Event
Example
{
  "cursor": ConnectionCursor,
  "node": Event
}

EventFilter

Fields
Input Field Description
and - [EventFilter!]
name - IDFilterComparison
or - [EventFilter!]
Example
{
  "and": [EventFilter],
  "name": IDFilterComparison,
  "or": [EventFilter]
}

EventSessionsConnection

Fields
Field Name Description
edges - [SessionEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [SessionEdge],
  "pageInfo": PageInfo
}

EventSort

Fields
Input Field Description
direction - SortDirection!
field - EventSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "name", "nulls": "NULLS_FIRST"}

EventSortFields

Values
Enum Value Description

name

Example
"name"

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
"4"

IDFilterComparison

Fields
Input Field Description
eq - ID
gt - ID
gte - ID
iLike - ID
in - [ID!]
is - Boolean
isNot - Boolean
like - ID
lt - ID
lte - ID
neq - ID
notILike - ID
notIn - [ID!]
notLike - ID
Example
{
  "eq": 4,
  "gt": 4,
  "gte": "4",
  "iLike": "4",
  "in": [4],
  "is": false,
  "isNot": true,
  "like": "4",
  "lt": 4,
  "lte": 4,
  "neq": 4,
  "notILike": "4",
  "notIn": ["4"],
  "notLike": "4"
}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

IntFieldComparison

Fields
Input Field Description
between - IntFieldComparisonBetween
eq - Int
gt - Int
gte - Int
in - [Int!]
is - Boolean
isNot - Boolean
lt - Int
lte - Int
neq - Int
notBetween - IntFieldComparisonBetween
notIn - [Int!]
Example
{
  "between": IntFieldComparisonBetween,
  "eq": 987,
  "gt": 123,
  "gte": 123,
  "in": [987],
  "is": true,
  "isNot": true,
  "lt": 987,
  "lte": 123,
  "neq": 123,
  "notBetween": IntFieldComparisonBetween,
  "notIn": [123]
}

IntFieldComparisonBetween

Fields
Input Field Description
lower - Int!
upper - Int!
Example
{"lower": 123, "upper": 123}

Money

Description

A string representing a monetary value.

Example
"123.45"

Order

Description

An order represents a completed transaction.

Fields
Field Name Description
acceptsMarketing - Boolean! Whether the customer has consented to future marketing communications.
bookingFees - Money! The current booking fees.
cardExpMonth - Float The original payment card expiry month.
cardExpYear - Float The original payment card expiry year.
cardLast4 - Float The original payment card last 4 digits.
cardNetwork - String The original payment card network.
email - String! The email address of the customer.
firstName - String! The first name of the customer.
id - ID! A unique identifier.
lastName - String! The last name of the customer.
originalBookingFees - Money! The original booking fees.
originalPaymentFees - Money! The original payment processing fees.
originalSubtotal - Money! The original subtotal amount before fees and discounts.
originalTotal - Money! The original total paid for the order.
paymentFees - Money! The current payment processing fees.
paymentIntentId - String The payment gateway's transaction reference for the order.
paymentStatus - OrderPaymentStatus! The payment status of the order.
phone - String! The phone number of the customer.
processed - DateTime! When the order was created or imported.
publicId - String! A unique alphanumeric identifier for the order. Can be shared with customers to identify their orders.
subtotal - Money! The current subtotal amount before fees and discounts.
tickets - [Ticket!]!
Arguments
filter - TicketFilter

Specify to filter the records returned.

sorting - [TicketSort!]

Specify to sort results.

total - Money! The current total paid for the order.
Example
{
  "acceptsMarketing": false,
  "bookingFees": "123.45",
  "cardExpMonth": 123.45,
  "cardExpYear": 987.65,
  "cardLast4": 987.65,
  "cardNetwork": "abc123",
  "email": "abc123",
  "firstName": "abc123",
  "id": 4,
  "lastName": "abc123",
  "originalBookingFees": "123.45",
  "originalPaymentFees": "123.45",
  "originalSubtotal": "123.45",
  "originalTotal": "123.45",
  "paymentFees": "123.45",
  "paymentIntentId": "abc123",
  "paymentStatus": "PAID",
  "phone": "abc123",
  "processed": "2023-01-01T00:00:00.000Z",
  "publicId": "abc123",
  "subtotal": "123.45",
  "tickets": [Ticket],
  "total": "123.45"
}

OrderConnection

Fields
Field Name Description
edges - [OrderEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [OrderEdge],
  "pageInfo": PageInfo
}

OrderEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - Order! The node containing the Order
Example
{
  "cursor": ConnectionCursor,
  "node": Order
}

OrderFilter

Fields
Input Field Description
and - [OrderFilter!]
id - IDFilterComparison
or - [OrderFilter!]
paymentIntentId - OrderPaymentIntentIdFilterComparison!
Example
{
  "and": [OrderFilter],
  "id": IDFilterComparison,
  "or": [OrderFilter],
  "paymentIntentId": OrderPaymentIntentIdFilterComparison
}

OrderPaymentIntentIdFilterComparison

Fields
Input Field Description
eq - String
Example
{"eq": "xyz789"}

OrderPaymentStatus

Description

The current payment status of an order.

Values
Enum Value Description

PAID

PARTIALLY_REFUNDED

PROCESSING

REFUNDED

VOID

Example
"PAID"

OrderSort

Fields
Input Field Description
direction - SortDirection!
field - OrderSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "id", "nulls": "NULLS_FIRST"}

OrderSortFields

Values
Enum Value Description

id

paymentIntentId

Example
"id"

PageInfo

Fields
Field Name Description
endCursor - ConnectionCursor The cursor of the last returned record.
hasNextPage - Boolean true if paging forward and there are more records.
hasPreviousPage - Boolean true if paging backwards and there are more records.
startCursor - ConnectionCursor The cursor of the first returned record.
Example
{
  "endCursor": ConnectionCursor,
  "hasNextPage": false,
  "hasPreviousPage": true,
  "startCursor": ConnectionCursor
}

PaymentGateway

Description

Represents an external payment gateway account and associated payment processing fee amounts.

Fields
Field Name Description
default - Boolean! Whether this is the default payment gateway for the account.
gatewayAccountId - String! The external payment gateway account ID.
id - ID! The ID of the payment gateway.
provider - String!
Example
{
  "default": false,
  "gatewayAccountId": "xyz789",
  "id": 4,
  "provider": "xyz789"
}

PaymentGatewayConnection

Fields
Field Name Description
edges - [PaymentGatewayEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [PaymentGatewayEdge],
  "pageInfo": PageInfo
}

PaymentGatewayEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - PaymentGateway! The node containing the PaymentGateway
Example
{
  "cursor": ConnectionCursor,
  "node": PaymentGateway
}

PaymentGatewayFilter

Fields
Input Field Description
and - [PaymentGatewayFilter!]
default - BooleanFieldComparison
id - IDFilterComparison
or - [PaymentGatewayFilter!]
provider - StringFieldComparison
Example
{
  "and": [PaymentGatewayFilter],
  "default": BooleanFieldComparison,
  "id": IDFilterComparison,
  "or": [PaymentGatewayFilter],
  "provider": StringFieldComparison
}

PaymentGatewaySort

Fields
Input Field Description
direction - SortDirection!
field - PaymentGatewaySortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "default", "nulls": "NULLS_FIRST"}

PaymentGatewaySortFields

Values
Enum Value Description

default

id

provider

Example
"default"

Session

Description

A session represents the date, time & location of a session, show, or performance of an event.

Fields
Field Name Description
capacity - Int The maximum capacity of the session.
doors - DateTime The door opening date and time of the session in UTC.
end - DateTime The end date and time of the session in UTC.
event - Event!
eventId - String! The ID of the event the session belongs to.
id - ID! The ID of the session.
offsale - DateTime The offsale date and time of the session in UTC.
onsale - DateTime The onsale date and time of the session in UTC.
sessionTicketTypes - SessionTicketType!
start - DateTime! The start date and time of the session in UTC.
venue - Venue!
Example
{
  "capacity": 123,
  "doors": "2023-01-01T00:00:00.000Z",
  "end": "2023-01-01T00:00:00.000Z",
  "event": Event,
  "eventId": "abc123",
  "id": 4,
  "offsale": "2023-01-01T00:00:00.000Z",
  "onsale": "2023-01-01T00:00:00.000Z",
  "sessionTicketTypes": SessionTicketType,
  "start": "2023-01-01T00:00:00.000Z",
  "venue": Venue
}

SessionConnection

Fields
Field Name Description
edges - [SessionEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [SessionEdge],
  "pageInfo": PageInfo
}

SessionEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - Session! The node containing the Session
Example
{
  "cursor": ConnectionCursor,
  "node": Session
}

SessionFilter

Fields
Input Field Description
and - [SessionFilter!]
eventId - IDFilterComparison
or - [SessionFilter!]
sessionTicketTypes - SessionFilterSessionTicketTypeFilter
start - DateFieldComparison
Example
{
  "and": [SessionFilter],
  "eventId": IDFilterComparison,
  "or": [SessionFilter],
  "sessionTicketTypes": SessionFilterSessionTicketTypeFilter,
  "start": DateFieldComparison
}

SessionFilterSessionTicketTypeFilter

Example
{
  "and": [SessionFilterSessionTicketTypeFilter],
  "enabled": BooleanFieldComparison,
  "or": [SessionFilterSessionTicketTypeFilter],
  "sessionId": IDFilterComparison,
  "ticketTypeId": IDFilterComparison
}

SessionSort

Fields
Input Field Description
direction - SortDirection!
field - SessionSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "eventId", "nulls": "NULLS_FIRST"}

SessionSortFields

Values
Enum Value Description

eventId

start

Example
"eventId"

SessionTicketType

Description

The session's ticket type association.

Fields
Field Name Description
bookingFee - Money The standard price of the ticket type.
capacity - Int The maximum number of the ticket type for the session.
enabled - Boolean! Whether the ticket type is currently enabled for the session.
price - Money The price of the ticket type for the session.
session - Session!
sessionId - ID! The session ID.
ticketType - TicketType!
ticketTypeId - ID! The ticket type ID.
Example
{
  "bookingFee": "123.45",
  "capacity": 123,
  "enabled": true,
  "price": "123.45",
  "session": Session,
  "sessionId": "4",
  "ticketType": TicketType,
  "ticketTypeId": "4"
}

SessionTicketTypeConnection

Fields
Field Name Description
edges - [SessionTicketTypeEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [SessionTicketTypeEdge],
  "pageInfo": PageInfo
}

SessionTicketTypeEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - SessionTicketType! The node containing the SessionTicketType
Example
{
  "cursor": ConnectionCursor,
  "node": SessionTicketType
}

SessionTicketTypeFilter

Fields
Input Field Description
and - [SessionTicketTypeFilter!]
enabled - BooleanFieldComparison
or - [SessionTicketTypeFilter!]
sessionId - IDFilterComparison
ticketTypeId - IDFilterComparison
Example
{
  "and": [SessionTicketTypeFilter],
  "enabled": BooleanFieldComparison,
  "or": [SessionTicketTypeFilter],
  "sessionId": IDFilterComparison,
  "ticketTypeId": IDFilterComparison
}

SessionTicketTypeSort

Fields
Input Field Description
direction - SortDirection!
field - SessionTicketTypeSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "enabled", "nulls": "NULLS_FIRST"}

SessionTicketTypeSortFields

Values
Enum Value Description

enabled

sessionId

ticketTypeId

Example
"enabled"

SetCartLineInput

Description

The inputs for setting the information about a cart line.

Fields
Input Field Description
cartId - String!

The ID of the cart.

quantity - Int!
sessionId - String!

The ID of the session.

ticketTypeId - String!

The ID of the ticket type.

Example
{
  "cartId": "xyz789",
  "quantity": 123,
  "sessionId": "abc123",
  "ticketTypeId": "xyz789"
}

SortDirection

Description

Sort Directions

Values
Enum Value Description

ASC

DESC

Example
"ASC"

SortNulls

Description

Sort Nulls Options

Values
Enum Value Description

NULLS_FIRST

NULLS_LAST

Example
"NULLS_FIRST"

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"abc123"

StringFieldComparison

Fields
Input Field Description
eq - String
gt - String
gte - String
iLike - String
in - [String!]
is - Boolean
isNot - Boolean
like - String
lt - String
lte - String
neq - String
notILike - String
notIn - [String!]
notLike - String
Example
{
  "eq": "xyz789",
  "gt": "abc123",
  "gte": "abc123",
  "iLike": "abc123",
  "in": ["abc123"],
  "is": true,
  "isNot": false,
  "like": "abc123",
  "lt": "xyz789",
  "lte": "abc123",
  "neq": "abc123",
  "notILike": "xyz789",
  "notIn": ["xyz789"],
  "notLike": "xyz789"
}

Ticket

Description

The record representing a ticket.

Fields
Field Name Description
bookingFee - Money! The booking fee paid for this ticket.
id - ID! A unique identifier.
number - Int! A sequential numeric identifier for this ticket within the order.
order - Order!
price - Money! The face value paid for this ticket.
sessionTicketType - SessionTicketType!
Example
{
  "bookingFee": "123.45",
  "id": "4",
  "number": 123,
  "order": Order,
  "price": "123.45",
  "sessionTicketType": SessionTicketType
}

TicketFilter

Fields
Input Field Description
and - [TicketFilter!]
id - IDFilterComparison
or - [TicketFilter!]
Example
{
  "and": [TicketFilter],
  "id": IDFilterComparison,
  "or": [TicketFilter]
}

TicketSort

Fields
Input Field Description
direction - SortDirection!
field - TicketSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "id", "nulls": "NULLS_FIRST"}

TicketSortFields

Values
Enum Value Description

id

Example
"id"

TicketType

Description

Ticket type

Fields
Field Name Description
bookingFee - Money! The standard price of the ticket type.
id - ID! The ID of the ticket type.
name - String! The name of the ticket type.
price - Money! The standard price of the ticket type.
sessionTicketTypes - [SessionTicketType!]
Arguments
filter - SessionTicketTypeFilter

Specify to filter the records returned.

sorting - [SessionTicketTypeSort!]

Specify to sort results.

sort - Int The sort rank of the ticket type.
Example
{
  "bookingFee": "123.45",
  "id": "4",
  "name": "abc123",
  "price": "123.45",
  "sessionTicketTypes": [SessionTicketType],
  "sort": 123
}

TicketTypeConnection

Fields
Field Name Description
edges - [TicketTypeEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [TicketTypeEdge],
  "pageInfo": PageInfo
}

TicketTypeEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - TicketType! The node containing the TicketType
Example
{
  "cursor": ConnectionCursor,
  "node": TicketType
}

TicketTypeFilter

Fields
Input Field Description
and - [TicketTypeFilter!]
id - IDFilterComparison
name - StringFieldComparison
or - [TicketTypeFilter!]
sort - IntFieldComparison
Example
{
  "and": [TicketTypeFilter],
  "id": IDFilterComparison,
  "name": StringFieldComparison,
  "or": [TicketTypeFilter],
  "sort": IntFieldComparison
}

TicketTypeSort

Fields
Input Field Description
direction - SortDirection!
field - TicketTypeSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "id", "nulls": "NULLS_FIRST"}

TicketTypeSortFields

Values
Enum Value Description

id

name

sort

Example
"id"

UpdateCartInput

Description

The inputs for updating a cart.

Fields
Input Field Description
acceptsMarketing - Boolean

Whether the customer has consented to future marketing communications.

email - String

The email address of the customer.

firstName - String

The first name of the customer.

lastName - String

The last name of the customer.

phone - String

The phone number of the customer.

Example
{
  "acceptsMarketing": true,
  "email": "abc123",
  "firstName": "abc123",
  "lastName": "xyz789",
  "phone": "xyz789"
}

UpdateOneCartInput

Fields
Input Field Description
id - ID!

The id of the record to update

update - UpdateCartInput!

The update to apply.

Example
{"id": 4, "update": UpdateCartInput}

Venue

Description

A venue is the location a session will take place at.

Fields
Field Name Description
address - String The street address of the venue.
city - String! The venue's city.
country - String! The venue's country.
id - ID! The ID of the venue.
latLong - String The latitude and longitude of the venue.
name - String! The name of the venue.
postalCode - String The venue's zip or postcode.
space - String The room, hall or building within the venue.
state - String The venue's state.
suburb - String The suburb of the venue.
timezone - String! The timezone of the venue.
Example
{
  "address": "xyz789",
  "city": "abc123",
  "country": "abc123",
  "id": "4",
  "latLong": "xyz789",
  "name": "xyz789",
  "postalCode": "xyz789",
  "space": "xyz789",
  "state": "xyz789",
  "suburb": "xyz789",
  "timezone": "abc123"
}

VenueConnection

Fields
Field Name Description
edges - [VenueEdge!]! Array of edges.
pageInfo - PageInfo! Paging information
Example
{
  "edges": [VenueEdge],
  "pageInfo": PageInfo
}

VenueEdge

Fields
Field Name Description
cursor - ConnectionCursor! Cursor for this node.
node - Venue! The node containing the Venue
Example
{
  "cursor": ConnectionCursor,
  "node": Venue
}

VenueFilter

Fields
Input Field Description
and - [VenueFilter!]
city - StringFieldComparison
country - StringFieldComparison
id - IDFilterComparison
name - StringFieldComparison
or - [VenueFilter!]
space - StringFieldComparison
Example
{
  "and": [VenueFilter],
  "city": StringFieldComparison,
  "country": StringFieldComparison,
  "id": IDFilterComparison,
  "name": StringFieldComparison,
  "or": [VenueFilter],
  "space": StringFieldComparison
}

VenueSort

Fields
Input Field Description
direction - SortDirection!
field - VenueSortFields!
nulls - SortNulls
Example
{"direction": "ASC", "field": "city", "nulls": "NULLS_FIRST"}

VenueSortFields

Values
Enum Value Description

city

country

id

name

space

Example
"city"