Skip to main content

Objects

In this section

Objects

Objects in GraphQL represent the resources you can access. An object can contain a list of fields, which are specifically typed.

API Site

Fields

NameDescription
apiType(APIType)

The API type effected by this brownout.

disablesRequestsTo(NonEmptyString)

For GraphQL APIs this will be a field identifier in the format .≤fieldName>, for REST APIs this will be an endpoint.

endsAt(NonEmptyString)

The iso formatted datetime at which this brownout will end.

startsAt(NonEmptyString)

The iso formatted datetime at which this brownout will take effect.

status(APIBrownoutStatus)

The current status of this brownout.

Example

{
  "disablesRequestsTo": NonEmptyString,
  "status": "SCHEDULED",
  "apiType": "GRAPHQL",
  "startsAt": NonEmptyString,
  "endsAt": NonEmptyString
}

APIBrownoutConnection

Paginator of API brownouts.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([APIBrownoutEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": APIBrownoutEdge,
  "totalCount": 1,
  "edgeCount": 1
}

APIBrownoutEdge

A Relay edge containing a APIBrownout and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(APIBrownout)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
context(JSONString)

Storage for the API client to submit any contextual information.

correlationId(String!)

The request's correlation id.

createdAt(DateTime!)

id(ID!)

inputData(JSONString)

Input data for the API call if any.

operationName(String!)

Free field for the API caller to categorise their own operation name. This field can be used to filter entries on the UI.

response(JSONString)

The response from the API call if any.

Example

{
  "id": "abc123",
  "correlationId": "abc123",
  "operationName": "abc123",
  "inputData": {"key": "value"},
  "response": {"key": "value"},
  "context": {"key": "value"},
  "createdAt": "2020-01-01T00:00:00.000Z"
}

APIExceptionConnectionTypeConnection

Paginator of API exceptions.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([APIExceptionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": APIExceptionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

APIExceptionConnectionTypeEdge

A Relay edge containing a APIExceptionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(APIExceptionType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
category(String!)

The category of the event.

context(JSONString)

A JSON context to be provided with the event, if any.

createdAt(DateTime!)

description(String)

A description of the event.

eventType(String!)

The type of the event.

id(ID!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "category": "abc123",
  "description": "abc123",
  "context": {"key": "value"},
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
body(String!)

The content of the API Exception note.

createdAt(DateTime!)

Timestamp of when the API Exception note was created.

id(ID!)

The ID of the API Exception note.

Example

{
  "id": "abc123",
  "body": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountNumber(String)

The account number provided to the exception.

apiCalls([APICallType])

The API calls associated with this exception if any.

assignedUser(AssignedUserType)

The user assigned to handle this exception if any.

category(APIExceptionCategories)

Category associated with this exception.

channel(String!)

Free field for the API caller to categorise a channel. This could be (but not limited to) the client's team that calleded the API, the name of the 'flow' the call belongs to, etc.

context(JSONString)

Storage for the API client to submit any contextual information.

createdAt(DateTime!)

customerContact(String)

The customer contact provided to the exception.

events([APIExceptionEventType])

The events associated with this exception if any.

externalIdentifier(String!)

External identifier submitted by the API client to track this exception on their end.

id(ID!)

keyDate(Date)

The key date associated with the exception, if available.

notes([APIExceptionNoteType])

Notes associated with this exception if any.

operationsTeam(OperationsTeamType)

The operations team assigned to this exception if any.

priority(APIExceptionPriority!)

The current priority for the API exception.

resolutionStatus(APIExceptionResolutionStatus!)

The current resolution status for the API exception.

resolutionType(APIExceptionResolutionType!)

The current resolution type for the API exception.

supplyPointIdentifier(String)

The supply point identifier provided to the exception.

tags([APIExceptionTags])

Tags associated with this exception if any.

userId(BigInt)

The user id provided to the exception.

Example

{
  "id": "abc123",
  "externalIdentifier": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "channel": "abc123",
  "category": "ACCOUNT",
  "accountNumber": "abc123",
  "userId": 1,
  "customerContact": "abc123",
  "supplyPointIdentifier": "abc123",
  "resolutionStatus": "ASSIGNED",
  "resolutionType": "AUTOMATIC",
  "priority": "LOW",
  "tags": "MOVE_IN",
  "context": {"key": "value"},
  "keyDate": "2020-01-01"
}

AcceptGoodsQuote

Output type of the acceptGoodsQuote mutation.

Fields

NameDescription
goodsPurchase(GoodsPurchase)

Goods purchase created.

Example

{
  "goodsPurchase": GoodsPurchase
}

AcceptOfferForQuoting

Output type of the acceptOfferForQuoting mutation.

Fields

NameDescription
offer(OfferType)

Accepted quoting offer.

Example

{
  "offer": OfferType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountAccessConnectionTypeEdge

A Relay edge containing a AccountAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountAccessType)

The item at the end of the edge

Example

{
  "node": AccountAccessType,
  "cursor": "abc123"
}

AccountAccessType

Represents the accessible account and access information of an accessor.

Fields

NameDescription
entity(AccountType!)

The account that the accessor has access to.

roleAssignments([RoleAssignment]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment,
  "entity": AccountType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountApplicationConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountApplicationConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountApplicationConnectionTypeEdge

A Relay edge containing a AccountApplicationConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountApplicationType)

The item at the end of the edge

Example

{
  "node": AccountApplicationType,
  "cursor": "abc123"
}

Fields

NameDescription
coolingOffEndDate(Date)

Last day of the cooling off period. Barring changes or objections, the account will be gained on the next business day after this date. This value will only be returned for current applications.

dateOfSale(Date)

Date at which this account decided to switch to us.

isMigrated(Boolean)

Whether this account application represents a migration into the current system or a regular gain.

migrationSource(String)

The source system for a migrated account. This could be the previous supplier or the previous account management system.

preferredSsd(Date)

Preferred supply start date. If null, it means ASAP.

salesChannel(String!)

salesSubchannel(String)

The sales subchannel used when signing up. This could for example be a price comparison site.

status(AccountApplicationStatus!)

Example

{
  "status": "CURRENT",
  "salesChannel": "abc123",
  "salesSubchannel": "abc123",
  "dateOfSale": "2020-01-01",
  "coolingOffEndDate": "2020-01-01",
  "isMigrated": true,
  "migrationSource": "abc123",
  "preferredSsd": "2020-01-01"
}

Fields

NameDescription
accountCharge(AccountChargeType)

Debit details.

accountCredit(AccountCreditType)

Credit details.

id(ID)

Balance transfer ID.

reason(String)

The reason for the balance transfer.

Example

{
  "id": "abc123",
  "reason": "abc123",
  "accountCharge": AccountChargeType,
  "accountCredit": AccountCreditType
}

AccountCampaignConnectionTypeConnection

Paginator of Account Campaigns

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountCampaignConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountCampaignConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountCampaignConnectionTypeEdge

A Relay edge containing a AccountCampaignConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountCampaignType)

The item at the end of the edge

Example

{
  "node": AccountCampaignType,
  "cursor": "abc123"
}

Fields

NameDescription
campaignExpiryDate(Date)

The date on which the associated campaign itself concludes.

expiryDate(Date)

The date on which the account's participation in the campaign ends.

name(String)

The name of the campaign.

slug(String)

The slug of the campaign.

startDate(Date)

The date that the account's link to the campaign started.

Example

{
  "campaignExpiryDate": "2020-01-01",
  "name": "abc123",
  "slug": "abc123",
  "expiryDate": "2020-01-01",
  "startDate": "2020-01-01"
}

Fields

NameDescription
data(JSONString)

A JSON object containing unstructured data about the account charge.

updatedAt(DateTime)

The date and time the metadata was last updated.

Example

{
  "data": {"key": "value"},
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
cclAmount(BigInt)

The climate change levy amount of the charge.

displayNote(String)

The display note for the charge.

grossAmount(BigInt)

The gross amount of the charge.

id(ID)

The ID of the account charge.

metadata(AccountChargeMetadataType)

JSON metadata containing unstructured data about the account charge.

netAmount(BigInt)

The net amount of the charge.

note(String)

The note for the charge.

reason(String)

The reason for the charge.

salesTaxAmount(BigInt)

The sales tax amount of the charge.

Example

{
  "id": "abc123",
  "netAmount": 1,
  "grossAmount": 1,
  "salesTaxAmount": 1,
  "cclAmount": 1,
  "reason": "abc123",
  "note": "abc123",
  "displayNote": "abc123",
  "metadata": AccountChargeMetadataType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountConnectionTypeEdge

A Relay edge containing a AccountConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountType)

The item at the end of the edge

Example

{
  "node": AccountType,
  "cursor": "abc123"
}

Fields

NameDescription
data(JSONString!)

updatedAt(DateTime!)

Example

{
  "data": {"key": "value"},
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
grossAmount(BigInt!)

id(ID!)

metadata(AccountCreditMetadataType)

netAmount(BigInt!)

note(String!)

reason(String!)

salesTaxAmount(BigInt!)

Example

{
  "id": "abc123",
  "grossAmount": 1,
  "netAmount": 1,
  "salesTaxAmount": 1,
  "note": "abc123",
  "reason": "abc123",
  "metadata": AccountCreditMetadataType
}

Fields

NameDescription
accountNumber(String!)

The account number.

ledgerDebtPositions([LedgerDebtPositionType]!)

The delinquent debt position for each eligible ledger on the account.

Example

{
  "accountNumber": "abc123",
  "ledgerDebtPositions": LedgerDebtPositionType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountEventConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountEventConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountEventConnectionTypeEdge

A Relay edge containing a AccountEventConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountEvent)

The item at the end of the edge

Example

{
  "node": EmailEventType,
  "cursor": "abc123"
}

Fields

NameDescription
category(String!)

fetchUrl(String)

filename(String!)

id(ID!)

The ID of the object

isReady(Boolean)

Is the file ready for use / downloadable?

isUploaded(Boolean)

Is the file uploaded to S3?

sizeInBytes(Int)

Example

{
  "id": "abc123",
  "filename": "abc123",
  "category": "abc123",
  "isUploaded": true,
  "isReady": true,
  "fetchUrl": "abc123",
  "sizeInBytes": 1
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountFileAttachmentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountFileAttachmentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountFileAttachmentConnectionTypeEdge

A Relay edge containing a AccountFileAttachmentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountFileAttachment)

The item at the end of the edge

Example

{
  "node": AccountFileAttachment,
  "cursor": "abc123"
}

Fields

NameDescription
isEligibleForIo(Boolean)

Whether account is eligible to register devices with Intelligent Octopus or not.

Example

{
  "isEligibleForIo": true
}

Fields

NameDescription
loyaltyPoints(Int)

The number of loyalty points the account (or user with the given id) has.

totalMonetaryAmount(Int)

The net monetary value of the loyalty points in the currency's sub-units.

Example

{
  "loyaltyPoints": 1,
  "totalMonetaryAmount": 1
}

AccountManualHoldType

A manual billing document hold on an account.

Fields

NameDescription
createdAt(DateTime!)

When the hold was created.

id(ID!)

The ID of the manual hold.

reasonCode(String!)

The code of the hold reason.

validFrom(DateTime!)

The start of the hold validity period.

validTo(DateTime)

The end of the hold validity period. Null if the hold is open-ended.

Example

{
  "id": "abc123",
  "reasonCode": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
body(String!)

createdAt(DateTime!)

id(ID!)

isPinned(Boolean!)

unpinAt(DateTime)

Example

{
  "id": "abc123",
  "body": "abc123",
  "isPinned": true,
  "createdAt": "2020-01-01T00:00:00.000Z",
  "unpinAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountPaymentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountPaymentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountPaymentConnectionTypeEdge

A Relay edge containing a AccountPaymentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountPaymentType)

The item at the end of the edge

Example

{
  "node": AccountPaymentType,
  "cursor": "abc123"
}

Fields

NameDescription
amount(BigInt!)

Amount of payment in the currency's minor unit

id(ID)

The ID of the payment.

Deprecated

The 'id' field is deprecated.

Please use uuid instead.

- Marked as deprecated on 2026-05-28.
- Scheduled for removal on or after 2027-05-28.

paymentDate(Date!)

The date this payment is scheduled to be debited

paymentInstruction(PaymentInstructionType)

The payment instruction that was used to make this payment.

reference(String!)

status(AccountPaymentStatusOptions)

The current status of the payment.

surchargeAmount(Int)

Surcharge amount generated by this payment.

transactionType(AccountPaymentTransactionTypeChoices)

The transaction type of the payment.

uuid(UUID!)

Example

{
  "id": "abc123",
  "amount": 1,
  "paymentDate": "2020-01-01",
  "reference": "abc123",
  "transactionType": "DD_FIRST_COLLECTION",
  "status": "SCHEDULED",
  "uuid": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "paymentInstruction": PaymentInstructionType,
  "surchargeAmount": 1
}

Fields

NameDescription
account(AccountType!)

createdAt(DateTime!)

namespace(String!)

updatedAt(DateTime!)

value(String!)

Example

{
  "namespace": "abc123",
  "value": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "account": AccountType
}

Fields

NameDescription
content(String)

Reminder content.

dueAt(DateTime)

When the reminder is due.

reminderType(AccountReminderTypes)

The reminder type.

Example

{
  "reminderType": "AD_HOC",
  "content": "abc123",
  "dueAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountReminderConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountReminderConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountReminderConnectionTypeEdge

A Relay edge containing a AccountReminderConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Reminder)

The item at the end of the edge

Example

{
  "node": Reminder,
  "cursor": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountRepaymentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountRepaymentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountRepaymentConnectionTypeEdge

A Relay edge containing a AccountRepaymentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountRepaymentType)

The item at the end of the edge

Example

{
  "node": AccountRepaymentType,
  "cursor": "abc123"
}

Fields

NameDescription
amount(BigInt!)

Amount of payment in the currency's minor unit

id(ID!)

paymentDate(Date!)

The date this payment is scheduled to be debited

paymentUuid(UUID)

The UUID of the payment being refunded.

reason(RepaymentReason)

The reason for the repayment.

status(AccountRepaymentStatusOptions)

The current status of the repayment.

Example

{
  "id": "abc123",
  "amount": 1,
  "paymentDate": "2020-01-01",
  "status": "REQUESTED",
  "reason": "BILLING_ADJUSTMENT",
  "paymentUuid": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

AccountSearchItemType

A single account search hit

Fields

NameDescription
account(AccountType)

The account found.

score(Decimal)

How well the account matched the search terms.

Example

{
  "account": AccountType,
  "score": "1.0"
}

Fields

NameDescription
accountType(AccountTypeChoices)

The type of account.

accountUserAccessors(AccountUserAccessorAccessConnectionTypeConnection)

Account users that have access to this account, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

roleCodes ([String!])

Filter accessors by role codes.

scope (AccessScope)

Whether to return only directly assigned accounts (DIRECT) or all accessible accounts including inherited access (ALL, default).

activeHardshipAgreements([HardshipAgreementType])

List of active hardship agreements for the user when isinhardship is True.

activeReferralSchemes(ReferralSchemeTypes)

The referral schemes currently active for this account.

address(RichAddressType)

The billing address of this account, stored in the new libaddressinput-based format.

Note that name and organization are very unlikely to be supplied here; the billing_name field on the account itself is generally used for that purpose instead.

allProperties([PropertyType])

All properties linked to the account - past, present and future.

annualStatements(AnnualStatementConnectionTypeConnection)

Fetch annual statements for the account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

applications(AccountApplicationConnectionTypeConnection)

Applications by this account to become our customer. More recent applications will be listed first.

Arguments

after (String)

before (String)

first (Int)

last (Int)

status (AccountApplicationStatus)

The account application status.

assistanceAgreements([AssistanceAgreementType])

Assistance agreements for account.

balance(Int!)

The current account balance.

Arguments

includeAllLedgers (Boolean)

If this variable is set to true, the balance will be calculated based on the sum of balances on all ledgers configured to contribute to this account's balance. Otherwise, only the main ledger's balance will be fetched (legacy behaviour). If you are unsure, set this value to true.

bill(BillInterface)

Fetch a specific issued bill (invoice/statement) for the account.

Arguments

billType (BillTypeEnum)

id (ID)

The unique identifier of the bill.

identifier (String)

The unique identifier of the bill. A pending billing document will not have an identifier yet. And not all finalized billing documents will have an identifier. Prefer using the id field unless advised by Kraken.

ledgerNumber (String)

The number of the ledger for the bill. When provided, only the period- or item-based documentfor this account that is linked to that ledger is returned; pre-kraken, collective bills, and legacy bills are excluded.

billingAddress(String)

The billing address of the account.

billingAddressLine1(String)

billingAddressLine2(String)

billingAddressLine3(String)

billingAddressLine4(String)

billingAddressLine5(String)

billingAddressPostcode(String)

billingCountryCode(String)

billingDeliveryPointIdentifier(String)

billingEmail(String)

The billing email of the account.

billingName(String)

The billing name of the account.

billingOptions(BillingOptionsType)

Information about the account's billing cycle.

billingSubName(String)

The billing sub name of the account.

billingTriggerConfiguration(BillingTriggerConfiguration)

The active billing trigger configuration for the account.

bills(BillConnectionTypeConnection)

Fetch issued bills (invoices/statements) for the account.

Arguments

after (String)

before (String)

first (Int)

fromDate (Date)

Optional date representing the beginning of the search results. This date value is inclusive.

includeBillsWithoutPDF (Boolean)

Include bills without PDFs.

includeHeldStatements (Boolean)

Include held statements within the results.

includeHistoricStatements (Boolean)

Include pre-Kraken / historical statements within the results.

includeInvoices (Boolean)

Include item-based billing documents (invoices) within the results.

includeOpenStatements (Boolean)

Include open statements. This flag needs to be used along with includeBillsWithoutPDF=false otherwise results will prove unexpected.

issuedFromDate (Date)

Optional date representing the beginning of the search results based on issued date. This date value is inclusive.

issuedToDate (Date)

Optional date representing the end of the search results based on issued date. This date value is exclusive.

last (Int)

ledgerNumber (String)

The number of a ledger for the bill. When provided, only period- or item-based documents for this account that are linked to that ledger are returned; collective bills and legacy bills are excluded. Historic/pre-Kraken bills are unaffected by this filter and are included or excluded solely by includeHistoricStatements.

offset (Int)

onlyCurrentEmail (Boolean)

Only include bills emailed to the current user's email.

orderBy (BillsOrderBy)

The order in which to return the bills.

toDate (Date)

Optional date representing the end of the search results. This date value is exclusive.

brand(String)

The brand of the account.

business(BusinessType)

Business info related to a business account.

businessType(BusinessTypeOptions)

The company type of a business account.

Deprecated

The 'businessType' field is deprecated.

Use `business.businessType` instead

- Marked as deprecated on 2022-03-09.
- Scheduled for removal on or after 2024-01-01.

campaigns([AccountCampaignType])

The campaigns associated with an account.

canModifyPayments(CanModifyPaymentsType)

Data about whether or not an account can modify their payments.

canRequestRefund(Boolean)

Whether the account can request a credit refund.

commsDeliveryPreference(CommsDeliveryPreference)

The method the account has specified they prefer we contact them.

communicationDeliveryPreference(String)

Deprecated

The 'communicationDeliveryPreference' field is deprecated.

Use `commsDeliveryPreference` instead

- Marked as deprecated on 2022-05-27.
- Scheduled for removal on or after 2024-01-01.

complaints(ComplaintConnectionTypeConnection)

The complaints associated with an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

consents([ConsentType!]!)

Consents linked to this account.

contributionAgreements([ContributionAgreementType])

Contribution agreements for account.

createdAt(DateTime)

The datetime that the account was originally created.

customerAssets([CustomerAssetType])

Get customer assets for an account.

debtCollectionProceedings([DebtCollectionProceedingType])

Debt collection proceedings for account.

directDebitInstructions(DirectDebitInstructionConnectionTypeConnection)

The direct debit instructions of the account

Arguments

after (String)

before (String)

first (Int)

last (Int)

statuses ([DirectDebitInstructionStatus])

Filter the direct debit instructions by status

documentAccessibility(DocumentAccessibilityChoices)

The document accessibility preference of the account.

electricityBalance(String)

The latest balance of the electricity MaLo ledger.

events(AccountEventConnectionTypeConnection)

The account events that were recorded for the account.

Arguments

after (String)

before (String)

eventTypes ([AccountEventType])

Filter the account events by their type.

first (Int)

last (Int)

fileAttachments([AccountFileAttachment])

Files attached to this account.

gasBalance(String)

The latest balance of the gas MaLo ledger.

id(ID!)

isInHardship(Boolean)

True if there is an active Hardship Agreement for this account. False otherwise.

ledgers([LedgerType])

Ledgers provide the foundation of bookkeeping functionality. Similar to a bank account, they allow us to keep track of financial activity on a particular customer account.

Arguments

includeDebtLedgers (Boolean)

If this variable is set to false, debt ledgerswill be filtered out of the ledgers list.

ledgerId (ID)

The ledger to return.

ledgerNumber (String)

The ledger to return by its number.

marketSupplyAgreements(AgreementConnection)

Retrieve all market supply agreements under this account. Note that when active is set to false it actually means 'return both active and inactive agreements'.

Arguments

active (Boolean)

Whether to return active agreements only.

after (String)

before (String)

first (Int)

id (ID)

Filter the list to the agreement with this id.

last (Int)

supplyPointExternalIdentifier (String)

Filter the list to agreements for the supply point with this external identifier.

maximumRefund(MaximumRefundType)

The maximum amount a customer is allowed to request as a refund and the reason why that's the maximum amount.

Arguments

ledgerNumber (String)

The ledger number to calculate maximum refund for.

metadata([Metadata])

Metadata associated with the account.

notes([AccountNoteType])

Notes for the account.

number(String)

A code that uniquely identifies the account.

overdueBalance(Int)

The current account overdue balance.

paginatedFileAttachments(AccountFileAttachmentConnectionTypeConnection)

Files attached to this account.

Arguments

after (String)

before (String)

category (String)

File attachment category.

first (Int)

id (Int)

File attachment id.

last (Int)

paginatedPaymentForecast(PaymentForecastConnectionTypeConnection)

Paginated payment forecasts for an account. Starts from today's date (inclusive). The interface supports last but does not guarantee 'lastness'.

Arguments

after (String)

before (String)

dateTo (Date)

The end date to retrieve forecasts for. This end date is inclusive.

first (Int)

last (Int)

ledgerId (Int)

The ledger to return payment forecasts from. Defaults to the main ledger when no ID is passed.

ledgerNumber (String)

The number of the ledger to return payment forecasts from. Defaults to the main ledger when no number is passed.

partnerAccessors(PartnerAccessorAccessConnectionTypeConnection)

Partners that have access to this account, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

roleCodes ([String!])

Filter accessors by role codes.

scope (AccessScope)

Whether to return only partners assigned directly to this account (DIRECT) or all partners with access including inherited access (ALL, default).

paymentForecast([PaymentForecastType])

A list displaying the payment forecast for an account. The list starts from today's date (inclusive).

Deprecated

The 'paymentForecast' field is deprecated.

Please use 'paginatedPaymentForecast' instead.

- Marked as deprecated on 2024-01-03.
- Scheduled for removal on or after 2025-01-01.

Arguments

dateTo (Date!)

The end date to retrieve forecasts for. This end date is inclusive.

ledgerId (Int)

The ledger to return payment forecasts from. Defaults to the main ledger when no ID is passed.

ledgerNumber (String)

The number of the ledger to return payment forecasts from. Defaults to the main ledger when no number is passed.

paymentMethods(PaymentInstructionConnectionTypeConnection)

The payment instructions of the account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

statuses ([PaymentInstructionStatus])

Filter the payment instructions by status.

paymentPlans(PaymentPlanConnectionTypeConnection)

The payment plans that have been created for this account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

paymentSchedules(PaymentScheduleConnectionTypeConnection)

The schedules that describe how we would expect to take payments for an account on a given month.

Arguments

active (Boolean)

activeOnDate (Date)

after (String)

before (String)

canCreatePayment (Boolean)

first (Int)

includeDormant (Boolean)

If false, we remove the currently valid schedule if it has already fulfilled its purpose and will have no further impact on customer payments, along with any schedules which are not valid from today.

last (Int)

ledgerId (ID)

The ledger id to return the payment schedules from.

ledgerNumber (String)

The ledger number to return the payment schedules from.

ledgerType (Int)

The ledger to return transactions from.

payments(AccountPaymentConnectionTypeConnection)

The payments made into an account from a payment instruction.

Arguments

after (String)

before (String)

first (Int)

includePromises (Boolean)

Whether to include payment promises (of any kind: made, broken or fulfilled) or not. The default is to include them.

last (Int)

ledgerId (String)

The id of the ledger to return payments from.

ledgerNumber (String)

WARNING: Will be mandatory in future versions

The number of the ledger to return payments from.

reason (PaymentReasonOptions)

Filter for payments that were taken for a particular reason.

portfolio(PortfolioType)

The portfolio this account is linked to.

preferredLanguageForComms(String)

The language that the account preferred for communications.

properties([PropertyType])

Properties linked to the account now and in the future.

Arguments

activeFrom (DateTime)

Returns properties that have an effective period that ends at or after the given activeFrom datetime.

property(PropertyType)

Fetch a specific property linked to the account.

Arguments

id (ID)

Property ID.

provisionalTransactions(ProvisionalTransactionConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

references([AccountReferenceType])

Account references linked to this account.

referrals(ReferralConnectionTypeConnection)

The referrals created by this account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

status (ReferralStatus)

Only return referrals with the specified status. Return all referrals by default.

referralsCreated(Int)

Number of referrals created by this account.

reminders(AccountReminderConnectionTypeConnection)

The reminders associated with an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

repayments(AccountRepaymentConnectionTypeConnection)

The repayments that have been requested for this account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

statuses ([AccountRepaymentStatusOptions])

Only return repayments whose status matches one of these statuses.

requestRefundEligibility(RequestRefundEligibilityType)

Details about the eligibility status for requesting a refund.

Arguments

ledgerNumber (String)

The ledger number to check refund eligibility.

rewards([RewardType])

The rewards applied to this account.

splitBillingAddress([String])

List of billing address lines.

status(AccountStatus)

The current status of the account.

transactions(TransactionConnectionTypeConnection)

Fetch transactions that have taken place on the account.

Arguments

after (String)

before (String)

first (Int)

fromDate (Date)

Optional date representing the beginning of the postedDate range filter. This date value is inclusive.

includeAllLedgers (Boolean)

In a multi-ledger scenario, include all ledgers' transactions if true. Analogously, if false and no ledgerId or ledger_number argument is present, the list of transactions defaults to the main ledger (legacy behaviour).

last (Int)

ledgerId (Int)

The ledger to return transactions from.

ledgerNumber (String)

The number of the ledger to return transactions from.

offset (Int)

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

toDate (Date)

Optional date representing the end of the postedDate range filter. This date value is exclusive.

transactionTypes ([TransactionTypeFilter])

Include only these specific transaction types in the result.

transactionTypesExcluded ([TransactionTypeFilter])

Exclude these specific transaction types from the result.

urn(String)

Unique reference number from a 3rd party enrolment.

users([AccountUserType!]!)

Example

{
  "brand": "abc123",
  "status": "PENDING",
  "balance": 1,
  "overdueBalance": 1,
  "urn": "abc123",
  "billingName": "abc123",
  "billingSubName": "abc123",
  "billingEmail": "abc123",
  "billingAddress": "abc123",
  "billingAddressLine1": "abc123",
  "billingAddressLine2": "abc123",
  "billingAddressLine3": "abc123",
  "billingAddressLine4": "abc123",
  "billingAddressLine5": "abc123",
  "billingAddressPostcode": "abc123",
  "billingCountryCode": "abc123",
  "billingDeliveryPointIdentifier": "abc123",
  "splitBillingAddress": ["abc123"],
  "address": RichAddressType,
  "number": "abc123",
  "portfolio": PortfolioType,
  "ledgers": [LedgerType],
  "metadata": [Metadata],
  "canRequestRefund": true,
  "requestRefundEligibility": RequestRefundEligibilityType,
  "payments": AccountPaymentConnectionTypeConnection,
  "repayments": AccountRepaymentConnectionTypeConnection,
  "paymentPlans": PaymentPlanConnectionTypeConnection,
  "paymentSchedules": PaymentScheduleConnectionTypeConnection,
  "paymentForecast": [PaymentForecastType],
  "paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
  "referrals": ReferralConnectionTypeConnection,
  "referralsCreated": 1,
  "rewards": [RewardType],
  "activeReferralSchemes": ReferralSchemeTypes,
  "transactions": TransactionConnectionTypeConnection,
  "provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
  "annualStatements": AnnualStatementConnectionTypeConnection,
  "bills": BillConnectionTypeConnection,
  "billingOptions": BillingOptionsType,
  "billingTriggerConfiguration": BillingTriggerConfiguration,
  "bill": BillInterface,
  "directDebitInstructions": DirectDebitInstructionConnectionTypeConnection,
  "paymentMethods": PaymentInstructionConnectionTypeConnection,
  "events": AccountEventConnectionTypeConnection,
  "applications": AccountApplicationConnectionTypeConnection,
  "accountType": "BUSINESS",
  "businessType": "SOLE_TRADER",
  "business": BusinessType,
  "commsDeliveryPreference": "EMAIL",
  "communicationDeliveryPreference": "abc123",
  "documentAccessibility": "LARGE_PRINT",
  "references": [AccountReferenceType],
  "fileAttachments": [AccountFileAttachment],
  "paginatedFileAttachments": AccountFileAttachmentConnectionTypeConnection,
  "maximumRefund": MaximumRefundType,
  "campaigns": [AccountCampaignType],
  "isInHardship": true,
  "activeHardshipAgreements": [HardshipAgreementType],
  "contributionAgreements": [ContributionAgreementType],
  "assistanceAgreements": [AssistanceAgreementType],
  "createdAt": "2020-01-01T00:00:00.000Z",
  "preferredLanguageForComms": "abc123",
  "consents": ConsentType,
  "reminders": AccountReminderConnectionTypeConnection,
  "customerAssets": [CustomerAssetType],
  "partnerAccessors": PartnerAccessorAccessConnectionTypeConnection,
  "accountUserAccessors": AccountUserAccessorAccessConnectionTypeConnection,
  "complaints": ComplaintConnectionTypeConnection,
  "id": "abc123",
  "users": AccountUserType,
  "properties": [PropertyType],
  "marketSupplyAgreements": AgreementConnection,
  "canModifyPayments": CanModifyPaymentsType,
  "allProperties": [PropertyType],
  "property": PropertyType,
  "electricityBalance": "abc123",
  "gasBalance": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountUserAccessorAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountUserAccessorAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountUserAccessorAccessConnectionTypeEdge

A Relay edge containing a AccountUserAccessorAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountUserAccessorAccessType)

The item at the end of the edge

Example

{
  "node": AccountUserAccessorAccessType,
  "cursor": "abc123"
}

AccountUserAccessorAccessType

Represents an account user and their access information to an entity.

Fields

NameDescription
accessor(AccountUserType!)

The account user that has access to the entity.

roleAssignments([RoleAssignment!]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment,
  "accessor": AccountUserType
}

AccountUserCommsPreferences

Information about the preferences set up for a user.

Fields

NameDescription
emailFormat(EmailFormats)

What format the user would like to receive their emails in.

fontSizeMultiplier(Float)

This setting allows the user to adjust the default font size of the communications sent to them.

isOptedInMeterReadingConfirmations(Boolean)

Whether the user has opted in to receive meter reading confirmation emails.

isOptedInToClientMessages(Boolean)

Whether a user has opted in to receive messages from the client or client group. For example, for Octopus Energy this describes whether a user is opted in to offers from Octopus Investments.

isOptedInToLifeSupportCall(Boolean)

Whether the user is opted in to life support call.

isOptedInToOfferMessages(Boolean)

Whether a user has opted in to receive messages offering discounts or other services not directly related to the services the client provides.

isOptedInToRecommendedMessages(Boolean)

Whether a user has opted in to receive messages we recommend they read, but are not vital to the utilities the client provides. For example, these could be reminders that the client will take a payment.

isOptedInToSmsMessages(Boolean)

Whether the user has opted in to receive SMS messages.

isOptedInToThirdPartyMessages(Boolean)

Whether a user has opted in to receive messages from the client's preferred third parties.

isOptedInToUpdateMessages(Boolean)

Whether a user has opted in to receive messages updating them on client activities.

isUsingInvertedEmailColours(Boolean)

Whether a user has opted to have inverted colours in their emails. This is currently only relevant to the Octopus Energy brand, whose emails have a dark background by default.

preferredHoldMusic(Songs)

Song which will be used as hold music for the user.

smsOptInLastChangeDate(DateTime)

The date the SMS opt-in was last changed.

Example

{
  "isOptedInToClientMessages": true,
  "isOptedInToOfferMessages": true,
  "isOptedInToRecommendedMessages": true,
  "isOptedInToUpdateMessages": true,
  "isOptedInToThirdPartyMessages": true,
  "emailFormat": "TEXT",
  "isUsingInvertedEmailColours": true,
  "fontSizeMultiplier": 1.0,
  "isOptedInMeterReadingConfirmations": true,
  "isOptedInToSmsMessages": true,
  "preferredHoldMusic": "NO_SONG_PREFERRED",
  "smsOptInLastChangeDate": "2020-01-01T00:00:00.000Z",
  "isOptedInToLifeSupportCall": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AccountUserConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AccountUserConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AccountUserConnectionTypeEdge

A Relay edge containing a AccountUserConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AccountUserType)

The item at the end of the edge

Example

{
  "node": AccountUserType,
  "cursor": "abc123"
}

AccountUserConsents

Information about the consents for an account user.

Fields

NameDescription
consents([ConsentType!]!)

Consents linked to this user.

Example

{
  "consents": ConsentType
}

Fields

NameDescription
isSensitive(Boolean)

Whether the value is sensitive and encrypted.

namespace(String)

The namespace for the property.

value(String)

The property value.

Example

{
  "namespace": "abc123",
  "value": "abc123",
  "isSensitive": true
}

AccountUserPermission

Holds information about a specific permission.

Fields

NameDescription
permission(String)

The short name of the permission.

Example

{
  "permission": "abc123"
}

AccountUserRoleType

The role a user has in association with one account.

Fields

NameDescription
account(AccountType!)

id(ID!)

The ID of the account user role.

Deprecated

The 'id' field is deprecated.

An access allocation's identifier is internal to the Customer Access domain. Access is identified by who it affects, not by the row that records it: please use 'user', 'account' and 'role' instead.

- Marked as deprecated on 2026-09-02.
- Scheduled for removal on or after 2026-11-01.

role(RoleString)

The account role.

user(AccountUserType!)

Example

{
  "id": "abc123",
  "account": AccountType,
  "user": AccountUserType,
  "role": RoleString
}

AccountUserType

User objects are the core of the authentication system. They typically represent a customer who manages a portfolio of one or more accounts.

Fields

NameDescription
accessibleAccounts(AccountAccessConnectionTypeConnection)

Accounts this user can access, with the roles granting that access.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

scope (AccessScope)

Whether to include access inherited via portfolio/business, or only direct access.

accessibleBusinesses(BusinessAccessConnectionTypeConnection)

Businesses this user can access, with the roles granting that access.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

accessiblePortfolios(PortfolioAccessConnectionTypeConnection)

Portfolios this user can access, with the roles granting that access.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

scope (AccessScope)

Whether to include access inherited via a business the user belongs to or the portfolio hierarchy.

accountUserRoles([AccountUserRoleType])

List of roles a user has for each account they're linked to.

Arguments

accountNumber (String)

Optionally filter the user's account roles to only return those linked to specific accounts.

accounts([AccountInterface])

List of accounts that the user is linked to either via portfolio role or account role.

Arguments

allowedBrandCodes ([BrandChoices])

Optionally filter the user's accounts to only return those linked to portfolios on the specified brands.

excludeAccountTypes ([AccountTypeChoices])

Optionally exclude accounts with any of the given account types.

excludeAccountsWithoutAgreements (Boolean)

Optionally exclude accounts that have never had an agreement.

restrictToAccountNumbers ([String])

Optionally restrict user accounts to only return those with the specified account numbers.

restrictToPublicFacingBrands (Boolean)

Optionally restrict user accounts to only return those linked to portfolios on public facing brands.

address(RichAddressType)

This user's address.

alternativePhoneNumbers([String])

List of alternative phone numbers for the account user.

businesses(BusinessConnectionTypeConnection)

List of businesses that the user has access to through their granted roles.

Arguments

after (String)

before (String)

first (Int)

last (Int)

consents([ConsentType!]!)

Consents linked to this user.

contactEmails([ContactEmailType])

The account user's contact email addresses. Unlike the email field, a contact email does not have to be unique: the same address can belong to several account users.

createdAt(DateTime!)

dateOfBirth(Date)

AccountUser's date of birth.

details([AccountUserDetailType])

List of details linked to this user.

displayName(String)

We recommend you use fullName instead of this field.

Deprecated

The 'displayName' field is deprecated.

Please use fullName instead of this field.

- Marked as deprecated on 2019-12-11.
- Scheduled for removal on or after 2024-01-01.

email(String!)

externalId(String)

The value set in the configured external ID details namespace.

familyName(String!)

firstName(String)

We recommend you use preferredName or fullName instead of this field.

Deprecated

The 'firstName' field is deprecated.

Use 'givenName' instead.

- Marked as deprecated on 2020-09-23.
- Scheduled for removal on or after 2023-06-05.

fullName(String)

The user's full name.

givenName(String!)

hasFamilyIssues(Boolean)

Whether there are family issues.

id(ID!)

The unique identifier of the account user.

isActive(Boolean)

Whether this user is active.

isDeceased(Boolean!)

Designates whether this user is deceased.

isInHardship(Boolean)

True if user is linked to an account with an active hardship agreement.

label(String)

A free text field to help identifying the customer (e.g. for a job title).

landline(String!)

landlinePhoneNumber(String)

The user's landline phone number.

Deprecated

The 'landlinePhoneNumber' field is deprecated.

Use 'landline' instead.

- Marked as deprecated on 2021-03-22.
- Scheduled for removal on or after 2024-01-01.

lastName(String)

We recommend you use preferredName or fullName instead of this field.

Deprecated

The 'lastName' field is deprecated.

Use 'familyName' instead.

- Marked as deprecated on 2020-09-23.
- Scheduled for removal on or after 2023-06-05.

liveSecretKey(String)

The user's secret key to access the Developer API.

mobile(String!)

number(String)

A code that uniquely identifies the account user.

paymentMethods(PaymentInstructionConnectionTypeConnection)

List payment instructions linked to this user.

Arguments

after (String)

before (String)

first (Int)

last (Int)

statuses ([PaymentInstructionStatus])

Optionally filter the payment instructions by status.

validAt (DateTime)

Optionally return only payment instructions valid at the given datetime.

permissions([AccountUserPermission])

Holds information about the permissions of the current viewer.

portfolioId(ID)

We recommend you use portfolioIds instead of this field.

Deprecated

The 'portfolioId' field is deprecated.

Please use 'portfolioIds' instead.

- Marked as deprecated on 2022-08-04.
- Scheduled for removal on or after 2024-01-01.

portfolioIds([ID])

List of portfolio ids that the user is linked to via their portfolio roles.

Arguments

allowedBrandCodes ([BrandChoices])

Optionally filter the user's portfolios to only return those linked to specified brands.

restrictToPublicFacingBrands (Boolean)

Optionally restrict the user portfolios to only return those linked to public facing brands.

portfolioUserRoles([PortfolioUserRoleType])

List of roles a user has for each portfolio they're linked to.

Arguments

accountNumber (String)

Return the user portfolio roles for this account's portfolio.

portfolioNumber (String)

Optionally filter the portfolio's user roles to only return those linked to a specific portfolio.

portfolios(PortfolioConnectionTypeConnection)

List of portfolios that the user is linked to via their portfolio roles.

Arguments

after (String)

allowedBrandCodes ([BrandChoices])

Optionally filter the user's portfolios to only return those linked to specified brands.

before (String)

first (Int)

last (Int)

restrictToPublicFacingBrands (Boolean)

Optionally restrict the user portfolios to only return those linked to public facing brands.

preferences(AccountUserCommsPreferences)

preferredName(String)

The user's preferred name.

pronouns(String)

The user's pronouns e.g. 'she/her', 'he/him', 'they/them'.

specialCircumstances(SpecialCircumstancesType)

title(String)

Example

{
  "id": "abc123",
  "number": "abc123",
  "givenName": "abc123",
  "familyName": "abc123",
  "email": "abc123",
  "mobile": "abc123",
  "landline": "abc123",
  "title": "abc123",
  "pronouns": "abc123",
  "isDeceased": true,
  "liveSecretKey": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "permissions": [AccountUserPermission],
  "accounts": AccountInterface,
  "accessibleAccounts": AccountAccessConnectionTypeConnection,
  "accessiblePortfolios": PortfolioAccessConnectionTypeConnection,
  "displayName": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "fullName": "abc123",
  "preferredName": "abc123",
  "isActive": true,
  "address": RichAddressType,
  "portfolioId": "abc123",
  "portfolioIds": ["abc123"],
  "portfolios": PortfolioConnectionTypeConnection,
  "businesses": BusinessConnectionTypeConnection,
  "accessibleBusinesses": BusinessAccessConnectionTypeConnection,
  "specialCircumstances": SpecialCircumstancesType,
  "preferences": AccountUserCommsPreferences,
  "dateOfBirth": "2020-01-01",
  "label": "abc123",
  "landlinePhoneNumber": "abc123",
  "alternativePhoneNumbers": ["abc123"],
  "contactEmails": [ContactEmailType],
  "hasFamilyIssues": true,
  "isInHardship": true,
  "accountUserRoles": [AccountUserRoleType],
  "portfolioUserRoles": [PortfolioUserRoleType],
  "externalId": "abc123",
  "details": [AccountUserDetailType],
  "consents": ConsentType,
  "paymentMethods": PaymentInstructionConnectionTypeConnection
}

Fields

NameDescription
username(String)

Username of the Actor.

Example

{
  "username": "abc123"
}

Fields

NameDescription
contract(Contract)

The contract actualized.

Example

{
  "contract": Contract
}

AddBusinessToSegmentMutation

Output type of the addBusinessToSegment mutation.

Fields

NameDescription
businessSegmentPeriod(BusinessSegmentPeriodType)

The business segment period that was created.

Example

{
  "businessSegmentPeriod": BusinessSegmentPeriodType
}

AddCampaignToAccount

Output type of the addCampaignToAccount mutation.

Fields

NameDescription
campaignAdded(Boolean)

Whether the campaign was successfully added.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "campaignAdded": true,
  "possibleErrors": [PossibleErrorType]
}

AddChildToProperty

Output type of the addChildToProperty mutation.

Fields

NameDescription
child(PropertyType)

The child property that was added to the parent.

Example

{
  "child": PropertyType
}

AddItemsToRiskList

Output type of the addItemsToRiskList mutation.

Fields

NameDescription
riskIdentifiers([RiskListItemType])

List of successfully added risk identifiers.

Example

{
  
}

AddNoteToInkConversation

Output type of the addNoteToInkConversation mutation.

Fields

NameDescription
note(InkNote)

The ink conversation note.

Example

{
  
}

AddOpportunityEvent

Output type of the addOpportunityEvent mutation.

Fields

NameDescription
eventType(String)

The event type that was added.

Example

{
  "eventType": "abc123"
}

AddParentToProperty

Output type of the addParentToProperty mutation.

Fields

NameDescription
parent(PropertyType)

The parent property that was added to the child.

Example

{
  "parent": PropertyType
}

AddPartnerUserToTeam

Output type of the addPartnerUserToTeam mutation.

Fields

NameDescription
partnerUser(PartnerUserType)

The partner user that was added to the team.

Example

{
  
}

AddPortfolioReference

Output type of the addPortfolioReference mutation.

Fields

NameDescription
portfolioNumber(String)

Number of the portfolio to which the reference was added.

Example

{
  "portfolioNumber": "abc123"
}

AddProperty

Output type of the addProperty mutation.

Fields

NameDescription
property(PropertyType)

The property that was added to the account.

Example

{
  "property": PropertyType
}

AddPropertyToHierarchy

Output type of the addPropertyToHierarchy mutation.

Fields

NameDescription
property(PropertyType)

The property that was added to the hierarchy.

Example

{
  "property": PropertyType
}

AddSignupReferralOnAccount

Output type of the addSignupReferralOnAccount mutation.

Fields

NameDescription
accountReferral(ReferralType)

The created account referral instance.

Example

{
  "accountReferral": ReferralType
}

AddStorylineToInkConversation

Output type of the addStorylineToInkConversation mutation.

Fields

NameDescription
storyline(InkStoryline)

The storyline that was added to the conversation.

Example

{
  
}

AddUserToPortfolio

Output type of the addUserToPortfolio mutation.

Fields

NameDescription
roleCode(String)

The code of the role added to the user.

Example

{
  "roleCode": "abc123"
}

AddressFieldConfigType

Configuration for a single field in an address form.

Fields

NameDescription
default(String)

Pre-filled seed value shown before any user interaction. Null if not set.

errors([String!]!)

Validation error messages for this field. Empty when the field is valid or no validation has been run.

fieldType(AddressFieldTypeEnum!)

Input widget type to render for this field.

hasAutocomplete(Boolean!)

Whether this field's SELECT options are fetched via the autocompleteAddressFieldOptions query rather than inlined in options. When true, options is empty and the client should call that query with this field's name.

label(String!)

Country-specific human-readable label, e.g. 'Suburb' or 'Postcode'.

name(String!)

Machine identifier for the field, e.g. 'locality' or 'postal_code'.

options([AddressFieldOptionType!])

Available options for SELECT fields with a fixed option list. Empty for autocompletable SELECT fields (see hasAutocomplete); fetch those via the autocompleteAddressFieldOptions query instead. Null for all other field types.

placeholder(String)

Hint text shown inside the input when it is empty.

userEditable(Boolean!)

Whether the user can interact with this field. False for hidden fields.

validation(AddressFieldValidationRuleType!)

Client-side validation constraints for this field.

value(String)

Submitted or pre-loaded form value. Null if not set.

Example

{
  "name": "abc123",
  "label": "abc123",
  "fieldType": "TEXT",
  "validation": AddressFieldValidationRuleType,
  "options": [AddressFieldOptionType],
  "hasAutocomplete": true,
  "userEditable": true,
  "default": "abc123",
  "placeholder": "abc123",
  "value": "abc123",
  "errors": "abc123"
}

AddressFieldDescriptorType

Describes the structure of an address form for a given country, including all field groups, field configurations, and validation rules.

Fields

NameDescription
fieldGroups([AddressFieldGroupType!]!)

Ordered list of field groups making up the address form.

Example

{
  "fieldGroups": AddressFieldGroupType
}

AddressFieldGroupType

A named group of address fields forming a logical section of the form.

Fields

NameDescription
fields([AddressFieldConfigType!]!)

Ordered list of fields in this group.

label(String)

Optional UI section heading. Null for unlabelled groups.

name(String!)

Machine identifier for the group, e.g. 'addressfields' or 'countryselection'.

Example

{
  "name": "abc123",
  "label": "abc123",
  "fields": AddressFieldConfigType
}

AddressFieldOptionType

A single selectable option for a SELECT address field.

Fields

NameDescription
label(String!)

Human-readable text shown in the dropdown, e.g. 'New South Wales'.

value(String!)

The raw value submitted with the form, e.g. 'NSW'.

Example

{
  "value": "abc123",
  "label": "abc123"
}

AddressFieldValidationRuleType

Client-side validation constraints for an address field. These rules can be enforced without a server round-trip.

Fields

NameDescription
maxLength(Int)

Maximum number of characters allowed. Null if no limit.

regex(String)

Regular expression the submitted value must match. Null if unrestricted.

required(Boolean!)

Whether the field must be filled before submitting.

Example

{
  "required": true,
  "maxLength": 1,
  "regex": "abc123"
}

Fields

NameDescription
countryCode(String)

Country code of billing address.

line1(String)

Line 1 of address.

line2(String)

Line 2 of address.

line3(String)

Line 3 of address.

line4(String)

Line 4 of address.

line5(String)

Line 5 of address.

postcode(String)

Postcode of billing address.

Example

{
  "line1": "abc123",
  "postcode": "abc123",
  "countryCode": "abc123",
  "line2": "abc123",
  "line3": "abc123",
  "line4": "abc123",
  "line5": "abc123"
}

AffiliateAudioRecordingPresignedPostType

Metadata returned when generating a pre-signed post URL for an affiliate.

Fields

NameDescription
bucket(String!)

The S3 bucket.

fields(JSONString!)

The fields to be included in the pre-signed post.

key(String!)

The S3 bucket key.

preSignedUrl(String!)

The pre-signed S3 URL.

Example

{
  "key": "abc123",
  "bucket": "abc123",
  "fields": {"key": "value"},
  "preSignedUrl": "abc123"
}

AffiliateLinkType

Affiliate link for the organization.

Fields

NameDescription
contactEmail(String!)

contactName(String!)

id(ID!)

isBusiness(Boolean!)

landingUrl(String!)

organisation(AffiliateOrganisationType)

Affiliate Organisation.

subdomain(String!)

trainingStatus(LinkTrainingStatus!)

Example

{
  "id": "abc123",
  "subdomain": "abc123",
  "trainingStatus": "NOT_APPLICABLE",
  "isBusiness": true,
  "contactName": "abc123",
  "contactEmail": "abc123",
  "landingUrl": "abc123"
}

Fields

NameDescription
accessibleAccounts(AccountAccessConnectionTypeConnection)

Accounts this partner can access, with the roles granting that access.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

scope (AccessScope)

Whether to return only directly assigned accounts (DIRECT) or all accessible accounts including inherited access (ALL, default).

accessibleBusinesses(BusinessAccessConnectionTypeConnection)

Businesses this partner can access, with the roles granting that access.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

allowAlternativePaymentMethods(Boolean)

Is this partner allowed to specify payment methods other than Direct Debit in the import csv or API.

canRegisterBusinessMeterPoints(Boolean)

Are meter point registrations limited for profile classes 1 and 2 for registrations from csv or API.

canRegisterCustomersWithoutEmailAddress(Boolean)

Allow registration requests with customers without an email address.

canRegisterPortfolioAccounts(Boolean)

Allow registration requests with exiting account user emails to add to the portfolio belonging to the account user.

canRenewTariffs(Boolean)

Allow performing tariff renewals via API.

canUseIvrSupportApi(Boolean)

Allow this partner access to the IVR support API (modify their own IVR handling through third party 'IVR Flow Editor').

contactEmail(String!)

The primary contact email for the organisation.

defaultAccountType(AccountTypeChoices)

Default Account Type.

id(ID!)

The ID of the affiliate organisation.

isFieldSalesOnlyProduct(Boolean)

Restrict to field-sales-only products? This is only allowed for the 'field-sales' and 'events' sales channels.

name(String!)

The name of the affiliate organisation.

number(String!)

Unique identifier for the organisation in the format O-XXXXXXXX.

partnerUserAccessors(PartnerUserAccessorAccessConnectionTypeConnection)

Partner users that have access to this partner, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

references([OrganisationReferenceType])

External references attached to the organisation, keyed by namespace.

salesChannel(SalesChannelChoices)

Sales Channel.

Deprecated

The 'salesChannel' field is deprecated.

Please use salesChannelCode instead.

- Marked as deprecated on 2025-07-17.
- Scheduled for removal on or after 2025-10-17.

salesChannelCode(String)

Sales Channel Code.

skipMeterPointAddressValidation(Boolean)

Allow this partner to skip validation that ensures all meter points belong to the same address.

Example

{
  "id": "abc123",
  "number": "abc123",
  "name": "abc123",
  "contactEmail": "abc123",
  "salesChannel": "DEFAULT_SUPPLY",
  "salesChannelCode": "abc123",
  "defaultAccountType": "BUSINESS",
  "canRegisterBusinessMeterPoints": true,
  "canRegisterPortfolioAccounts": true,
  "canRegisterCustomersWithoutEmailAddress": true,
  "skipMeterPointAddressValidation": true,
  "allowAlternativePaymentMethods": true,
  "canRenewTariffs": true,
  "canUseIvrSupportApi": true,
  "isFieldSalesOnlyProduct": true,
  "accessibleAccounts": AccountAccessConnectionTypeConnection,
  "accessibleBusinesses": BusinessAccessConnectionTypeConnection,
  "partnerUserAccessors": PartnerUserAccessorAccessConnectionTypeConnection
}

AffiliateSessionType

A tracked session for the affiliate link.

Fields

NameDescription
id(ID!)

ipAddress(String)

link(AffiliateLinkType)

Affiliate Link.

queryParams(JSONString!)

userAgent(String!)

Example

{
  "id": "abc123",
  "ipAddress": "abc123",
  "userAgent": "abc123",
  "queryParams": {"key": "value"}
}

Fields

NameDescription
id(ID)

The ID of the agent auxiliary status.

status(String)

The current auxiliary status of the agent.

updatedAt(DateTime)

The timestamp when the status was last updated.

Example

{
  "id": "abc123",
  "status": "abc123",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
id(ID)

The ID of the agent call center status.

mostRecentCallId(Int)

The ID of the most recent call handled by the agent. If the agent status is BUSY then this will be the ID of the current call.

status(String)

The current status of the agent in the call center.

updatedAt(DateTime)

The timestamp when the status was last updated.

Example

{
  "id": "abc123",
  "status": "abc123",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "mostRecentCallId": 1
}

Fields

NameDescription
agreedAt(DateTime)

The datetime when the agreement was agreed.

earliestCancellationDate(Date)

The earliest date that can legally be set as the last day of supply for this agreement, based on minimum term and notice period.

estimatedAnnualConsumption(Int)

The annual consumption given by the customer in kWh.

estimatedMonthlyBillInEuros(Decimal)

The estimated monthly bill in €.

id(Int)

isActive(Boolean)

Whether the agreement is active.

isAffectedByPriceBrake(Boolean)

Whether the agreement is affected by the price brakes.

isRevoked(Boolean)

Whether the agreement is revoked.

isTerminated(Boolean)

Whether the agreement is terminated.

monthlyStandingCharge(Decimal)

The monthly standing charge in €.

Deprecated

The 'monthlyStandingCharge' field is deprecated.

Use standing_charge_gross_rate_information instead.

- Marked as deprecated on 2023-08-14.
- Scheduled for removal on or after 2024-01-01.

netMonthlyStandingCharge(Decimal)

The net monthly standing charge in €.

product(Product)

ratesAgreedAt(DateTime)

The datetime when the rates were agreed.

standingChargeGrossRateInformation([GrossRateInformation])

A list of gross rate information which is relevant to the standing charge (€/month).

unitRateGrossRateInformation([GrossRateInformation])

A list of the gross rate information which is relevant to the unit rate (ct/kWh).

Deprecated

The 'unitRateGrossRateInformation' field is deprecated.

Use unit_rate_information instead

- Marked as deprecated on 2023-08-14.
- Scheduled for removal on or after 2024-01-01.

unitRateInformation(UnitRateInformation!)

The unit rate information.

unitRatePerKwh(Decimal)

The unit rate per kWh in €.

Deprecated

The 'unitRatePerKwh' field is deprecated.

Use unit_rate_information instead.

- Marked as deprecated on 2023-08-14.
- Scheduled for removal on or after 2024-01-01.

validFrom(DateTime)

The datetime when the agreement is valid from.

validTo(DateTime)

The datetime when the agreement is valid to.

Example

{
  "id": 1,
  "product": Product,
  "monthlyStandingCharge": "1.0",
  "netMonthlyStandingCharge": "1.0",
  "standingChargeGrossRateInformation": [GrossRateInformation],
  "unitRatePerKwh": "1.0",
  "unitRateGrossRateInformation": [GrossRateInformation],
  "unitRateInformation": SimpleProductUnitRateInformation,
  "estimatedMonthlyBillInEuros": "1.0",
  "estimatedAnnualConsumption": 1,
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "agreedAt": "2020-01-01T00:00:00.000Z",
  "ratesAgreedAt": "2020-01-01T00:00:00.000Z",
  "isRevoked": true,
  "isActive": true,
  "isTerminated": true,
  "isAffectedByPriceBrake": true,
  "earliestCancellationDate": "2020-01-01"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AgreementEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AgreementEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AgreementEdge

A Relay edge containing a Agreement and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CommonAgreementType)

The item at the end of the edge

Example

{
  "node": CommonAgreementType,
  "cursor": "abc123"
}

AgreementRescissionType

Details of an agreement rescission

Fields

NameDescription
agreement(CommonAgreementType!)

createdAt(DateTime!)

failureReason(String!)

flowReference(String)

id(ID!)

status(AgreementRescissionStatus)

The current status of the agreement rescission.

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "status": "IN_PROGRESS",
  "failureReason": "abc123",
  "flowReference": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "agreement": CommonAgreementType
}

Fields

NameDescription
actualSendDate(Date)

agreement(CommonAgreementType!)

createdAt(DateTime!)

expectedSendDate(Date!)

failureReason(String!)

id(ID!)

number(String!)

params(JSONString!)

quoteRequests([MarketSupplyQuoteRequestType!]!)

rolledOnTo(CommonAgreementType)

rolloverType(AgreementRolloverRolloverType!)

status(AgreementRolloverStatus!)

suppressComms(Boolean!)

tags([String])

List of tag names associated with this agreement rollover.

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "number": "abc123",
  "rolloverType": "DEFAULT",
  "expectedSendDate": "2020-01-01",
  "status": "PENDING",
  "params": {"key": "value"},
  "failureReason": "abc123",
  "actualSendDate": "2020-01-01",
  "suppressComms": true,
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "tags": ["abc123"],
  "agreement": CommonAgreementType,
  "rolledOnTo": CommonAgreementType
}

Fields

NameDescription
allocationAmount(Int!)

The amount of the transaction that has been allocated to the billing document. A positive amount indicates money received from the customer (payments, credits). A negative amount indicates money paid to the customer (repayments).

allocationReason(String)

Reason for the allocation intention.

transactionAmount(Int!)

The amount of the transaction. A positive amount indicates money received from the customer (payments, credits). A negative amount indicates money paid to the customer (repayments).

transactionId(Int!)

ID of the allocated transaction.

transactionType(TransactionTypes!)

The type of the transaction.

Example

{
  "transactionId": 1,
  "transactionType": "CREDIT",
  "transactionAmount": 1,
  "allocationAmount": 1,
  "allocationReason": "abc123"
}

AllocationType

Represents an allocation of a fulfilment to an obligation.

Fields

NameDescription
amount(Int!)

The amount of the allocation (in minor currency units), unsigned.

fulfilment(FulfilmentType!)

The fulfilment that is allocated.

Example

{
  "amount": 1,
  "fulfilment": FulfilmentType
}

AllowRepaymentSubmission

Output type of the allowRepaymentSubmission mutation.

Fields

NameDescription
repaymentId(ID)

The repayment ID.

repaymentIntervention(RepaymentInterventionType)

Resulting Repayment Intervention details.

Example

{
  "repaymentId": "abc123"
}

Fields

NameDescription
type(LineLinkErrorType!)

The type of error that occurred.

Example

{
  "type": "NO_MATCHING_LINE_LINK"
}

Fields

NameDescription
contract(Contract)

The contract after the subject amendments have been applied.

Example

{
  "contract": Contract
}

AmendPayment

Output type of the amendPayment mutation.

Fields

NameDescription
payment(AccountPaymentType)

Example

{
  "payment": AccountPaymentType
}

AnimationType

A media element containing an animation, such as a Lottie.

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

horizontalAlignment(Alignment)

The horizontal alignment of the media.

id(ID)

Unique identifier of the object.

mediaUrl(String!)

The resource URL of the media.

typename(String)

The name of the object's type.

width(ItemSizeType)

The measurement of the element.

Example

{
  "width": FractionSizeType,
  "mediaUrl": "abc123",
  "horizontalAlignment": "START",
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123",
  "id": "abc123",
  "typename": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AnnualStatementConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AnnualStatementConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AnnualStatementConnectionTypeEdge

A Relay edge containing a AnnualStatementConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AnnualStatementType)

The item at the end of the edge

Example

{
  "node": AnnualStatementType,
  "cursor": "abc123"
}

AnnualStatementType

Annual statements that are sent to the account. They summarize important information about usage and tariffs.

Fields

NameDescription
id(ID)

pdfUrl(String)

periodEndsAt(DateTime!)

periodStartsAt(DateTime!)

Example

{
  "periodStartsAt": "2020-01-01T00:00:00.000Z",
  "periodEndsAt": "2020-01-01T00:00:00.000Z",
  "id": "abc123",
  "pdfUrl": "abc123"
}

AnnulmentBillingDocumentType

An annulment is a billing document that annuls another billing document.

Fields

NameDescription
annulledBillingDocumentId(Int!)

ID of the billing document annulled by this annulment.

firstIssued(DateTime)

First time the annulment was issued.

id(Int!)

ID for the annulment billing document.

pdfUrl(String)

URL to the PDF of the annulment.

Example

{
  "id": 1,
  "annulledBillingDocumentId": 1,
  "firstIssued": "2020-01-01T00:00:00.000Z",
  "pdfUrl": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AppSessionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AppSessionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AppSessionConnectionTypeEdge

A Relay edge containing a AppSessionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AppSessionType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
account(AccountType)

addressLine1(String!)

addressLine2(String!)

addressLine3(String!)

addressLine4(String!)

Post town

addressLine5(String!)

County

createdAt(DateTime!)

id(UUID!)

isArchived(Boolean)

link(AffiliateLinkType!)

locationAt(DateTime)

locationHorizontalAccuracy(Int)

The location accuracy level in meters

locationLatitude(Decimal)

locationLongitude(Decimal)

outcomes([OutcomeType])

A list of outcomes associated with the app session.

postcode(String!)

salesMode(AppSessionSalesMode)

startedAt(DateTime!)

stoppedAt(DateTime!)

type(AppSessionType)

updatedAt(DateTime!)

Example

{
  "startedAt": "2020-01-01T00:00:00.000Z",
  "stoppedAt": "2020-01-01T00:00:00.000Z",
  "addressLine1": "abc123",
  "addressLine2": "abc123",
  "addressLine3": "abc123",
  "addressLine4": "abc123",
  "addressLine5": "abc123",
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "isArchived": true,
  "postcode": "abc123",
  "locationAt": "2020-01-01T00:00:00.000Z",
  "locationHorizontalAccuracy": 1,
  "locationLatitude": "1.0",
  "locationLongitude": "1.0",
  "salesMode": "DOOR",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "account": AccountType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ApplicableRateEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ApplicableRateEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ApplicableRateEdge

A Relay edge containing a ApplicableRate and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ApplicableRateType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
category(String)

The category of the rate, e.g. 'CONSUMPTIONCHARGE' or 'STANDINGCHARGE'.

currency(String)

The currency the rate is priced in.

isSalesTax(Boolean!)

Whether the rate represents a sales tax.

name(String!)

The display name of the rate.

overridePrice(Decimal)

Override price for the applicable rate.

pricePerUnit(Decimal!)

Price per unit.

rateId(Int)

Technical identifier of the applicable rate.

sourceSystem(String!)

The system the rate was sourced from.

unit(String!)

Unit of the applicable rate.

unitDisplay(String!)

A human-readable display of the unit, e.g. 'p/kWh'.

validityPeriod(ApplicableRateValidityPeriodType!)

The period during which the rate is valid.

variantProfile(VariantProfile!)

The variant profile for the applicable rate.

Example

{
  "sourceSystem": "abc123",
  "name": "abc123",
  "pricePerUnit": "1.0",
  "unit": "abc123",
  "unitDisplay": "abc123",
  "variantProfile": VariantProfile,
  "rateId": 1,
  "overridePrice": "1.0",
  "currency": "abc123",
  "category": "abc123",
  "isSalesTax": true
}

ApplicableRateValidityPeriodType

Represents the period during which a rate is valid.

Fields

NameDescription
end(DateTime)

The date and time until which the rate is valid. Null indicates the rate has no end date.

start(DateTime)

The date and time from which the rate is valid.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

ApproveRepayment

Output type of the approveRepayment mutation.

Fields

NameDescription
repayment(AccountRepaymentType)

The approved repayment.

Example

{
  "repayment": AccountRepaymentType
}

AssessCollectionProcessRecordForPause

Output type of the assessCollectionProcessRecordForPause mutation.

Fields

NameDescription
collectionProcessProcessed(AssessCollectionProcessRecordForPauseOutputType)

Details of collection process after running the pause assessment.

Example

{
  
}

AssessCollectionProcessRecordForPauseOutputType

Output for assessing a Collection process for pause.

Fields

NameDescription
isPaused(Boolean)

The pause status of the collection process.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123",
  "isPaused": true
}

AssignInkBucket

Output type of the assignInkBucket mutation.

Fields

NameDescription
bucket(InkBucket!)

The bucket that the conversation will be assigned to.

conversation(InkConversation!)

The conversation that will be assigned to the bucket.

Example

{
  "conversation": InkConversation
}

AssignSupplyPointToEstimationGroup

Output type of the assignSupplyPointToEstimationGroup mutation.

Fields

NameDescription
supplyPointEstimationGroup(AssignedSupplyPointEstimationGroupType)

The created supply point estimation group mapping.

Example

{
  
}

Fields

NameDescription
estimationGroupCode(String!)

The code of the estimation group.

supplyPointExternalId(String!)

The external identifier of the assigned supply point.

Example

{
  "estimationGroupCode": "abc123",
  "supplyPointExternalId": "abc123"
}

Fields

NameDescription
identifier(String)

Unique identifier for the assigned team.

name(String)

Display name for the assigned team.

teamType(AssignedTeamTypeEnum)

Type of assigned team.

Example

{
  "identifier": "abc123",
  "name": "abc123",
  "teamType": "PARTNER_TEAM"
}

Fields

NameDescription
email(String)

Email address of the assigned user.

identifier(String)

Unique identifier for the assigned user.

name(String)

Display name for the assigned user.

userType(AssignedUserTypeEnum)

Type of assigned user.

Example

{
  "identifier": "abc123",
  "name": "abc123",
  "email": "abc123",
  "userType": "SUPPORT_USER"
}

Fields

NameDescription
id(ID!)

The ID of the assigned user.

username(String!)

The username of the assigned user.

Example

{
  "id": "abc123",
  "username": "abc123"
}

AssistanceAgreementType

A single Assistance Agreement.

Fields

NameDescription
activeFrom(Date)

The start datetime of the agreement.

activeTo(Date)

The end datetime of the agreement, if any.

assistanceType(String)

The type of assistance provided by the agreement.

Example

{
  "assistanceType": "abc123",
  "activeFrom": "2020-01-01",
  "activeTo": "2020-01-01"
}

AssociateArchivedCallRecordingsWithCalls

Output type of the associateArchivedCallRecordingsWithCalls mutation.

Fields

NameDescription
results([AssociateArchivedRecordingResultType])

Per-recording processing results.

summary(AssociateArchivedRecordingsSummaryType)

Summary counts of the processing results.

Example

{
  
}

Fields

NameDescription
reason(String)

If skipped or errored, the reason why.

recordingId(Int)

The ID of the recording, if one exists.

status(AssociateArchivedRecordingResultStatus!)

The processing status: success, skipped, or error.

vendorCallLegId(String!)

The vendor call leg ID from the input.

Example

{
  "vendorCallLegId": "abc123",
  "recordingId": 1,
  "status": "SUCCESS",
  "reason": "abc123"
}

Fields

NameDescription
failed(Int!)

Number of recordings that failed to process.

successful(Int!)

Number of recordings that were successfully archived or skipped.

total(Int!)

Total number of recordings processed.

Example

{
  "total": 1,
  "successful": 1,
  "failed": 1
}

AssociateCallWithAccount

Output type of the associateCallWithAccount mutation.

Fields

NameDescription
call(InboundCallType)

The call.

Example

{
  
}

AssociateItemToCollectionProcess

Output type of the associateItemToCollectionProcess mutation.

Fields

NameDescription
collectionProcessAssociatedItem(AssociateItemToCollectionProcessOutputType)

Item associated to the collection process.

Example

{
  
}

Fields

NameDescription
itemId(ID)

Associated item identifier.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123",
  "itemId": "abc123"
}

Fields

NameDescription
ok(Boolean!)

True if the agreements were successfully attached.

Example

{
  "ok": true
}

AttachmentType

Represents a file to attach to a communication

Fields

NameDescription
filename(String!)

id(ID!)

temporaryUrl(String)

Temporary URL at which the attachment is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page).

Example

{
  "id": "abc123",
  "filename": "abc123",
  "temporaryUrl": "abc123"
}

Fields

NameDescription
appSession(AppSessionType)

The app session associated with this audio recording.

contentType(String!)

createdAt(DateTime!)

duration(Float!)

fileSize(Int!)

id(UUID!)

s3Bucket(String!)

s3Key(String!)

startedAt(DateTime!)

stoppedAt(DateTime!)

updatedAt(DateTime!)

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "contentType": "abc123",
  "duration": 1.0,
  "fileSize": 1,
  "startedAt": "2020-01-01T00:00:00.000Z",
  "stoppedAt": "2020-01-01T00:00:00.000Z",
  "s3Bucket": "abc123",
  "s3Key": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

AuthFlow

A step where the user must complete an auth flow.

Fields

NameDescription
authorizationUri(String)

The URL to redirect the user to for authorization.

error(AuthFlowError)

Returns the error raised from a failed authorization flow, if any.

id(ID)

A unique identifier for this onboarding step.

redirectUri(String)

The URI where the auth flow is going to redirect back to at the end.

Example

{
  "id": "abc123",
  "redirectUri": "abc123",
  "authorizationUri": "abc123",
  "error": AuthFlowError
}

Fields

NameDescription
description(String)

A more detailed description of the error, if available.

message(String)

A human readable error message.

Example

{
  "message": "abc123",
  "description": "abc123"
}

Fields

NameDescription
clientId(String)

The client ID of the application.

name(String)

The name of the application.

Example

{
  "name": "abc123",
  "clientId": "abc123"
}

AuxiliaryResultConnection

Pagination for a charge's auxiliary results.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([AuxiliaryResultEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": AuxiliaryResultEdge,
  "totalCount": 1,
  "edgeCount": 1
}

AuxiliaryResultEdge

A Relay edge containing a AuxiliaryResult and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(AuxiliaryResultInterface)

The item at the end of the edge

Example

{
  "node": AuxiliaryResultInterface,
  "cursor": "abc123"
}

AuxiliaryResultPeriodType

The period an auxiliary result covers.

Fields

NameDescription
end(DateTime!)

The period end.

start(DateTime!)

The period start.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

AwardLoyaltyPoints

Output type of the awardLoyaltyPoints mutation.

Fields

NameDescription
ledgerEntry(LoyaltyPointLedgerEntryType)

The ledger entry for the awarded loyalty points.

pointsAwarded(Int)

The number of loyalty points that were awarded.

Example

{
  "pointsAwarded": 1,
  "ledgerEntry": LoyaltyPointLedgerEntryType
}

BackendScreenEvent

Output type of the backendScreenEvent mutation.

Fields

NameDescription
action(ActionType)

An action to perform.

Example

{
  "action": DeeplinkActionType
}

BackendScreenEventActionType

An action which triggers some event in the Kraken backend.

Fields

NameDescription
eventId(String!)

The ID of the event to trigger.

id(ID)

Unique identifier of the object.

params([BackendScreenParam]!)

List of key-value pairs to pass as parameters to the event.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

Example

{
  "typeName": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "eventId": "abc123",
  "params": BackendScreenParam
}

BackendScreenParam

A key-value pair (both Strings) which is passed as a parameter to a screen.

Fields

NameDescription
key(String!)

value(String!)

Example

{
  "key": "abc123",
  "value": "abc123"
}

Fields

NameDescription
balanceThreshold(Int)

The ledger balance (in minor currency unit) which when passed will trigger a payment.

targetBalance(Int)

The target balance (in minor currency unit) for the ledger.

Example

{
  "balanceThreshold": 1,
  "targetBalance": 1
}

Fields

NameDescription
areValid(Boolean!)

Indicates whether the provided bank details are valid.

message(String)

Provides additional information about validation result.

Example

{
  "areValid": true,
  "message": "abc123"
}

Fields

NameDescription
accountHolder(String)

Get the account holder name of the client's bank account.

bankName(String)

Get the name of the client's bank.

bic(String)

Get the BIC/SWIFT code for the client's bank account.

iban(String)

Get the IBAN of the client's bank account.

paymentReference(BankTransferReference)

Get the payment reference the customer should use to transfer monies.

The possible errors that can be raised are:

  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3923: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

accountNumber (String!)

Customer's account number.

ledgerId (ID)

Customer's ledger ID for which the payment reference should be generated.

ledgerNumber (String)

Customer's ledger number for which the payment reference should be generated.

Example

{
  "accountHolder": "abc123",
  "iban": "abc123",
  "bic": "abc123",
  "bankName": "abc123",
  "paymentReference": BankTransferReference
}

Fields

NameDescription
reference(String)

Get bank transfer payment reference for customer, based on the ledger they transfer monies for.

Example

{
  "reference": "abc123"
}

Fields

NameDescription
meterId(Int)

The meter id this reading belongs to.

origin(String)

readAt(DateTime!)

registerObisCode(String)

status(String)

The status of the reading (e.g. SAVED, CHANGED, CANCELLED).

typeOfRead(String)

value(String!)

Example

{
  "value": "abc123",
  "readAt": "2020-01-01T00:00:00.000Z",
  "registerObisCode": "abc123",
  "typeOfRead": "abc123",
  "origin": "abc123",
  "status": "abc123",
  "meterId": 1
}

BespokeRateConfigurationType

The BespokeRateConfiguration term.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

schedules([BespokeRateScheduleType])

The schedules for the bespoke rate configuration.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "schedules": [BespokeRateScheduleType]
}

BespokeRateItemType

Item for the BespokeRateConfiguration term.

Fields

NameDescription
pricePerUnit(Decimal)

The price per unit for the bespoke rate item.

rateSpecificationCode(String)

The rate specification code for the bespoke rate item.

rateSpecificationType(BespokeRateItemTypeEnum)

The rate specification type for the bespoke rate item.

variantProfile(VariantProfile)

The variant profile for the bespoke rate item.

Example

{
  "pricePerUnit": "1.0",
  "rateSpecificationCode": "abc123",
  "rateSpecificationType": "PRODUCT_RATE",
  "variantProfile": VariantProfile
}

BespokeRateScheduleType

Schedule for the BespokeRateConfiguration term.

Fields

NameDescription
items([BespokeRateItemType])

The items for the bespoke rate schedule.

productCode(String)

The product code for the bespoke rate schedule.

supplyPointIdentifier(String)

The external identifier of the supply point this schedule targets.

validFrom(DateTime)

The datetime the schedule of bespoke rates is valid from.

validTo(DateTime)

The datetime the schedule of bespoke rates is valid to.

Example

{
  "items": [BespokeRateItemType],
  "productCode": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "supplyPointIdentifier": "abc123"
}

BillCharge

A charge to the customer from the energy retailer.

Fields

NameDescription
amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

consumption(Consumption)

If this charge is for consumption of a good or service, this field will contain details of how much was consumed. Omitted in cases where the charge is not for consumption, or where consumption information is not available (e.g. for some older records).

createdAt(DateTime)

The date time when the transaction is created.

detail(ChargeDetail)

Supporting information about this charge (if any is available).

id(ID)

The unique identifier for the transaction.

latestBillingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

The date the transaction was posted.

reasonCode(String)

Returns the reason.

title(String)

A user readable string that indicates what this transaction relates to.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "amounts": TransactionAmountType,
  "title": "abc123",
  "note": "abc123",
  "reasonCode": "abc123",
  "latestBillingDocumentIdentifier": "abc123",
  "consumption": Consumption,
  "detail": SupplyOrServiceCharge
}

BillConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BillConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BillConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BillConnectionTypeEdge

A Relay edge containing a BillConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BillInterface)

The item at the end of the edge

Example

{
  "node": BillInterface,
  "cursor": "abc123"
}

BillCredit

A credit to the customer from the energy retailer.

Fields

NameDescription
amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

createdAt(DateTime)

The date time when the transaction is created.

id(ID)

The unique identifier for the transaction.

latestBillingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

The date the transaction was posted.

reasonCode(String)

Returns the reason.

reversedCharge(BillCharge)

If this credit reverses a charge, the charge it reverses. Null otherwise.

title(String)

A user readable string that indicates what this transaction relates to.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "amounts": TransactionAmountType,
  "title": "abc123",
  "note": "abc123",
  "reasonCode": "abc123",
  "latestBillingDocumentIdentifier": "abc123",
  "reversedCharge": BillCharge
}

BillDueDateType

Represents bill due dates to be applied in a contract.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

numberOfDays(Int)

The number of days to pay a bill from issue date, after which the debt becomes delinquent.

type(NonEmptyString)

The type of the term.

typeOfDays(DayType)

The type of day to consider (WORKING or CALENDAR).

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "numberOfDays": 1,
  "typeOfDays": "WORKING"
}

BillPayment

A payment from the customer to the energy supplier.

Fields

NameDescription
amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

createdAt(DateTime)

The date time when the transaction is created.

id(ID)

The unique identifier for the transaction.

latestBillingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

The date the transaction was posted.

reasonCode(String)

Returns the reason.

title(String)

A user readable string that indicates what this transaction relates to.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "amounts": TransactionAmountType,
  "title": "abc123",
  "note": "abc123",
  "reasonCode": "abc123",
  "latestBillingDocumentIdentifier": "abc123"
}

BillRefund

A refund to the customer from the energy supplier.

Fields

NameDescription
amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

createdAt(DateTime)

The date time when the transaction is created.

id(ID)

The unique identifier for the transaction.

latestBillingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

The date the transaction was posted.

reasonCode(String)

Returns the reason.

title(String)

A user readable string that indicates what this transaction relates to.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "amounts": TransactionAmountType,
  "title": "abc123",
  "note": "abc123",
  "reasonCode": "abc123",
  "latestBillingDocumentIdentifier": "abc123"
}

BillRepresentationConnectionTypeConnection

A connection that can provide links to the representations of a bill.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BillRepresentationConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BillRepresentationConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BillRepresentationConnectionTypeEdge

A Relay edge containing a BillRepresentationConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BillRepresentationType)

The item at the end of the edge

Example

{
  "node": BillRepresentationType,
  "cursor": "abc123"
}

BillRepresentationContextType

Provides the rendering context data used to generate a bill representation, along with its associated JSON Schema metadata.

Fields

NameDescription
data(GenericScalar)

The raw template context used to render the bill representation. Returns null if the context data is unavailable.

schema(GenericScalar)

The schema defining the expected structure of the data field. This is populated when the schema type is 'STRICT', and empty when the schema type is 'NONE'.

schemaType(String)

The level of explicit structural typing applied to the context data. 'STRICT' indicates that the data conforms to a defined, typed schema; 'NONE' indicates that the data is untyped and no schema is enforced.

templateCode(String)

The unique code of the template associated with this context.

Example

{
  "data": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "schema": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "schemaType": "abc123",
  "templateCode": "abc123"
}

BillRepresentationType

representations are associated with a bill files and can be used to provide additional information to the customer.

Fields

NameDescription
code(String)

The type of representation.

context(BillRepresentationContextType)

The rendering context data and schema associated with this bill representation. Returns null if no context record exists.

filename(String)

The name of the file.

temporaryUrl(String)

The TemporaryURL type represents a temporary URL at which the file is available. It is intended for redirection purposes, NOT persistence in any form. (e.g. inclusion in emails or the body of a web page).

temporaryUrlExpiresAt(DateTime)

The expiry datetime field of the temporary URL.

version(Int)

The version of the representation.

Example

{
  "code": "abc123",
  "version": 1,
  "temporaryUrl": "abc123",
  "temporaryUrlExpiresAt": "2020-01-01T00:00:00.000Z",
  "filename": "abc123",
  "context": BillRepresentationContextType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BillTransactionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BillTransactionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BillTransactionConnectionTypeEdge

A Relay edge containing a BillTransactionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BillTransactionType)

The item at the end of the edge

Example

{
  "node": BillTransactionType,
  "cursor": "abc123"
}

Fields

NameDescription
targetBalance(Int)

The target balance (in minor currency unit) for the ledger.

Example

{
  "targetBalance": 1
}

Fields

NameDescription
frequencyMultiplier(Int)

The multiple of months at which payments are taken, if specified.

paymentDay(Int)

The day of the month at which to take payment, if specified.

Example

{
  "paymentDay": 1,
  "frequencyMultiplier": 1
}

BillingAttachmentConnectionTypeConnection

A connection that can provide links to the attachments of the bill.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BillingAttachmentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BillingAttachmentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BillingAttachmentConnectionTypeEdge

A Relay edge containing a BillingAttachmentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BillingAttachmentType)

The item at the end of the edge

Example

{
  "node": BillingAttachmentType,
  "cursor": "abc123"
}

BillingAttachmentType

Attachments are associated with a bill files and can be used to provide additional information to the customer.

Fields

NameDescription
filename(String)

The name of the file.

temporaryUrl(String)

The TemporaryURL type represents a temporary URL at which the file is available. It is intended for redirection purposes, NOT persistence in any form. (e.g. inclusion in emails or the body of a web page).

temporaryUrlExpiresAt(DateTime)

The expiry datetime field of the temporary URL.

Example

{
  "temporaryUrl": "abc123",
  "temporaryUrlExpiresAt": "2020-01-01T00:00:00.000Z",
  "filename": "abc123"
}

BillingDocumentIssuanceFrequencyType

Represents billing document issuance frequency to be applied during a contract.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

frequency(String)

Billing frequency.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term can be amended after creation.

multiplier(Int)

Multiplier applied to the frequency.

periodStartDay(Int)

Start day of the billing period.

periodStartMonth(Int)

Start month of the billing period.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "frequency": "abc123",
  "periodStartDay": 1,
  "periodStartMonth": 1,
  "multiplier": 1
}

Fields

NameDescription
allocationIntentions([AllocationIntentionType]!)

Allocation intentions for the billing document.

allocations([AllocationType]!)

Allocations for the billing document.

dueDate(Date!)

The date when the payment is due for the billing document.

expectedAmount(Int!)

The expected amount for the billing document (in minor currency units).

remainingAmount(Int!)

The amount that remains to be paid for the billing document (in minor currency units).

Example

{
  "dueDate": "2020-01-01",
  "expectedAmount": 1,
  "remainingAmount": 1,
  "allocationIntentions": AllocationIntentionType,
  "allocations": AllocationType
}

BillingOperationFrequency

A billing operation frequency definition.

Fields

NameDescription
frequency(BillingTriggerFrequency!)

The billing frequency.

multiplier(Int!)

The frequency multiplier (e.g., 2 for bi-monthly).

operationType(BillingTriggerOperationType!)

The type of billing operation.

targetType(BillingTriggerTargetType!)

The type of target this definition applies to.

temporalParams([BillingOperationTemporalParamsType!]!)

Temporal parameters for operation parameters.

triggerAtStartDay(Int!)

Day of the month when billing is triggered (1-31).

triggerAtStartMonth(Int!)

Month of the year when billing starts (1-12).

Example

{
  "operationType": "CHARGE_TARGET",
  "targetType": "CHARGING_LEDGER",
  "frequency": "DAILY",
  "multiplier": 1,
  "triggerAtStartDay": 1,
  "triggerAtStartMonth": 1,
  "temporalParams": BillingOperationTemporalParamsType
}

BillingOperationTemporalParamsType

Temporal parameters for billing frequency operations.

Fields

NameDescription
paramKey(String!)

The key of the parameter (e.g., charge_to).

startDay(Int!)

Day of the month (1-31).

startMonth(Int!)

Month of the year (1-12).

Example

{
  "paramKey": "abc123",
  "startDay": 1,
  "startMonth": 1
}

BillingOptionsType

Information about an account's billing schedule.

Fields

NameDescription
currentBillingPeriodEndDate(Date)

The date on which the current billing cycle will end. Null if the account is on flexible billing.

currentBillingPeriodStartDate(Date)

The date on which the current billing cycle started.

isFixed(Boolean!)

If true, this account is billed on specific day of a regular cycle. If false, the billing schedule is flexible, depending on when meter readings are submitted.

nextBillingDate(Date)

The next date on which this account will next be billed. This is the same as the start date for their next bill cycle. Null if the account is on flexible billing.

periodLength(AccountBillingOptionsPeriodLength)

periodLengthMultiplier(Int)

periodStartDay(Int)

The day of the month on which the account's billing period should start.

Example

{
  "periodStartDay": 1,
  "periodLength": "MONTHLY",
  "periodLengthMultiplier": 1,
  "isFixed": true,
  "currentBillingPeriodStartDate": "2020-01-01",
  "currentBillingPeriodEndDate": "2020-01-01",
  "nextBillingDate": "2020-01-01"
}

BillingTriggerConfiguration

A billing trigger configuration with its effective period and operation frequencies.

This represents a complete billing configuration for a target, including effective period and what operations should be performed at what frequencies.

Fields

NameDescription
effectiveFrom(DateTime!)

When this configuration becomes effective.

effectiveTo(DateTime)

When this configuration stops being effective (null if no end date).

isActive(Boolean!)

Whether this configuration is currently active.

nextIssueDate(Date)

Next date when a billing document will be issued (null if not calculable).

operationFrequencies([BillingOperationFrequency!]!)

List of billing operation frequencies in this configuration.

targetType(BillingTriggerTargetType!)

The type of target this configuration applies to.

Example

{
  "effectiveFrom": "2020-01-01T00:00:00.000Z",
  "effectiveTo": "2020-01-01T00:00:00.000Z",
  "isActive": true,
  "targetType": "CHARGING_LEDGER",
  "operationFrequencies": BillingOperationFrequency,
  "nextIssueDate": "2020-01-01"
}

BillingTriggerConfigurationsConnection

Pagination object for billing trigger configurations.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BillingTriggerConfigurationsEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BillingTriggerConfigurationsEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BillingTriggerConfigurationsEdge

A Relay edge containing a BillingTriggerConfigurations and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BillingTriggerConfigurationsForTarget)

The item at the end of the edge

Example

{
  "node": BillingTriggerConfigurationsForTarget,
  "cursor": "abc123"
}

BillingTriggerConfigurationsForTarget

Billing trigger configurations for a single target.

Fields

NameDescription
configurations([BillingTriggerConfiguration!]!)

List of billing trigger configurations for this target.

target(BillingTriggerTargetReference!)

Reference to the target entity for these billing configurations.

Example


BillingTriggerTargetReference

A reference to a billing trigger target.

Fields

NameDescription
id(ID!)

The database ID of the target.

number(String)

The account or portfolio number (null for ledgers).

targetType(BillingTriggerTargetType!)

The type of target (ACCOUNT, PORTFOLIO, or CHARGING_LEDGER).

Example

{
  "targetType": "CHARGING_LEDGER",
  "number": "abc123",
  "id": "abc123"
}

BlockRepaymentSubmission

Output type of the blockRepaymentSubmission mutation.

Fields

NameDescription
repaymentId(ID)

The repayment ID.

repaymentIntervention(RepaymentInterventionType)

Resulting Repayment Intervention details.

Example

{
  "repaymentId": "abc123"
}

BulkAwardLoyaltyPoints

Output type of the bulkAwardLoyaltyPoints mutation.

Fields

NameDescription
failed([BulkAwardLoyaltyPointsFailedItemResult])

Failed loyalty point awards.

inserted([BulkAwardLoyaltyPointsInsertedItemResult])

Successfully inserted loyalty point awards.


Fields

NameDescription
accountNumber(String)

The account number for this failed item.

errorCode(String)

Error code for failed items.

errorMessage(String)

Error message for failed items.

idempotencyKey(UUID)

The idempotency key for this failed item.

Example

{
  "accountNumber": "abc123",
  "idempotencyKey": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "errorCode": "abc123",
  "errorMessage": "abc123"
}

Fields

NameDescription
accountNumber(String)

The account number for this item.

ledgerEntry(LoyaltyPointLedgerEntryType)

The created loyalty point ledger entry when successful.

pointsAwarded(Int)

The number of points awarded for this item when successful.

Example

{
  "accountNumber": "abc123",
  "pointsAwarded": 1,
  "ledgerEntry": LoyaltyPointLedgerEntryType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BusinessAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BusinessAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BusinessAccessConnectionTypeEdge

A Relay edge containing a BusinessAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BusinessAccessType)

The item at the end of the edge

Example

{
  "node": BusinessAccessType,
  "cursor": "abc123"
}

BusinessAccessType

Represents the accessible business and access information of an accessor.

Fields

NameDescription
entity(BusinessType!)

The business that the accessor has access to.

roleAssignments([RoleAssignment]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment,
  "entity": BusinessType
}

BusinessConnectionTypeConnection

Paginator of Businesses

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([BusinessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": BusinessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

BusinessConnectionTypeEdge

A Relay edge containing a BusinessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BusinessType)

The item at the end of the edge

Example

{
  "node": BusinessType,
  "cursor": "abc123"
}

BusinessCreditCheckDataType

The business data a third party needs to run a credit check.

Fields

NameDescription
businessType(String!)

The type of business (e.g. limited company, sole trader).

checkId(UUID!)

The check_id of the credit check this data belongs to, echoed back from the request.

companyCountry(String)

The country of the business billing address, if known.

companyName(String!)

The registered or trading name of the business.

companyPostcode(String)

The postcode of the business billing address, if known.

companyRegistrationNumber(String)

The company registration number, if the business has one.

Example

{
  "checkId": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "businessType": "abc123",
  "companyName": "abc123",
  "companyRegistrationNumber": "abc123",
  "companyPostcode": "abc123",
  "companyCountry": "abc123"
}

Fields

NameDescription
key(String!)

The key of the business detail.

value(String)

The value of the business detail.

Example

{
  "key": "abc123",
  "value": "abc123"
}

Fields

NameDescription
code(String!)

The unique code of the role.

description(String!)

The description of the role.

name(String!)

The unique displayable name of the role.

permissionCodes([String]!)

The permissions associated with the role.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "permissionCodes": "abc123"
}

Fields

NameDescription
endAt(DateTime)

The end date and time of the segment period.

id(ID!)

The ID of the business segment period.

segment(SegmentType!)

The segment associated with this period.

startAt(DateTime)

The start date and time of the segment period.

Example

{
  "id": "abc123",
  "segment": SegmentType,
  "startAt": "2020-01-01T00:00:00.000Z",
  "endAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountUserAccessors(AccountUserAccessorAccessConnectionTypeConnection)

Account users that have access to this business, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

roleCodes ([String!])

Filter accessors by role codes.

billingAddress(RichAddressType)

The billing address of the business.

businessType(BusinessTypeOptions)

The company type of a business account.

details([BusinessDetailType])

The details of the business.

displayableNumber(String)

Kraken-generated, human-readable number for display purposes.

id(ID!)

The business ID.

legalAddress(RichAddressType)

The legal address of the business.

linkedAccountNumber(ID!)

Account number linked to this business.

The possible errors that can be raised are:

  • KT-CT-11102: Business without related account.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'linkedAccountNumber' field is deprecated.

Please use 'linkedAccountNumbers' instead, businesses can be related to multiple Accounts now.

- Marked as deprecated on 2025-02-05.
- Scheduled for removal on or after 2025-08-01.

linkedAccountNumbers([ID]!)

Account numbers linked to this business.

name(String!)

The business' name.

number(String!)

The business' number.

partnerAccessors(PartnerAccessorAccessConnectionTypeConnection)

Partners that have access to this business, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

roleCodes ([String!])

Filter accessors by role codes.

paymentMethods(PaymentInstructionConnectionTypeConnection)

List payment instructions owned by this business.

Arguments

after (String)

before (String)

first (Int)

last (Int)

statuses ([PaymentInstructionStatus])

Optionally filter the payment instructions by status.

validAt (DateTime)

Optionally return only payment instructions valid at the given datetime.

sectors([BusinessSectorString!]!)

The sectors the business operates in.

segmentName(String)

The segment this business is assigned to.

Example

{
  "id": "abc123",
  "name": "abc123",
  "number": "abc123",
  "displayableNumber": "abc123",
  "businessType": "SOLE_TRADER",
  "sectors": BusinessSectorString,
  "details": [BusinessDetailType],
  "billingAddress": RichAddressType,
  "legalAddress": RichAddressType,
  "linkedAccountNumber": "abc123",
  "linkedAccountNumbers": "abc123",
  "segmentName": "abc123",
  "paymentMethods": PaymentInstructionConnectionTypeConnection,
  "accountUserAccessors": AccountUserAccessorAccessConnectionTypeConnection,
  "partnerAccessors": PartnerAccessorAccessConnectionTypeConnection
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([CallConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": CallConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

CallConnectionTypeEdge

A Relay edge containing a CallConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CallInterface)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
key(String!)

The key of the call metadata item.

value(String!)

The value of the call metadata item.

Example

{
  "key": "abc123",
  "value": "abc123"
}

Fields

NameDescription
data(JSONString)

Data containing context of the event.

eventType(String)

The type of event.

occurredAt(DateTime)

Timestamp for when the event occurred.

relativeOccurredAt(Int)

Time in milliseconds, relative to the start of the recording.

Example

{
  "data": {"key": "value"},
  "eventType": "abc123",
  "relativeOccurredAt": 1,
  "occurredAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
callDirection(String)

The direction the call was initiated.

callId(ID)

ID of the associated call.

download(CallRecordingDownloadType)

A download for the archived recording file. Null when the recording is unavailable.

endTime(DateTime)

End time of the call recording.

events([CallRecordingDetailEventType])

A list of recording events.

fromPhoneNumber(String)

Phone number of the caller.

primaryAgentEmail(String)

Email of the call's main agent.

startTime(DateTime)

Start time of the call recording.

toPhoneNumber(String)

Phone number of the callee.

Example

{
  "callId": "abc123",
  "callDirection": "abc123",
  "primaryAgentEmail": "abc123",
  "toPhoneNumber": "abc123",
  "fromPhoneNumber": "abc123",
  "startTime": "2020-01-01T00:00:00.000Z",
  "endTime": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
expiresAt(DateTime)

The time at which the presigned url stops working.

url(String)

Presigned S3 URL for the recording file. Valid for one hour from the time the response is generated.

Example

{
  "url": "abc123",
  "expiresAt": "2020-01-01T00:00:00.000Z"
}

CallTagConnectionTypeConnection

Paginator of Call Tags

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([CallTagConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": CallTagConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

CallTagConnectionTypeEdge

A Relay edge containing a CallTagConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CallTagType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
id(ID)

ID of the call tag.

isActive(Boolean)

Whether the tag can currently be used to tag calls.

name(String)

Name of the tag that will be used to identify it.

Example

{
  "id": "abc123",
  "name": "abc123",
  "isActive": true
}

CallTranscriptConnectionTypeConnection

Paginator of Call Transcripts

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([CallTranscriptConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": CallTranscriptConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

CallTranscriptConnectionTypeEdge

A Relay edge containing a CallTranscriptConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CallTranscriptType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
expiresAt(DateTime!)

The time at which the presigned url stops working.

type(CallTranscriptionType!)

Whether url points to the REDACTED or UNREDACTED transcript file. REDACTED is preferred and returned whenever a redacted file exists. UNREDACTED is only returned to callers that hold an additional permission for unredacted access.

url(String!)

Presigned S3 URL for the transcript file. Valid for one hour from the time the response is generated.

Example

{
  "url": "abc123",
  "type": "REDACTED",
  "expiresAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
call(CallInterface)

The call this transcription is for. May be null when the underlying recording is a participant-level recording whose participant is not associated with a call.

createdAt(DateTime!)

The time at which this transcription record was created.

download(CallTranscriptDownloadType)

A presigned download for the transcript file, or null when the transcription is not COMPLETED, no eligible file exists, or the caller lacks permission for the only available file.

id(ID!)

The ID of the transcription record.

status(CallTranscriptionStatus!)

The processing status of this transcription. A non-COMPLETED status means no download is available.

transcribedAt(DateTime)

The time the vendor reported the transcription complete. Null until the transcription reaches COMPLETED status.

vendor(String!)

The transcription vendor that produced this record.

Example

{
  "id": "abc123",
  "status": "CREATED",
  "vendor": "abc123",
  "transcribedAt": "2020-01-01T00:00:00.000Z",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
canAmendPayments(Boolean)

Whether or not the account can amend payments.

canCancelPayments(Boolean)

Whether or not the account can cancel payments.

Example

{
  "canAmendPayments": true,
  "canCancelPayments": true
}

CancelOnSiteJobsAppointment

Output type of the cancelOnSiteJobsAppointment mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The Appointment that was cancelled.

Example

{
  
}

CancelPayment

Output type of the cancelPayment mutation.

Fields

NameDescription
payment(AccountPaymentType)

The cancelled payment.

Example

{
  "payment": AccountPaymentType
}

CancelRepaymentRequest

Output type of the cancelRepaymentRequest mutation.

Fields

NameDescription
repaymentRequest(CancelRepaymentRequestOutputType)

The cancelled repayment/refund request.

Example

{
  "repaymentRequest": CancelRepaymentRequestOutputType
}

CancelRepaymentRequestOutputType

Output from cancelling a repayment or refund request.

Fields

NameDescription
requestId(String)

The ID of the cancelled request.

status(RepaymentRequestStatus)

The current status of the cancelled request.

Example

{
  "requestId": "abc123",
  "status": "REQUESTED"
}

CancelSmartFlexOnboarding

Output type of the cancelSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CardComponentType

A card containing a list of items

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

id(ID)

Unique identifier of the object.

items([CardItemType]!)

The list of components.

typename(String)

The name of the object's type.

Example

{
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "items": TextType
}

Fields

NameDescription
cards([CardComponentType]!)

The list of cards.

id(ID)

Unique identifier of the object.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "cards": CardComponentType
}

CatalogProductType

Represents a product in the catalog.

Fields

NameDescription
code(String!)

Unique identifier of the component.

customerDescription(String!)

Customer-facing description of the product.

customerName(String!)

Customer-facing name of the product.

identifier(ID!)

Unique identifier of the product.

internalName(String!)

Internal name of the product.

marketName(String!)

The market the product is associated with.

sourceProductType(ProductType)

The type of product.

specificationIdentifier(ID)

Identifier of the product specification associated with this product.

tags([TagType])

Tags associated with this product for classification.

Example

{
  "identifier": "abc123",
  "internalName": "abc123",
  "customerName": "abc123",
  "customerDescription": "abc123",
  "code": "abc123",
  "marketName": "abc123",
  "sourceProductType": "SUPPLY",
  "specificationIdentifier": "abc123"
}

ChangeContractGroupComposition

Output type of the changeContractGroupComposition mutation.

Fields

NameDescription
contractGroupIdentifier(NonEmptyString!)

The identifier of the contract group whose composition was changed.

Example

{
  "contractGroupIdentifier": NonEmptyString
}

CharacteristicOverrideConfigurationType

Represents a characteristic override configuration term in a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

overrides([CharacteristicOverrideType!]!)

List of characteristic overrides.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "overrides": CharacteristicOverrideType
}

CharacteristicOverrideType

An override for a specific characteristic.

Fields

NameDescription
characteristic(CharacteristicType)

The characteristic being overridden.

overrideValue(CharacteristicValueInterface)

The value to override the characteristic with.

productCode(String)

Optional product code. If specified, the override applies only to this product.

Example

{
  "characteristic": CharacteristicType,
  "overrideValue": CharacteristicValueInterface,
  "productCode": "abc123"
}

CharacteristicType

A characteristic associated with a product.

Fields

NameDescription
code(String!)

The code of the characteristic.

description(String!)

The description of the characteristic.

name(String!)

The name of the characteristic.

values([CharacteristicValueUnion]!)

The possible values for the characteristic (can be strings or integers).

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "values": StringCharacteristicValueType
}

Charge

A charge to the customer.

Fields

NameDescription
accountNumber(String)

Unique identifier of the account the transaction belongs to.

amount(Int)

Gross amount including tax (when payable). Refer to the amounts field for a breakdown of this information.

amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

balanceCarriedForward(Int)

The customer's resulting balance after this transaction has been applied, in the smallest unit of currency.

billingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

consumption(Consumption)

If this charge is for consumption of a good or service, this field will contain details of how much was consumed. Omitted in cases where the charge is not for consumption, or where consumption information is not available (e.g. for some older records).

createdAt(DateTime)

The date time when the transaction is created.

detail(ChargeDetail)

Supporting information about this charge (if any is available).

hasStatement(Boolean)

Returns True if the transaction is linked with a statement.

id(ID)

Unique identifier for the transaction.

isAccountCharge(Boolean)

Deprecated.

Deprecated

The 'isAccountCharge' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isAccountPayment(Boolean)

Deprecated.

Deprecated

The 'isAccountPayment' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isCredit(Boolean)

Deprecated.

Deprecated

The 'isCredit' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isHeld(Boolean)

Whether the statement this transaction is on has been held. A held statement is not sent to a customer automatically, but is instead marked for manual attention by operations staff. Returns False if a statement is not linked with the transaction.

isIssued(Boolean)

Whether this transaction has been issued on any billing document.Note: Look for the most recently issued transaction instead of looking through all transactions as some accounts may have initial transactions that were not issued.This will return False if the transaction is not associated with any billing documents.

isReversed(Boolean!)

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

Date when the transaction was posted to the account.

reasonCode(String)

Returns the reason.

statementId(ID)

Returns None if a statement is not linked with the transaction.

Deprecated

The 'statementId' field is deprecated.

Use `billingDocumentIdentifier` instead.

- Marked as deprecated on 2023-11-30.
- Scheduled for removal on or after 2024-06-01.

title(String)

Human-readable title describing the transaction.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123",
  "amount": 1,
  "amounts": TransactionAmountType,
  "balanceCarriedForward": 1,
  "isCredit": true,
  "isAccountCharge": true,
  "isAccountPayment": true,
  "isHeld": true,
  "isIssued": true,
  "title": "abc123",
  "billingDocumentIdentifier": "abc123",
  "statementId": "abc123",
  "isReversed": true,
  "hasStatement": true,
  "note": "abc123",
  "reasonCode": "abc123",
  "consumption": Consumption,
  "detail": SupplyOrServiceCharge
}

Fields

NameDescription
amperage(Int)

Supply amperage. Used in markets where customers are more familiar with amps than power output.

integrationStatus(IntegrationStatus)

Shows the availability status of an integration.

isIntegrationLive(Boolean)

model(String)

powerInKw(Decimal)

variantId(Int)

Example

{
  "variantId": 1,
  "model": "abc123",
  "powerInKw": "1.0",
  "amperage": 1,
  "isIntegrationLive": true,
  "integrationStatus": "INTERNAL_TESTING"
}

Fields

NameDescription
make(String)

models([ChargePointVariantModelType])

Example

{
  "make": "abc123",
  "models": [ChargePointVariantModelType]
}

Fields

NameDescription
code(String)

The charge reason code.

display(String)

The charge reason display text.

group(String)

The group the charge reason belongs to (if applicable).

isDeprecated(Boolean)

Whether the charge reason is deprecated.

isHidden(Boolean)

Whether the charge reason is hidden.

isTaxExempt(Boolean)

Whether the charge reason is sales tax exempt.

Example

{
  "code": "abc123",
  "display": "abc123",
  "isDeprecated": true,
  "isTaxExempt": true,
  "isHidden": true,
  "group": "abc123"
}

ChargesBreakdownConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ChargesBreakdownConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ChargesBreakdownConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ChargesBreakdownConnectionTypeEdge

A Relay edge containing a ChargesBreakdownConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ChargesBreakdownType)

The item at the end of the edge

Example

{
  "node": ChargesBreakdownType,
  "cursor": "abc123"
}

Fields

NameDescription
charge(Int)

Charge in minor currency.

periodEnd(Date)

The end date of the period the charge is for (exclusive).

periodStart(Date)

The start date of the period the charge is for (inclusive).

Example

{
  "periodStart": "2020-01-01",
  "periodEnd": "2020-01-01",
  "charge": 1
}

CheckResultType

GraphQL type for check result.

Fields

NameDescription
context(String)

Additional context about the check.

name(String)

Name of the check.

status(CheckResultStatus)

Status of the check.

Example

{
  "name": "abc123",
  "status": "PASSED",
  "context": "abc123"
}

CloseActionType

Closes the screen.

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

id(ID)

Unique identifier of the object.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

Example

{
  "typeName": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123"
}

CloseDCAProceeding

Output type of the closeDcaProceeding mutation.

Fields

NameDescription
dcaProceedingClosureStatus(DCAProceedingClosureStatus)

Whether the closure could be applied.

Example

{
  
}

CloseInkConversation

Output type of the closeInkConversation mutation.

Fields

NameDescription
conversation(InkConversation)

The conversation that was closed.

Example

{
  "conversation": InkConversation
}

CloseInkLiveChatConversation

Output type of the closeInkLiveChat mutation.

Fields

NameDescription
liveChatConversation(InkLiveChatConversation)

The live chat conversation.

Example

{
  "liveChatConversation": InkLiveChatConversation
}

CloseOpenPrintBatch

Output type of the closeOpenPrintBatch mutation.

Fields

NameDescription
printBatch(PrintBatchType)

Example

{
  
}

CollateralRequiredType

Represents required collaterals to be applied in a contract.

Fields

NameDescription
amount(Int!)

Amount set up as collateral as condition for account creation.

collateralType(SettableCollateralType)

The kind of collateral that satisfies the requirement. A requirement naming no kind records what is required and has nothing set up for it.

description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

interestPolicy(String)

Type of interest policy of required collateral.

isVariable(Boolean)

Whether the term is variable.

reason(String!)

Reason for setting up required collateral.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "amount": 1,
  "reason": "abc123",
  "interestPolicy": "abc123",
  "collateralType": "SECURITY_DEPOSIT"
}

CollectDeposit

Output type of the collectDeposit mutation.

Fields

NameDescription
payment(CollectDepositOutput)

Example

{
  
}

Fields

NameDescription
paymentDate(Date)

status(CollectDepositStatusChoices)

Example

{
  "status": "APPROVED",
  "paymentDate": "2020-01-01"
}

CollectPayment

Output type of the collectPayment mutation.

Fields

NameDescription
payment(AccountPaymentType)

Details about the collected payment. Note that we might not be able to collect the payment (e.g. if there is no usable payment instruction), in which case the status of the returned payment might be failed or cancelled.

Example

{
  "payment": AccountPaymentType
}

Fields

NameDescription
code(String!)

The code of the collection.

description(String)

The description of the collection.

fields([FunnelField])

The fields of the collection.

name(String)

The name of the collection.

order(Int)

The order of the collection.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "order": 1
}

CollectionProcessDetailsType

Collection process details type

Fields

NameDescription
associatedItems([CollectionProcessRecordAssociatedItemType])

Items associated to the collection process.

collectionProcessRecordNumber(String)

The collection process record number.

collectionProcessType(CollectionProcessTypes)

The type of the collection process (ACCOUNT, LEDGER, or BILLING_DOCUMENT).

completionType(String)

What kind of completion happened.

isActive(Boolean)

The active status of the collection process.

isComplete(Boolean)

The completion status of the collection process.

isPaused(Boolean)

The pause status of the collection process.

latestStep(CollectionProcessStepType)

The most recent step of the collection process, if it has one.

pausedDays(Int)

Total number of days collection process were on pause.

targetObjectIdentifier(String)

The identifier of the target object (account number, ledger number, or billing document ID) based on the collection process type.

Example

{
  "collectionProcessRecordNumber": "abc123",
  "isPaused": true,
  "isComplete": true,
  "isActive": true,
  "completionType": "abc123",
  "pausedDays": 1,
  "collectionProcessType": "ACCOUNT",
  "targetObjectIdentifier": "abc123"
}

CollectionProcessEventOutputType

Output for creating a collection process event.

Fields

NameDescription
number(String)

The number of the collection process record this event belongs to.

Example

{
  "number": "abc123"
}

CollectionProcessPauseStatusRecord

Collection process pause record

Fields

NameDescription
name(String)

Collection process pause name.

pausedAt(DateTime)

Start of pause period.

reason(String)

Reason for pausing.

resumedAt(DateTime)

End of pause period.

resumedReason(String)

Reason for ending pause period.

Example

{
  "name": "abc123",
  "reason": "abc123",
  "pausedAt": "2020-01-01T00:00:00.000Z",
  "resumedAt": "2020-01-01T00:00:00.000Z",
  "resumedReason": "abc123"
}

CollectionProcessRecordAssociatedItemType

Item associated to collection process

Fields

NameDescription
extraDetails(JSONString)

Additional details of the item.

itemReference(String!)

Unique reference of item.

itemType(String!)

Type of item.

occurredAt(DateTime!)

Datetime of when action that resulted in item happened.

Example

{
  "itemType": "abc123",
  "itemReference": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "extraDetails": {"key": "value"}
}

CollectionProcessStepType

Collection process step type

Fields

NameDescription
status(CollectionProcessStepStatus)

The status of the step.

stepIdentifier(String)

The step identifier.

Example

{
  "stepIdentifier": "abc123",
  "status": "COMPLETED"
}

Fields

NameDescription
attachments(BillingAttachmentConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

billType(BillTypeEnum)

The type of the bill.

constituents(ConstituentConnection)

Constituents of the bill.

Arguments

after (String)

before (String)

first (Int)

last (Int)

fromDate(Date)

The date of the bill is covered from. This may differ from the service/consumption period shown on the bill document.

id(ID)

The ID of the bill.

identifier(String)

The unique identifier of a bill. It will usually be present on the billing document itself.

Note: a bill that hasn't been issued yet will not have an identifier; and not all issued bills will have an identifier assigned to them, in which case this will be null.

issuedDate(Date)

The date the bill was sent to the customer.

reversalsAfterClose(StatementReversalsAfterClose!)

How many charges have been reversed after the close date.

temporaryUrl(String)

Requesting this field generates a temporary URL at which bill is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page). This field can raise an error with errorClass NOT_FOUND if the bill document has not been created/issued yet. This field is deprecated use 'attachments' field instead.

Deprecated

The 'temporaryUrl' field is deprecated.

This field is deprecated. Use the 'attachments' field instead.

- Marked as deprecated on 2024-09-16.
- Scheduled for removal on or after 2025-09-01.

toDate(Date)

The date of the bill is covered to. This may differ from the service/consumption period shown on the bill document.

Example

{
  "id": "abc123",
  "billType": "STATEMENT",
  "fromDate": "2020-01-01",
  "toDate": "2020-01-01",
  "temporaryUrl": "abc123",
  "issuedDate": "2020-01-01",
  "attachments": BillingAttachmentConnectionTypeConnection,
  "reversalsAfterClose": "ALL",
  "constituents": ConstituentConnection,
  "identifier": "abc123"
}

Fields

NameDescription
fieldSpecificRateLimits(FieldSpecificRateLimitInformationConnectionTypeConnection!)

Information about the current state of the rate limiting for rate limited fields at the time of the request.

Arguments

after (String)

before (String)

fields ([String])

A list of fields to return rate-limiting information for. If not provided, all fields with rate limits will be included.

first (Int)

last (Int)

pointsAllowanceRateLimit(PointsAllowanceRateLimitInformation)

Information about points-allowance rate limit for viewer.

Example


CommenceDCAProceeding

Output type of the commenceDcaProceeding mutation.

Fields

NameDescription
dcaProceedingCommencementStatus(DCAProceedingCommencementStatus)

Whether the commencement could be applied.

Example

{
  
}

Fields

NameDescription
account(AccountType!)

The account associated with the agreement.

agreedAt(DateTime)

agreedFrom(DateTime)

The datetime the agreement was entered.

agreedTo(DateTime)

The datetime the agreement was terminated.

characteristicValues([CharacteristicValueInterface])

The characteristic values associated with the agreement.

Arguments

at (DateTime)

The datetime to check the characteristic value at.

id(ID!)

isActive(Boolean)

Whether the agreement is currently active.

isRevoked(Boolean)

Whether the agreement is revoked.

params(JSONString)

General parameters providing additional information about the agreement.

product(SupplyProductType)

The product associated with the agreement.

ratesAgreedAt(DateTime!)

rescissionDeadlineAt(DateTime)

The deadline until which the customer is allowed to rescind this agreement. If it is null, rescission is not permitted.

supplyPoint(SupplyPointType!)

The agreement's supply point.

terminatedAt(DateTime)

validFrom(DateTime!)

validTo(DateTime)

Example

{
  "id": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "agreedAt": "2020-01-01T00:00:00.000Z",
  "terminatedAt": "2020-01-01T00:00:00.000Z",
  "ratesAgreedAt": "2020-01-01T00:00:00.000Z",
  "rescissionDeadlineAt": "2020-01-01T00:00:00.000Z",
  "account": AccountType,
  "supplyPoint": SupplyPointType,
  "product": SupplyProductType,
  "isActive": true,
  "characteristicValues": CharacteristicValueInterface,
  "agreedFrom": "2020-01-01T00:00:00.000Z",
  "agreedTo": "2020-01-01T00:00:00.000Z",
  "isRevoked": true,
  "params": {"key": "value"}
}

ComplaintConnectionTypeConnection

Paginator of Complaint type.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ComplaintConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ComplaintConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ComplaintConnectionTypeEdge

A Relay edge containing a ComplaintConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ComplaintType)

The item at the end of the edge

Example

{
  "node": ComplaintType,
  "cursor": "abc123"
}

ComplaintContactConnectionTypeConnection

Paginator of Complaint contact type.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ComplaintContactConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ComplaintContactConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ComplaintContactConnectionTypeEdge

A Relay edge containing a ComplaintContactConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ComplaintContactType)

The item at the end of the edge

Example

{
  "node": ComplaintContactType,
  "cursor": "abc123"
}

Fields

NameDescription
actionTaken(String!)

Description of action taken.

createdAt(DateTime!)

Created at for contact.

email(String)

Complaint email.

landline(String)

Complaint landline.

mobile(String)

Complaint phone.

name(String!)

Complainant name.

preferredCommunicationMethod(String)

Complaint preferred method.

status(String!)

Status of complaint.

summary(String)

Complaint summary.

Example

{
  "name": "abc123",
  "actionTaken": "abc123",
  "status": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "mobile": "abc123",
  "email": "abc123",
  "landline": "abc123",
  "preferredCommunicationMethod": "abc123",
  "summary": "abc123"
}

Fields

NameDescription
assigneeId(ID)

Complaint Assignee.

contacts(ComplaintContactConnectionTypeConnection)

Complaint contacts.

Arguments

after (String)

before (String)

first (Int)

last (Int)

creationDate(Date)

Complaint creation date.

id(ID!)

isOfficial(Boolean)

Whether this is an official complaint.

officialEntity(String)

The official entity associated with this complaint.

resolutionDate(Date)

Complaint resolution date.

subtype(String)

Complaint subtype.

type(String)

Complaint type.

Example

{
  "id": "abc123",
  "contacts": ComplaintContactConnectionTypeConnection,
  "type": "abc123",
  "subtype": "abc123",
  "creationDate": "2020-01-01",
  "resolutionDate": "2020-01-01",
  "assigneeId": "abc123",
  "isOfficial": true,
  "officialEntity": "abc123"
}

CompleteApproval

Output type of the completeApproval mutation.

Fields

NameDescription
completedApproval(CompletedApproval)

The result of completing the approval.

Example

{
  
}

CompleteAuthFlowForSmartFlexOnboarding

Output type of the completeAuthFlowForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CompleteReminder

Output type of the completeReminder mutation.

Fields

NameDescription
reminderId(Int)

ID of the completed reminder.

Example

{
  "reminderId": 1
}

CompleteRetryForSmartFlexOnboarding

Output type of the completeRetryForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CompleteSelectVehicleOrChargePointForSmartFlexOnboarding

Output type of the selectVehicleOrChargePointForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CompleteStandalonePayment

Output type of the completeStandalonePayment mutation.

Fields

NameDescription
payment(CompleteStandalonePaymentOutput)

The completed standalone payment.

Example


CompleteStandalonePaymentOutput

Result of the complete standalone payment operation.

Fields

NameDescription
status(PaymentIntentCompletionStatus!)

The status of the standalone payment.

Example

{
  "status": "CLEARED"
}

CompleteTeslaSetupVirtualKeyForSmartFlexOnboarding

Output type of the completeTeslaSetupVirtualKeyForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CompleteUserActionRequiredForSmartFlexOnboarding

Output type of the completeUserActionForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


CompleteUserInputRequiredForSmartFlexOnboarding

Output type of the completeUserInputRequiredForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
approvalUuid(UUID!)

The UUID of the completed approval.

Example

{
  "approvalUuid": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

ComponentListType

A list of components which comprise a screen.

This is a legacy type; GenericBackendScreen should be preferred. This is because API clients should not need to explicitly query for screen attributes like items - these fields are embedded in the screenData field.

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

id(ID)

Unique identifier of the object.

items([ItemType]!)

The list of components.

Deprecated

The 'items' field is deprecated.

Access `items` via `screenData` instead.

- Marked as deprecated on 2024-07-02.
- Scheduled for removal on or after 2024-08-01.

name(String!)

The name of the screen.

refreshFrequency(Int)

The refresh / polling frequency in milliseconds.

screenData(String)

Serialized JSON representation of the screen.

typename(String)

The name of the object's type.

Example

{
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "name": "abc123",
  "refreshFrequency": 1,
  "screenData": "abc123",
  "items": TextType
}

ConfirmDoubleOptIn

Output type of the confirmDoubleOptIn mutation.

Fields

NameDescription
consent(ConsentType)

The consent that was created or updated.

Example

{
  "consent": ConsentType
}

ConnectAiAgentToCall

Output type of the connectAiAgentToCall mutation.

Fields

NameDescription
call(InboundCallType)

The call the AI agent was connected to.

Example

{
  
}

Fields

NameDescription
code(String)

The code of the consent type.

value(String)

The value to update the consent to.

Example

{
  "code": "abc123",
  "value": "abc123"
}

ConsentType

A consent given by a signing identity for a consent type.

Fields

NameDescription
code(String!)

Unique code given to this consent type.

id(BigInt!)

id of the consent.

type(ConsentTypeType)

The type of the consent.

value(ConsentValue!)

Value of the consent.

Example

{
  "id": 1,
  "code": "abc123",
  "value": "ACCEPTED",
  "type": ConsentTypeType
}

ConsentTypeType

A type of consent that a signing identity can accept or reject to.

Fields

NameDescription
code(String!)

Unique code given to this consent type.

defaultValue(ConsentValue!)

Default value of the consent type.

description(String!)

Description of the consent type.

name(String!)

Name of the consent type.

Example

{
  "code": "abc123",
  "description": "abc123",
  "name": "abc123",
  "defaultValue": "ACCEPTED"
}

ConstituentConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ConstituentEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ConstituentEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ConstituentEdge

A Relay edge containing a Constituent and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ConstituentInterface)

The item at the end of the edge

Example

{
  "node": ConstituentInterface,
  "cursor": "abc123"
}

Fields

NameDescription
endDate(Date)

End date of the consumption period.

quantity(Decimal)

Amount of energy or resource consumed.

startDate(Date)

Start date of the consumption period.

supplyCharge(Int)

Supply charge amount in minor currency units.

unit(ConsumptionUnit)

usageCost(Int)

Cost for the consumption usage in minor currency units.

Example

{
  "startDate": "2020-01-01",
  "endDate": "2020-01-01",
  "quantity": "1.0",
  "unit": "kWh",
  "usageCost": 1,
  "supplyCharge": 1
}

ConsumptionBreakdownConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ConsumptionBreakdownConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ConsumptionBreakdownConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ConsumptionBreakdownConnectionTypeEdge

A Relay edge containing a ConsumptionBreakdownConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ConsumptionBreakdownType)

The item at the end of the edge

Example

{
  "node": ConsumptionBreakdownType,
  "cursor": "abc123"
}

Fields

NameDescription
charges(ChargesBreakdownConnectionTypeConnection)

Charges grouped per displayed period.

Arguments

after (String)

before (String)

first (Int)

last (Int)

marketName(String)

Name of the market the charges are for.

Example

{
  "marketName": "abc123",
  "charges": ChargesBreakdownConnectionTypeConnection
}

Fields

NameDescription
splitPercentage(Decimal)

Percentage split for this TOU time slot.

timeSlot(String)

Specific time slot within the TOU scheme (e.g. PEAK, OFFPEAK, SHOULDER).

Example

{
  "timeSlot": "abc123",
  "splitPercentage": "1.0"
}

ContactEmailType

A contact email address for the account user.

Fields

NameDescription
createdAt(DateTime)

When the contact email was added.

email(String)

The contact email address.

Example

{
  "email": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Contract

A legally binding relationship agreed with a subject (e.g. an account).

Fields

NameDescription
cancelledAt(DateTime)

Date when the contract was cancelled, null if not cancelled.

identifier(NonEmptyString)

Unique identifier for the contract.

lifecycle(ContractVersion)

The current version information for this contract.

notes([ContractNoteType])

Notes associated with this contract.

party(ContractParty)

The party (Account or Business) that entered into this contract.

rescindedAt(DateTime)

Date when the contract was rescinded, null if not rescinded.

revokedAt(DateTime)

Date when the contract was revoked, null if not revoked.

signedAt(DateTime)

Date when the contract was signed.

status(ContractStatus)

The status of the contract.

subject([AccountType])

The accounts impacted by this contract.

terms([TermInterface])

The terms of the contract.

title(String)

Title of the contract.

validFrom(DateTime)

Date from which the contract is valid.

validTo(DateTime)

Date until which the contract is valid, null if the contract is rolling.

Example

{
  "identifier": NonEmptyString,
  "title": "abc123",
  "party": AccountType,
  "subject": [AccountType],
  "status": "REVOKED",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "signedAt": "2020-01-01T00:00:00.000Z",
  "cancelledAt": "2020-01-01T00:00:00.000Z",
  "rescindedAt": "2020-01-01T00:00:00.000Z",
  "revokedAt": "2020-01-01T00:00:00.000Z",
  "lifecycle": ContractVersion,
  "terms": TermInterface
}

ContractCreationContext

Represents a version of a contract with its effective date.

Fields

NameDescription
confirmedValidityPeriod(ValidityPeriod)

The confirmed validity period for the associated contract.

requestedValidityPeriod(ValidityPeriod)

The requested validity period for the associated contract.

Example

{
  
}

ContractCreationJourneyType

Represents a Contract Creation Journey.

Fields

NameDescription
context(ContractCreationContext)

The context data for the contract creation journey.

contractDetails(ContractDetails)

The details of the associated contract.

journeyType(ContractJourneyType)

The type of the contract journey.

notes([ContractNoteType])

Notes associated with this contract journey.

number(NonEmptyString!)

The number of the contract journey.

orderReference(String)

The order reference associated with the contract journey.

requestedAt(DateTime)

The date and time when the contract journey was requested.

status(ContractJourneyStatus)

The status of the contract journey.

Example

{
  "number": NonEmptyString,
  "status": "IN_PROGRESS",
  "contractDetails": ContractDetails,
  "journeyType": "CONTRACT_CREATION",
  "requestedAt": "2020-01-01T00:00:00.000Z",
  "orderReference": "abc123"
}

ContractDetails

Details of a contract excluding terms.

Fields

NameDescription
cancelledAt(DateTime)

Date when the contract was cancelled, null if not cancelled.

identifier(NonEmptyString)

Unique identifier for the contract.

lifecycle(ContractVersion)

The current version information for this contract.

notes([ContractNoteType])

Notes associated with this contract.

party(ContractParty)

The party (Account or Business) that entered into this contract.

rescindedAt(DateTime)

Date when the contract was rescinded, null if not rescinded.

revokedAt(DateTime)

Date when the contract was revoked, null if not revoked.

signedAt(DateTime)

Date when the contract was signed.

status(ContractStatus)

The status of the contract.

subject([AccountType])

The accounts impacted by this contract.

title(String)

Title of the contract.

validFrom(DateTime)

Date from which the contract is valid.

validTo(DateTime)

Date until which the contract is valid, null if the contract is rolling.

Example

{
  "identifier": NonEmptyString,
  "title": "abc123",
  "party": AccountType,
  "subject": [AccountType],
  "status": "REVOKED",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "signedAt": "2020-01-01T00:00:00.000Z",
  "cancelledAt": "2020-01-01T00:00:00.000Z",
  "rescindedAt": "2020-01-01T00:00:00.000Z",
  "revokedAt": "2020-01-01T00:00:00.000Z",
  "lifecycle": ContractVersion
}

ContractMetaDataType

Represents additional metadata for a contract term.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

metadata(JSONString)

The additional metadata of the contract.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "metadata": {"key": "value"}
}

ContractNoteReasonType

A reason that can be associated with a contract note.

Fields

NameDescription
activityTypes([ContractActivityTypeOptions])

The contract activity types this reason applies to.

description(String)

Human-readable description of this reason.

slug(String)

Unique slug identifier for this reason.

Example

{
  "slug": "abc123",
  "description": "abc123",
  "activityTypes": "ALL_ACTIVITY_TYPES"
}

ContractNoteType

A note associated with a contract or contract journey.

Fields

NameDescription
activityType(ContractActivityTypeOptions)

The contract activity type this note is associated with.

createdAt(DateTime)

When the note was created.

note(String)

The content of the note.

reason(ContractNoteReasonType)

The reason associated with this note.

Example

{
  "note": "abc123",
  "activityType": "ALL_ACTIVITY_TYPES",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountContractIdentifier(String)

Identifier of the account contract this join supplier process is subject to.

businessContractIdentifier(String)

Identifier of the business contract this join supplier process is subject to.

Example

{
  "accountContractIdentifier": "abc123",
  "businessContractIdentifier": "abc123"
}

ContractVersion

Represents a version of a contract with its effective date.

Fields

NameDescription
effectiveFrom(DateTime)

The date from which this version of the contract becomes effective.

versionReference(Int)

The reference number for this contract version.

Example

{
  "versionReference": 1,
  "effectiveFrom": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

periods([ContractedVolumePeriodType])

The periods for the contracted volume configuration.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "periods": [ContractedVolumePeriodType]
}

Fields

NameDescription
characteristics(GenericScalar)

The market-supply-characteristic scope, as a code-to-value map.

marketName(String)

The market name the contracted volume applies to.

maximum(Decimal)

Optional upper bound around the value (e.g. a tolerance cap).

measurementPeriod(String)

The measurement cadence of the quantity (WHOLE_PERIOD, DAILY or HOURLY).

minimum(Decimal)

Optional lower bound around the value (e.g. a take-or-pay floor).

unit(String)

The unit for the commodity provided by the contracted volume.

validFrom(DateTime)

When the contracted volume is valid from.

validTo(DateTime)

When the contracted volume is valid to.

value(Decimal)

The decimal value of the quantity provided by the contracted volume.

Example

{
  "value": "1.0",
  "unit": "abc123",
  "marketName": "abc123",
  "measurementPeriod": "abc123",
  "minimum": "1.0",
  "maximum": "1.0",
  "characteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

ContributionAgreementType

A single Contribution Agreement.

Fields

NameDescription
activeFrom(DateTime)

The start datetime of the agreement.

activeTo(DateTime)

The end datetime of the agreement, if any.

amount(Int)

The amount contributed per interval. Note, this is in the smallest domination that the currecy support. e.g. Pence, Cents, Yen, etc.

contributionScheme(ContributionSchemeType)

The scheme to which the agreement contributes.

id(ID!)

interval(Interval)

The frequency of contributions.

periods(ContributionPeriodConnection)

The periods over which contributions have been made.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "contributionScheme": ContributionSchemeType,
  "interval": "MONTHLY",
  "activeFrom": "2020-01-01T00:00:00.000Z",
  "activeTo": "2020-01-01T00:00:00.000Z",
  "amount": 1,
  "periods": ContributionPeriodConnection
}

ContributionPeriodConnection

Pagination for contribution periods.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ContributionPeriodEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ContributionPeriodEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ContributionPeriodEdge

A Relay edge containing a ContributionPeriod and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ContributionPeriodType)

The item at the end of the edge

Example

{
  "node": ContributionPeriodType,
  "cursor": "abc123"
}

ContributionPeriodType

A single Contribution Period.

Fields

NameDescription
agreement(ContributionAgreementType!)

fulfilledAt(DateTime)

When the contribution was fulfilled

id(ID!)

periodFrom(DateTime)

The datetime the marks the beginning of the period.

periodTo(DateTime)

The datetime the marks the end of the period.

Example

{
  "id": "abc123",
  "fulfilledAt": "2020-01-01T00:00:00.000Z",
  "agreement": ContributionAgreementType,
  "periodFrom": "2020-01-01T00:00:00.000Z",
  "periodTo": "2020-01-01T00:00:00.000Z"
}

ContributionSchemeType

A single Contribution Scheme.

Fields

NameDescription
acceptingContributions(Boolean!)

Is this scheme currently accepting contributions?

code(String!)

displayName(String!)

id(ID!)

taxable(Boolean!)

Are contributions to this scheme taxable?

Example

{
  "id": "abc123",
  "code": "abc123",
  "displayName": "abc123",
  "taxable": true,
  "acceptingContributions": true
}

Fields

NameDescription
latitude(Float)

longitude(Float)

Example

{
  "latitude": 1.0,
  "longitude": 1.0
}

CoreSiteworksAppointmentType

An appointment linked to a request

Fields

NameDescription
appointmentDate(Date)

The date of the appointment in local time.

createdAt(DateTime!)

externalReference(String!)

id(UUID!)

jobType(String)

The type of job for the appointment.

status(OnSiteJobsAppointmentStatus)

The current status of the appointment.

timeSlotEnd(Time)

The end time of the appointment slot in local time.

timeSlotStart(Time)

The start time of the appointment slot in local time.

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "externalReference": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "status": "PENDING_KRAKEN_TIMESLOT_SELECTION",
  "appointmentDate": "2020-01-01",
  "timeSlotStart": "00:00:00.000Z",
  "timeSlotEnd": "00:00:00.000Z",
  "jobType": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([CoreSiteworksRequestConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": CoreSiteworksRequestConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

CoreSiteworksRequestConnectionTypeEdge

A Relay edge containing a CoreSiteworksRequestConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CoreSiteworksRequestType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

CoreSiteworksRequestType

A Siteworks Request

Fields

NameDescription
appointments([CoreSiteworksAppointmentType])

List of appointments linked to this request.

createdAt(DateTime!)

id(UUID!)

lastStatusUpdateAt(DateTime!)

When the request status was last updated.

marketSupplyPoints(SupplyPointConnectionTypeConnection)

List of supply points on request.

Deprecated

The 'marketSupplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

reason(String!)

status(String!)

supplyPointsInterface(SupplyPointInterfaceConnection)

List of supply points on request. Node type is the CommonSupplyPointInterface; use inline fragments to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "status": "abc123",
  "reason": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "lastStatusUpdateAt": "2020-01-01T00:00:00.000Z",
  "marketSupplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection,
  "appointments": [CoreSiteworksAppointmentType]
}

Fields

NameDescription
length(Int)

The length of the corrective period window.

lengthUnit(String)

The unit of time for the corrective period length.

marketName(String)

The market this corrective period configuration applies to.

supplyPointIds([BigInt])

Supply point IDs this config applies to. NULL means all supply points in this market.

Example

{
  "marketName": "abc123",
  "supplyPointIds": [1],
  "length": 1,
  "lengthUnit": "abc123"
}

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

marketConfigs([CorrectivePeriodMarketConfigType])

Per-market corrective period configurations.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "marketConfigs": [CorrectivePeriodMarketConfigType]
}

Fields

NameDescription
costOfChargeId(String)

isSmartCharge(Boolean)

krakenflexDeviceId(String)

reportDate(Date)

totalConsumption(Float)

Consumption in kWh.

totalCostExclTax(Float)

Cost in pence (excl. tax).

totalCostInclTax(Float)

Cost in pence (incl. tax).

Example

{
  "costOfChargeId": "abc123",
  "krakenflexDeviceId": "abc123",
  "reportDate": "2020-01-01",
  "isSmartCharge": true,
  "totalConsumption": 1.0,
  "totalCostExclTax": 1.0,
  "totalCostInclTax": 1.0
}

CreateAPICall

Output type of the createApiCall mutation.

Fields

NameDescription
apiCall(APICallType)

The created APICall.

Example

{
  
}

CreateAPIException

Output type of the createApiException mutation.

Fields

NameDescription
apiException(APIExceptionType)

The created APIException.

Example

{
  
}

CreateAPIExceptionEvent

Output type of the createApiExceptionEvent mutation.

Fields

NameDescription
apiExceptionEvent(APIExceptionEventType)

The created APIExceptionEvent.

Example

{
  
}

CreateAPIExceptionNote

Output type of the createApiExceptionNote mutation.

Fields

NameDescription
apiException(APIExceptionType)

The created APIExceptionNote.

Example

{
  
}

CreateAccountCharge

Output type of the createAccountCharge mutation.

Fields

NameDescription
accountCharge(AccountChargeType)

Example

{
  "accountCharge": AccountChargeType
}

CreateAccountFileAttachmentPayload

Output type of the createAccountFileAttachment mutation.

Fields

NameDescription
clientMutationId(String)

Deprecated

The 'clientMutationId' field is deprecated.

This field is a relic of early Relay conventions and is no longer necessary.

- Marked as deprecated on 2026-07-29.
- Scheduled for removal on or after 2027-07-29.

postRequest(UploadPostRequest)

Example

{
  "postRequest": UploadPostRequest,
  "clientMutationId": "abc123"
}

CreateAccountManualHold

Output type of the createAccountManualHold mutation.

Fields

NameDescription
accountManualHold(AccountManualHoldType!)

The created manual hold.

Example

{
  
}

CreateAccountNote

Output type of the createAccountNote mutation.

Fields

NameDescription
account(AccountType)

Account, which has the added note.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "account": AccountType,
  "possibleErrors": [PossibleErrorType]
}

CreateAccountPaymentSchedule

Output type of the createAccountPaymentSchedule mutation.

Fields

NameDescription
schedule(PaymentScheduleType!)

New payment schedule.

Example

{
  "schedule": PaymentScheduleType
}

CreateAccountReference

Output type of the createAccountReference mutation.

Fields

NameDescription
accountReference(AccountReferenceType)

Example

{
  "accountReference": AccountReferenceType
}

CreateAccountReminder

Output type of the createAccountReminder mutation.

Fields

NameDescription
accountReminder(AccountReminder)

Account reminder.

Example

{
  
}

Output type of the createAffiliateLink mutation.

Fields

NameDescription
affiliateLink(AffiliateLinkType)

The created affiliate link.

Example

{
  
}

CreateAffiliateOrganisation

Output type of the createAffiliateOrganisation mutation.

Fields

NameDescription
affiliateOrganisation(AffiliateOrganisationType)

The created affiliate organisation.

Example

{
  
}

CreateAffiliateSession

Output type of the createAffiliateSession mutation.

Fields

NameDescription
affiliateSession(AffiliateSessionType)

The created affiliate session.

Example

{
  
}

CreateAgreement

Output type of the createAgreement mutation.

Fields

NameDescription
agreement(CommonAgreementType)

The created agreement.

Example

{
  "agreement": CommonAgreementType
}

CreateAgreementRollover

Output type of the createAgreementRollover mutation.

Fields

NameDescription
agreementRollover(AgreementRolloverType)

The new agreement rollover.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "agreementRollover": AgreementRolloverType,
  "possibleErrors": [PossibleErrorType]
}

CreateAudioRecording

Output type of the createAudioRecording mutation.

Fields

NameDescription
audioRecording(AudioRecordingType)

The created audio recording.

Example

{
  
}

CreateBusiness

Output type of the createBusiness mutation.

Fields

NameDescription
business(BusinessType)

The created business.

Example

{
  "business": BusinessType
}

CreateCallMetadata

Output type of the createCallMetadata mutation.

Fields

NameDescription
call(CallInterface)

The call metadata was attached to.

Example

{
  
}

CreateCampaignItems

Output type of the createCampaignItems mutation.

Fields

NameDescription
batchIdentifier(String)

The identifier for this batch of items to assist in tracking and logging.

campaignItems([VoiceCampaignItemType])

Example

{
  "batchIdentifier": "abc123"
}

CreateCollectionProcessEvent

Output type of the createCollectionProcessEvent mutation.

Fields

NameDescription
collectionProcessEvent(CollectionProcessEventOutputType)

The created collection process event.

Example

{
  
}

CreateComplaint

Output type of the createComplaint mutation.

Fields

NameDescription
complaint(ComplaintType)

The complaint that has been created.

Example

{
  "complaint": ComplaintType
}

CreateContractGroupOutput

Output type for creating a contract group.

Fields

NameDescription
contractGroupIdentifier(NonEmptyString!)

Unique identifier for the created or matched contract group.

Example

{
  "contractGroupIdentifier": NonEmptyString
}

CreateContractOutput

Output type for creating a contract.

Fields

NameDescription
identifier(NonEmptyString)

Unique identifier for the created contract.

wasCreated(Boolean!)

Indicates whether a new contract was created (True) or an existing contract was matched (False). When False, the mutation is idempotent and returns the existing contract that matches the provided parameters.

Example

{
  "identifier": NonEmptyString,
  "wasCreated": true
}

CreateContributionAgreement

Output type of the createContributionAgreement mutation.

Fields

NameDescription
contributionAgreement(ContributionAgreementType)

The created contribution agreement.

Example

{
  "contributionAgreement": ContributionAgreementType
}

CreateCreditTransferPermission

Output type of the createCreditTransferPermission mutation.

Fields

NameDescription
validFrom(DateTime)

Datetime when the credit transfer permission is valid.

Example

{
  "validFrom": "2020-01-01T00:00:00.000Z"
}

CreateCustomerFeedback

Output type of the createCustomerFeedback mutation.

Fields

NameDescription
customerFeedback(CustomerFeedbackType)

The created customer feedback object.

Example

{
  "customerFeedback": CustomerFeedbackType
}

CreateDepositAgreement

Output type of the createDepositAgreement mutation.

Fields

NameDescription
depositAgreement(CreateDepositAgreementOutput)

Example

{
  
}

Fields

NameDescription
depositAmount(Int)

depositRequired(Boolean)

Example

{
  "depositRequired": true,
  "depositAmount": 1
}

CreateElectricityMeterReadings

Output type of the createElectricityMeterReadings mutation.

Fields

NameDescription
numberOfReadingsCreated(Int)

readingDate(Date)

Example

{
  "readingDate": "2020-01-01",
  "numberOfReadingsCreated": 1
}

CreateExternalAccountEvent

Output type of the createExternalAccountEvent mutation.

Fields

NameDescription
event(ExternalAccountEvent)

The new event data.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "possibleErrors": [PossibleErrorType]
}

CreateExternalAccountUserEvent

Output type of the createExternalAccountUserEvent mutation.

Fields

NameDescription
event(ExternalAccountUserEvent)

The new event data.

Example

{
  
}

CreateExternalMessage

Output type of the createExternalMessage mutation.

Fields

NameDescription
externalMessage(ExternalMessageType)

The external message that was created.

Example

{
  
}

CreateExternalMessageEvent

Output type of the createExternalMessageEvent mutation.

Fields

NameDescription
externalMessageEvent(ExternalMessageEventType)

The external message event that was created.

Example

{
  
}

CreateGasMeterReadings

Output type of the createGasMeterReadings mutation.

Fields

NameDescription
numberOfReadingsCreated(Int)

readingDate(Date)

Example

{
  "readingDate": "2020-01-01",
  "numberOfReadingsCreated": 1
}

CreateGoodsPurchase

Output type of the createGoodsPurchase mutation.

Fields

NameDescription
goodsPurchase(GoodsPurchase)

Goods purchase created.

Example

{
  "goodsPurchase": GoodsPurchase
}

CreateGoodsQuote

Output type of the createGoodsQuote mutation.

Fields

NameDescription
goodsQuote(GoodsQuote)

Goods quote created for the customer.

Example

{
  "goodsQuote": GoodsQuote
}

CreateGoodsQuoteWithoutAccount

Output type of the createGoodsQuoteWithoutAccount mutation.

Fields

NameDescription
goodsQuote(GoodsQuote)

Goods quote created for the customer.

Example

{
  "goodsQuote": GoodsQuote
}

Fields

NameDescription
id(UUID!)

UUID identifying the call, also used as an idempotency key.

reason(String)

The reason for the given status.

status(CreateHistoricalCallResultStatus!)

The processing status: success, skipped, or error.

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "status": "SUCCESS",
  "reason": "abc123"
}

CreateHistoricalCalls

Output type of the createHistoricalCalls mutation.

Fields

NameDescription
results([CreateHistoricalCallResultType])

Per-call processing results.

summary(CreateHistoricalCallsSummaryType)

Summary counts of the processing results.

Example

{
  
}

Fields

NameDescription
failed(Int!)

Number of calls that failed to process.

successful(Int!)

Number of calls that were successfully created or skipped.

total(Int!)

Total number of calls processed.

Example

{
  "total": 1,
  "successful": 1,
  "failed": 1
}

CreateInboundCall

Output type of the createInboundCall mutation.

Fields

NameDescription
call(InboundCallType)

The call that was created.

Example

{
  
}

CreateInkInboundMessage

Output type of the createInkInboundMessage mutation.

Fields

NameDescription
message(InkMessage!)

The Ink message that was created.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "message": InkEmail,
  "possibleErrors": [PossibleErrorType]
}

CreateInkLiveChatMessage

Output type of the createInkLiveChatMessage mutation.

Fields

NameDescription
liveChatConversation(InkLiveChatConversation)

The live chat conversation.

messageRelayId(String!)

The ID of the Ink Live Chat message that was created.

Example

{
  "liveChatConversation": InkLiveChatConversation,
  "messageRelayId": "abc123"
}

CreateInternalCompany

Output type of the createInternalCompany mutation.

Fields

NameDescription
internalCompany(CreateInternalCompanyResultType)

The result of the create internal company operation.

Example

{
  
}

CreateInternalCompanyResultType

The result of the create internal company mutation.

Fields

NameDescription
id(ID!)

The ID of the internal company that was created.

Example

{
  "id": "abc123"
}

CreateKnowledgeDatabaseArticleFromText

Output type of the createKnowledgeDatabaseArticleFromText mutation.

Fields

NameDescription
articleId(Int)

The ID of the newly created article.

Example

{
  "articleId": 1
}

CreateLead

Output type of the createLead mutation.

Fields

NameDescription
leadNumber(String)

The unique number of the lead.

Example

{
  "leadNumber": "abc123"
}

CreateMetadata

Output type of the createMetadata mutation.

Fields

NameDescription
metadata(Metadata)

Example

{
  "metadata": Metadata
}

CreateMfaDevice

Output type of the createMfaDevice mutation.

Fields

NameDescription
deviceEmail(String)

Email address to send the MFA code by default.

devicePhone(String)

Phone number to send the MFA code by default.

totpSecret(String)

Secret to setup Time-based One-Time Passwords (TOTP) in your authenticator or password manager manually.

Example

{
  "deviceEmail": "abc123",
  "devicePhone": "abc123",
  "totpSecret": "abc123"
}

Fields

NameDescription
content(String)

id(String)

Example

{
  "content": "abc123",
  "id": "abc123"
}

CreateOfferGroupForQuoting

Output type of the createOfferGroupForQuoting mutation.

Fields

NameDescription
offerGroup(CreateOfferGroupType)

Quoting Offer Group.

Example

{
  "offerGroup": CreateOfferGroupType
}

Fields

NameDescription
identifier(ID)

Identifier of the Offer Group.

offers([OfferType])

One or more Offers contained in the Offer Group.

Example

{
  "identifier": "abc123",
  "offers": [OfferType]
}

CreateOnSiteJobsAppointment

Output type of the createOnSiteJobsAppointment mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The created On-Site Jobs appointment.

Example

{
  
}

CreateOnSiteJobsAppointmentWithDate

Output type of the createOnSiteJobsAppointmentWithDate mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The created On-Site Jobs appointment.

Example

{
  
}

CreateOnSiteJobsAppointmentWithoutBooking

Output type of the createOnSiteJobsAppointmentWithoutBooking mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The created Appointment.

Example

{
  
}

CreateOnSiteJobsAppointmentWithoutDateOrTime

Output type of the createOnSiteJobsAppointmentWithoutDateOrTime mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The created On-Site Jobs appointment.

Example

{
  
}

CreateOnSiteJobsRequest

Output type of the createOnSiteJobsRequest mutation.

Fields

NameDescription
onSiteJobsRequest(OnSiteJobsRequestType)

The created request.

Example

{
  
}

CreateOpportunityAndLead

Output type of the createOpportunityAndLead mutation.

Fields

NameDescription
dateOfCreation(DateTime)

The date the opportunity was created.

funnelCode(String)

The code of the funnel.

opportunityNumber(String)

The unique number of the opportunity.

stage(String)

The stage of the opportunity.

Example

{
  "opportunityNumber": "abc123",
  "dateOfCreation": "2020-01-01T00:00:00.000Z",
  "stage": "abc123",
  "funnelCode": "abc123"
}

CreateOpportunityFileAttachment

Output type of the createOpportunityFileAttachment mutation.

Fields

NameDescription
result(String)

Whether the operation was successful.

Example

{
  "result": "abc123"
}

CreateOpportunityForLead

Output type of the createOpportunityForLead mutation.

Fields

NameDescription
dateOfCreation(DateTime)

The date the opportunity was created.

opportunityNumber(String)

The unique number of the opportunity.

Example

{
  "opportunityNumber": "abc123",
  "dateOfCreation": "2020-01-01T00:00:00.000Z"
}

CreateOrUpdateLoyaltyCardMutation

Output type of the createOrUpdateLoyaltyCard mutation.

Fields

NameDescription
loyaltyCard(LoyaltyCardType)

Created or updated loyalty card.

Example

{
  
}

CreateOrUpdateProductPricesOutput

The prices created for a product.

Fields

NameDescription
prices([ProductPrice!]!)

The prices created.

Example

{
  
}

CreateOrUpdateTimeSeriesEntries

Summary information on the time series and associated variants once the creation and update operations have been completed.

Fields

NameDescription
code(String!)

The time series code.

description(String)

The time series description.

meta(JSONString)

The time series meta information.

name(String!)

The time series display name.

periodSize(String!)

The time series period size value.

productCode(String)

The product code associated to the time series.

unit(String!)

The time series unit value.

variants([VariantProfile!]!)

The existing time series variants based on the prices created.

Example

{
  "code": "abc123",
  "productCode": "abc123",
  "name": "abc123",
  "description": "abc123",
  "unit": "abc123",
  "periodSize": "abc123",
  "meta": {"key": "value"},
  "variants": VariantProfile
}

CreatePartnerUser

Output type of the createPartnerUser mutation.

Fields

NameDescription
partnerUser(PartnerUserType)

The created partner user.

Example

{
  
}

CreatePaymentActionIntent

Output type of the createPaymentActionIntent mutation.

Fields

NameDescription
token(ID!)

The action intent token.

Example

{
  "token": "abc123"
}

CreatePaymentMethodActionIntent

Output type of the createPaymentMethodActionIntent mutation.

Fields

NameDescription
token(ID!)

The action intent token.

Example

{
  "token": "abc123"
}

CreatePortfolio

Output type of the createPortfolio mutation.

Fields

NameDescription
portfolio(PortfolioType)

The created portfolio.

Example

{
  "portfolio": PortfolioType
}

CreatePortfolioUserRole

Output type of the createPortfolioUserRole mutation.

Fields

NameDescription
portfolioUserRole(PortfolioUserRoleType)

The created role for a user in association with a portfolio.

Example

{
  "portfolioUserRole": PortfolioUserRoleType
}

CreatePostEvents

Output type of the createPostEvents mutation.

Fields

NameDescription
createdEventsCount(Int)

Number of events successfully created.

Example

{
  "createdEventsCount": 1
}

CreateProductOutput

Output type for creating a product.

Fields

NameDescription
product(SupplyProductType)

The created product.

Example

{
  "product": SupplyProductType
}

CreateQuoteForAccount

Output type of the createQuoteForAccount mutation.

Fields

NameDescription
quoteRequest(MarketSupplyQuoteRequestType)

Returns a quote request.

Example

{
  
}

Fields

NameDescription
affiliateSessionId(ID)

The session id of the affiliate.

code(UUID!)

Code of the quote request that was generated.

electricitySupplyPoint(QuotedSupplyPointType)

Details about the quoted electricity supply point.

gasSupplyPoint(QuotedSupplyPointType)

Details about the quoted gas supply point.

requestedAt(DateTime!)

The date and time when this quote was requested.

Example

{
  "code": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "requestedAt": "2020-01-01T00:00:00.000Z",
  "affiliateSessionId": "abc123",
  "electricitySupplyPoint": QuotedSupplyPointType,
  "gasSupplyPoint": QuotedSupplyPointType
}

CreateReferral

Output type of the createReferral mutation.

Fields

NameDescription
referredAccountRewardAmount(Int)

The reward amount to be issued to the referred account, in smallest currency subunits.

Example

{
  "referredAccountRewardAmount": 1
}

CreateReminder

Output type of the createReminder mutation.

Fields

NameDescription
possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

reminder(Reminder)

Account reminder.

Example

{
  "reminder": Reminder,
  "possibleErrors": [PossibleErrorType]
}

CreateScheduledTransactions

Output type of the createScheduledTransactions mutation.

Fields

NameDescription
scheduledTransactions([ScheduledTransactionType])

Example

{
  "scheduledTransactions": [ScheduledTransactionType]
}

CreateShellAccountPayload

Output type of the createShellAccount mutation.

Fields

NameDescription
account(AccountInterface)

billingAddressLine1(String)

First line of the billing address.

billingAddressLine2(String)

Second line of the billing address.

billingAddressLine3(String)

Third line of the billing address.

billingAddressLine4(String)

Fourth line of the billing address.

billingAddressLine5(String)

Fifth line of the billing address.

billingName(String)

The name to use for billing purposes.

billingPeriodDay(Int)

Day to fixed bill on if billingperiodlength set.

billingPeriodLength(String)

For fixed billing accounts only, the length of their billing period. Can be MONTHLY or QUARTERLY.

billingPeriodMonth(Int)

Month to start billing from if billingperiodlength set to QUARTERLY or the multiplier is > 1.

billingPeriodMultiplier(Int)

For fixed billing accounts only, the number the period length is to be multiplied by to get the total period length, i.e. for billing every second month, select 2 combined with a billing period length MONTHLY. Can't be > 1 for quarterly billing.

billingPostcode(String)

The billing address postcode.

billingRichAddress(String)

This must be a string-ified version of the JSON representation of RichAddressInput type.

brand(String)

The brand associated with the account.

businessType(String)

The type of business for business accounts.

clientMutationId(String)

A unique identifier for the client performing the mutation.

companyName(String)

The name of the company for business accounts.

companyNumber(String)

The company registration number for business accounts.

dateOfBirth(Date)

The user's date of birth.

email(String!)

The email address of the account user.

errors([ErrorType])

A list of validation errors.

familyName(String!)

The family name of the account user.

givenName(String!)

The given name of the account user.

isBusinessAccount(Boolean)

Whether this is a business account.

landline(String)

The user's landline phone number.

mobile(String)

The mobile number of the account user.

password(String)

The password for the account user.

passwordUpdateToken(String)

Token required to set a password during account creation.

portfolioNumber(String)

The portfolio number associated with the account.

taxNumber(String)

The tax number for the business account.

urn(String)

Unique reference number from a 3rd party enrolment.

Example

{
  "account": AccountInterface,
  "clientMutationId": "abc123",
  "email": "abc123",
  "givenName": "abc123",
  "familyName": "abc123",
  "mobile": "abc123",
  "billingAddressLine1": "abc123",
  "billingAddressLine2": "abc123",
  "billingAddressLine3": "abc123",
  "billingAddressLine4": "abc123",
  "billingAddressLine5": "abc123",
  "billingPostcode": "abc123",
  "isBusinessAccount": true,
  "urn": "abc123",
  "portfolioNumber": "abc123",
  "billingName": "abc123",
  "brand": "abc123",
  "dateOfBirth": "2020-01-01",
  "billingRichAddress": "abc123",
  "billingPeriodLength": "abc123",
  "billingPeriodMultiplier": 1,
  "billingPeriodDay": 1,
  "billingPeriodMonth": 1,
  "companyName": "abc123",
  "companyNumber": "abc123",
  "businessType": "abc123",
  "taxNumber": "abc123",
  "password": "abc123",
  "passwordUpdateToken": "abc123",
  "landline": "abc123",
  "errors": [ErrorType]
}

Fields

NameDescription
code(String!)

The time series code.

description(String)

The time series description.

meta(JSONString)

The time series meta information.

name(String!)

The time series display name.

periodSize(String!)

The time series period size value.

productCode(String)

The product code associated to the time series.

unit(String!)

The time series unit value.

variants([VariantProfile!]!)

The existing time series variants based on the prices created.

Example

{
  "code": "abc123",
  "productCode": "abc123",
  "name": "abc123",
  "description": "abc123",
  "unit": "abc123",
  "periodSize": "abc123",
  "meta": {"key": "value"},
  "variants": VariantProfile
}

Credit

A credit to the customer from the energy retailer.

Fields

NameDescription
accountNumber(String)

Unique identifier of the account the transaction belongs to.

amount(Int)

Gross amount including tax (when payable). Refer to the amounts field for a breakdown of this information.

amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

balanceCarriedForward(Int)

The customer's resulting balance after this transaction has been applied, in the smallest unit of currency.

billingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

createdAt(DateTime)

The date time when the transaction is created.

hasStatement(Boolean)

Returns True if the transaction is linked with a statement.

id(ID)

Unique identifier for the transaction.

isAccountCharge(Boolean)

Deprecated.

Deprecated

The 'isAccountCharge' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isAccountPayment(Boolean)

Deprecated.

Deprecated

The 'isAccountPayment' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isCredit(Boolean)

Deprecated.

Deprecated

The 'isCredit' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isHeld(Boolean)

Whether the statement this transaction is on has been held. A held statement is not sent to a customer automatically, but is instead marked for manual attention by operations staff. Returns False if a statement is not linked with the transaction.

isIssued(Boolean)

Whether this transaction has been issued on any billing document.Note: Look for the most recently issued transaction instead of looking through all transactions as some accounts may have initial transactions that were not issued.This will return False if the transaction is not associated with any billing documents.

isReversed(Boolean!)

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

Date when the transaction was posted to the account.

reasonCode(String)

Returns the reason.

statementId(ID)

Returns None if a statement is not linked with the transaction.

Deprecated

The 'statementId' field is deprecated.

Use `billingDocumentIdentifier` instead.

- Marked as deprecated on 2023-11-30.
- Scheduled for removal on or after 2024-06-01.

title(String)

Human-readable title describing the transaction.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123",
  "amount": 1,
  "amounts": TransactionAmountType,
  "balanceCarriedForward": 1,
  "isCredit": true,
  "isAccountCharge": true,
  "isAccountPayment": true,
  "isHeld": true,
  "isIssued": true,
  "title": "abc123",
  "billingDocumentIdentifier": "abc123",
  "statementId": "abc123",
  "isReversed": true,
  "hasStatement": true,
  "note": "abc123",
  "reasonCode": "abc123"
}

Fields

NameDescription
code(String)

The credit reason code.

display(String)

The credit reason display text.

group(String)

The group the credit reason belongs to (if applicable).

isDeprecated(Boolean)

Whether the credit reason is deprecated.

isHidden(Boolean)

Whether the credit reason is hidden.

isTaxExempt(Boolean)

Whether the credit reason is sales tax exempt.

Example

{
  "code": "abc123",
  "display": "abc123",
  "isDeprecated": true,
  "isTaxExempt": true,
  "isHidden": true,
  "group": "abc123"
}

Fields

NameDescription
accountNumber(String)

The number of the account linked to this permission.

ledgerNumber(String)

The number of the ledger linked to this permission.

validFrom(DateTime)

The datetime from which the permission is valid.

validTo(DateTime)

The datetime to which the permission is valid.

Example

{
  "ledgerNumber": "abc123",
  "accountNumber": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountNumber(String)

The number of the account linked to this permission.

ledgerNumber(String)

The number of the ledger linked to this permission.

validFrom(DateTime)

The datetime from which the permission is valid.

validTo(DateTime)

The datetime to which the permission is valid.

Example

{
  "ledgerNumber": "abc123",
  "accountNumber": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
fromSourceLedgers([CreditTransferPermissionFromSourceLedgerType])

Permissions for credit transfers when the ledger is the target.

toTargetLedgers([CreditTransferPermissionToTargetLedgerType])

Permissions for credit transfers when the ledger is the source.


Fields

NameDescription
isEligible(Boolean)

The current eligibility status for a deposit return.

reasonsForIneligibility([String])

The reasons why the account is currently ineligible for a deposit return.

Example

{
  "isEligible": true,
  "reasonsForIneligibility": ["abc123"]
}

CustomerAssetType

Customer asset type for GraphQL

Fields

NameDescription
accountNumber(String)

Account number.

activeFrom(DateTime)

When the customer asset became active.

activeTo(DateTime)

When device became inactive (null if active).

id(ID)

Customer asset ID.

name(String)

Asset name.

physicalId(String)

Physical device ID (e.g., VIN for a vehicle).

type(String)

Asset type.

Example

{
  "id": "abc123",
  "physicalId": "abc123",
  "name": "abc123",
  "type": "abc123",
  "activeFrom": "2020-01-01T00:00:00.000Z",
  "activeTo": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123"
}

CustomerFeedbackFormConnectionTypeConnection

Paginator of Customer Feedback Form.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([CustomerFeedbackFormConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": CustomerFeedbackFormConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

CustomerFeedbackFormConnectionTypeEdge

A Relay edge containing a CustomerFeedbackFormConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CustomerFeedbackFormType)

The item at the end of the edge

Example

{
  "node": CustomerFeedbackFormType,
  "cursor": "abc123"
}

Fields

NameDescription
id(ID)

The unique identifier for the customer feedback form.

name(String)

The name of the customer feedback form.

Example

{
  "id": "abc123",
  "name": "abc123"
}

Fields

NameDescription
id(ID!)

rawScore(Int)

The value attached to the source

submittedAt(DateTime)

The datetime the feedback was submitted

Example

{
  "id": "abc123",
  "rawScore": 1,
  "submittedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountNumber(String!)

The account number.

ledgerNumber(String)

The ledger identifier.

Example

{
  "accountNumber": "abc123",
  "ledgerNumber": "abc123"
}

Fields

NameDescription
accountNumber(String!)

The account number.

agency(String!)

The agency.

campaign(String!)

The campaign.

commencementStatus(Boolean!)

Whether the commencement could be applied.

ledgerNumber(String)

The ledger identifier.

Example

{
  "commencementStatus": true,
  "accountNumber": "abc123",
  "ledgerNumber": "abc123",
  "agency": "abc123",
  "campaign": "abc123"
}

Fields

NameDescription
accountNumber(String!)

The account number.

commencementStatus(Boolean!)

Whether the update has been applied.

Example

{
  "commencementStatus": true,
  "accountNumber": "abc123"
}

Dashboard

A list of components which comprise a dashboard screen.

Fields

NameDescription
dashboardItems([SectionType]!)

The list of sections for a dashboard.

id(ID)

Unique identifier of the object.

serialisedDashboardItems(String!)

The serialised dashboard items.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "dashboardItems": SectionType,
  "serialisedDashboardItems": "abc123"
}

Fields

NameDescription
endCursor(DateTime)

The cursor of the last item.

hasNextPage(Boolean)

Whether there are more items when paginating forwards.

hasPreviousPage(Boolean)

Whether there are previous items when paginating backwards.

startCursor(DateTime)

The cursor of the first item.

Example

{
  "startCursor": "2020-01-01T00:00:00.000Z",
  "endCursor": "2020-01-01T00:00:00.000Z",
  "hasPreviousPage": true,
  "hasNextPage": true
}

DeauthenticateDevice

Output type of the deauthenticateDevice mutation.

Fields

NameDescription
krakenflexDevice(DeviceDetailsType)

Example

{
  "krakenflexDevice": DeviceDetailsType
}

DeauthenticateFlexDevice

Output type of the deauthenticateFlexDevice mutation.

Fields

NameDescription
krakenflexDevice(DeviceDetailsType)

Example

{
  "krakenflexDevice": DeviceDetailsType
}

Fields

NameDescription
code(String!)

isActive(Boolean!)

name(String!)

Example

{
  "name": "abc123",
  "code": "abc123",
  "isActive": true
}

Fields

NameDescription
code(String!)

deprecatedAt(DateTime)

displayName(String!)

requiresFieldVisit(Boolean!)

Example

{
  "code": "abc123",
  "displayName": "abc123",
  "deprecatedAt": "2020-01-01T00:00:00.000Z",
  "requiresFieldVisit": true
}

Fields

NameDescription
agency(DebtCollectionAgencyType)

The agency responsible for the collection proceedings.

amount(Int)

campaign(CollectionCampaignType)

The campaign type of the collection proceedings.

Deprecated

The 'campaign' field is deprecated.

Use `collectionCampaign` instead

- Marked as deprecated on 2025-03-20.
- Scheduled for removal on or after 2025-04-30.

collectionCampaign(DebtCollectionCampaignType)

The campaign type of the collection proceedings.

startedAt(DateTime!)

stopReason(DebtCollectionProceedingStopReason)

stoppedAt(DateTime)

Example

{
  "campaign": "NONE",
  "amount": 1,
  "startedAt": "2020-01-01T00:00:00.000Z",
  "stoppedAt": "2020-01-01T00:00:00.000Z",
  "stopReason": "BANKRUPT"
}

DecimalReading

A reading with a decimal value taken at a specific time.

Fields

NameDescription
timestamp(DateTime!)

The timestamp when the reading was taken.

value(Decimal!)

The decimal value of the reading.

Example

{
  "timestamp": "2020-01-01T00:00:00.000Z",
  "value": "1.0"
}

DecimalType

Graphene type object to represent float values

Fields

NameDescription
decimalValue(Decimal!)

Value of this field.

Example

{
  "decimalValue": "1.0"
}

DeductLoyaltyPoints

Output type of the deductLoyaltyPoints mutation.

Fields

NameDescription
ledgerEntry(LoyaltyPointLedgerEntryType)

The ledger entry for the deducted loyalty points.

pointsDeducted(Int)

The number of loyalty points that were deducted.

Example

{
  "pointsDeducted": 1,
  "ledgerEntry": LoyaltyPointLedgerEntryType
}

DeeplinkActionType

An action which navigates to the URL of another backend screen.

Fields

NameDescription
id(ID)

Unique identifier of the object.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

url(String!)

The URL to navigate to.

Example

{
  "typeName": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "url": "abc123"
}

Fields

NameDescription
annualStandingCharge(Decimal)

Annual standing charge in €.

isGreen(Boolean)

Specifies whether this tariff is green.

GetAG considers a tariff as green if - it consists completely of renewables or combined heat and power (CHP), or - it consists of at most 50% CHP and the remainder is at least 50% renewables.

monthlyStandingCharge(Decimal)

Monthly standing charge in €.

offeredFrom(Date)

The start of the offer period of this tariff.

offeredTo(Date)

The end of the offer period of this tariff.

tariffName(String!)

The name of the tariff.

totalEstimatedAnnualBill(Decimal)

Total estimated annual bill in €.

totalEstimatedMonthlyBill(Decimal)

Total estimated monthly bill in €.

unitRatePerKwh(Decimal)

Unit rate per kWh in €.

validFrom(Date)

The start of the validity period of this tariff.

validTo(Date)

The end of the validity period of this tariff.

Example

{
  "tariffName": "abc123",
  "totalEstimatedAnnualBill": "1.0",
  "totalEstimatedMonthlyBill": "1.0",
  "annualStandingCharge": "1.0",
  "monthlyStandingCharge": "1.0",
  "unitRatePerKwh": "1.0",
  "isGreen": true,
  "offeredFrom": "2020-01-01",
  "offeredTo": "2020-01-01",
  "validFrom": "2020-01-01",
  "validTo": "2020-01-01"
}

Fields

NameDescription
supplierName(String!)

The name of the default electricity supplier.

supplierNumber(String!)

The BDEW-assigned ID of the default supplier.

tariffs([DefaultElectricitySupplierTariffType!]!)

Some of the tariffs that the default supplier offers.

Example

{
  "supplierName": "abc123",
  "supplierNumber": "abc123",
  "tariffs": DefaultElectricitySupplierTariffType
}

DelayerDaysType

Represents delayer days for active payment in a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
days(Int!)

Number of days to delay based on delay strategy.

description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

strategy(DelayerDaysStrategy!)

Defines the method for calculating the delay period.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "days": 1,
  "strategy": "FIXED"
}

DeleteAccountReference

Output type of the deleteAccountReference mutation.

Fields

NameDescription
accountReference(DeleteAccountReferenceType)

Example

{
  
}

Fields

NameDescription
namespace(String!)

The namespace associated with the removed AccountReference.

Example

{
  "namespace": "abc123"
}

DeleteBoostCharge

Output type of the deleteBoostCharge mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

DeleteKnowledgeDatabaseArticle

Output type of the deleteKnowledgeDatabaseArticle mutation.

Fields

NameDescription
articleId(Int)

The ID of the deleted article.

Example

{
  "articleId": 1
}

DeleteMfaDevice

Output type of the deleteMfaDevice mutation.

Fields

NameDescription
deviceDeleted(Boolean)

Flag to indicate if the MFA device has been successfully deleted.

Example

{
  "deviceDeleted": true
}

DeletePropertyDescendants

Output type of the deletePropertyDescendants mutation.

Fields

NameDescription
property(PropertyType)

The property whose descendants were deleted.

Example

{
  "property": PropertyType
}

DeletePushNotificationBinding

Output type of the deletePushNotificationBinding mutation.

Fields

NameDescription
status(DeletePushNotificationBindingOutput)

Example

{
  "status": "SUCCESSFUL"
}

Fields

NameDescription
supplyPointExternalId(String!)

The external identifier of the detached supply point.

Example

{
  "supplyPointExternalId": "abc123"
}

Fields

NameDescription
acceptedAt(DateTime)

The timestamp at which the customer accepted the deposit agreement.

collectionDate(Date)

The date on which a payment is requested for deposit collection (defaults to current date, if not specified in the deposit policy).

currentEligibilityStatus(CurrentEligibilityStatusOutput)

The current eligibility status for a deposit return.

depositAmount(Int)

The deposit agreement amount.

depositKey(String)

The deposit agreement key (unique).

dueDate(Date)

The date by which the deposit agreement must be fulfilled (defaults to 31-12-9999 i.e. deposit is never late, if not specified in the deposit policy).

fulfilledAt(DateTime)

The timestamp at which the deposit agreement was fulfilled.

returnStrategy(String)

The return strategy used to return the deposit.

Example

{
  "depositKey": "abc123",
  "depositAmount": 1,
  "acceptedAt": "2020-01-01T00:00:00.000Z",
  "fulfilledAt": "2020-01-01T00:00:00.000Z",
  "collectionDate": "2020-01-01",
  "dueDate": "2020-01-01",
  "returnStrategy": "abc123"
}

Fields

NameDescription
amount(Int)

The amount to be returned in this installment.

dueDate(Date)

The date by which the deposit return installment is due.

status(String)

The status of this return installment.

Example

{
  "dueDate": "2020-01-01",
  "amount": 1,
  "status": "abc123"
}

Fields

NameDescription
ok(Boolean!)

True if the agreements were successfully detached.

Example

{
  "ok": true
}

DetachSupplyPointFromEstimationGroup

Output type of the detachSupplyPointFromEstimationGroup mutation.

Fields

NameDescription
supplyPoint(DeletedSupplyPointEstimationGroupType)

The deleted supply point.

Example

{
  
}

Fields

NameDescription
deviceIdentifier(String)

The id of the device. This field can only be provided in the output if device level readings are also requested.

readings(Readings)

Get readings from a readable device e.g., a supply point, device, or register.

Arguments

endAt (DateTime!)

The exclusive end of the time period as an isoformatted string.

readingType (ReadingTypes!)

Get readings of only this type.

startAt (DateTime!)

The inclusive start of the time period as an isoformatted string.

timeGranularity (TimeGranularities)

Time buckets to group readings into.

timezone (String)

The timezone in which to return readings.

units ([Units])

Optional filter to return readings only for specific list of units or unit (e.g., KILOWATTHOURS, METERSCUBED, LITER, etc.).

registers(RegistersConnection)

The registers associated with this device.

Arguments

after (String)

before (String)

first (Int)

last (Int)

registerIdentifiers ([String])

The ids of the registers to get. If not provided, all registers for device will be returned.

Example

{
  "readings": Readings,
  "deviceIdentifier": "abc123",
  "registers": RegistersConnection
}

DeviceChargingSessionConnection

Paginator for device charging session.

Fields

NameDescription
edges([DeviceChargingSessionEdge]!)

Contains the nodes in this connection.

pageInfo(DateTimePageInfo)

Information to aid in DateTime pagination.

Example


DeviceChargingSessionEdge

A Relay edge containing a DeviceChargingSession and its cursor.

Fields

NameDescription
cursor(DateTime)

The cursor of the item.

node(DeviceChargingSession)

The item at the end of the edge

Example

{
  "node": DeviceChargingSession,
  "cursor": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
deviceType(KrakenFlexDeviceTypes)

The type of device.

krakenflexDeviceId(String)

The KrakenFlex identifier for this device.

provider(ProviderChoices)

The third party that provides control over this device.

Example

{
  "krakenflexDeviceId": "abc123",
  "provider": "BMW",
  "deviceType": "BATTERIES"
}

DeviceReAuthentication

Information about a device's re-authentication eligibility and status.

Fields

NameDescription
isEligible(Boolean)

    Whether the device is eligible for re-authentication.
    If it returns False, then re-authentication is not supported for this device.
    Please remove and re-add the device to restore connectivity.

Example

{
  "isEligible": true
}

Fields

NameDescription
readings(Readings)

Get readings from a readable device e.g., a supply point, device, or register.

Arguments

endAt (DateTime!)

The exclusive end of the time period as an isoformatted string.

readingType (ReadingTypes!)

Get readings of only this type.

startAt (DateTime!)

The inclusive start of the time period as an isoformatted string.

timeGranularity (TimeGranularities)

Time buckets to group readings into.

timezone (String)

The timezone in which to return readings.

units ([Units])

Optional filter to return readings only for specific list of units or unit (e.g., KILOWATTHOURS, METERSCUBED, LITER, etc.).

registerIdentifier(String)

The id of the register. This field can only be provided in the output if register level readings are also requested.

Example

{
  "readings": Readings,
  "registerIdentifier": "abc123"
}

DeviceRegistration

Output type of the deviceRegistration mutation.

Fields

NameDescription
registeredDeviceIds([String])

Device ID(s) of the registered device(s).

Example

{
  "registeredDeviceIds": ["abc123"]
}

DevicesConnection

Pagination for devices.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([DevicesEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": DevicesEdge,
  "totalCount": 1,
  "edgeCount": 1
}

DevicesEdge

A Relay edge containing a Devices and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Device)

The item at the end of the edge

Example

{
  "node": Device,
  "cursor": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([DirectDebitInstructionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": DirectDebitInstructionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

DirectDebitInstructionConnectionTypeEdge

A Relay edge containing a DirectDebitInstructionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(DirectDebitInstructionType)

The item at the end of the edge

Example

{
  "node": DirectDebitInstructionType,
  "cursor": "abc123"
}

DirectDebitInstructionType

Direct Debit Instructions

Fields

NameDescription
accountHolder(String!)

cardExpiryMonth(Int)

cardExpiryYear(Int)

cardPaymentNetwork(String)

iban(String!)

id(ID!)

instructionType(String!)

lastFourDigitsOfAccountNumber(String)

The last four digits of the account number.

Deprecated

The 'lastFourDigitsOfAccountNumber' field is deprecated.

Use 'maskedAccountIdentifier' for a masked reference to the instruction.

- Marked as deprecated on 2021-12-23.
- Scheduled for removal on or after 2024-01-01.

maskedAccountIdentifier(String)

A masked reference to a recurring payment method.

maskedIban(String)

A masked version of the IBAN.

owners([PaymentInstructionOwnerType])

The owners of the financial account this instruction represents.

sortCode(String!)

status(String!)

Example

{
  "id": "abc123",
  "status": "abc123",
  "accountHolder": "abc123",
  "instructionType": "abc123",
  "cardPaymentNetwork": "abc123",
  "cardExpiryMonth": 1,
  "cardExpiryYear": 1,
  "iban": "abc123",
  "sortCode": "abc123",
  "lastFourDigitsOfAccountNumber": "abc123",
  "maskedAccountIdentifier": "abc123",
  "maskedIban": "abc123",
  "owners": [PaymentInstructionOwnerType]
}

Fields

NameDescription
amperage(Int)

Supply amperage. Used in markets where customers are more familiar with amps than power output.

make(String)

Make of the charge point.

model(String)

Model of the charge point.

powerOutput(Decimal)

The max power output of this charge point variant in kw.

Example

{
  "make": "abc123",
  "model": "abc123",
  "powerOutput": "1.0",
  "amperage": 1
}

Fields

NameDescription
availableFrom(Int)

This field is replacing year.

availableTo(Int)

batterySize(Decimal)

integrationStatus(IntegrationStatus)

Shows the availability status of an integration.

isIntegrationLive(Boolean)

model(String)

supportedProviders([String])

vehicleId(Int)

year(Int)

Example

{
  "vehicleId": 1,
  "model": "abc123",
  "year": 1,
  "availableFrom": 1,
  "availableTo": 1,
  "batterySize": "1.0",
  "supportedProviders": ["abc123"],
  "isIntegrationLive": true,
  "integrationStatus": "INTERNAL_TESTING"
}

Fields

NameDescription
make(String)

models([ElectricVehicleModelType])

Example

{
  "make": "abc123",
  "models": [ElectricVehicleModelType]
}

Fields

NameDescription
availableFrom(Int)

Earliest production/model year supported by this variant.

availableTo(Int)

Latest production/model year supported by this variant.

batterySize(Decimal)

Size of the battery in kWh.

make(String)

Make of the vehicle.

model(String)

Model and version of the vehicle.

Example

{
  "make": "abc123",
  "model": "abc123",
  "availableFrom": 1,
  "availableTo": 1,
  "batterySize": "1.0"
}

Fields

NameDescription
deviceId(String)

The identifier of the device associated to this reading.

marketSupplyPointId(String)

The identifier of the market supply point associated to this reading.

readingDirection(ReadingDirectionType)

Reading direction is based on the utility generated or consumed by the customer.

readingFrequencyType(ReadingFrequencyType)

The frequency of the reading.

readingQuality(ReadingQualityType)

registerId(String)

The identifier of the register associated to this reading.

Example

{
  "readingDirection": "CONSUMPTION",
  "registerId": "abc123",
  "readingQuality": "ACTUAL",
  "readingFrequencyType": "RAW_INTERVAL",
  "marketSupplyPointId": "abc123",
  "deviceId": "abc123"
}

ElectricityMeterConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ElectricityMeterConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ElectricityMeterConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ElectricityMeterConnectionTypeEdge

A Relay edge containing a ElectricityMeterConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ElectricityMeterType)

The item at the end of the edge

Example

{
  "node": ElectricityMeterType,
  "cursor": "abc123"
}

Fields

NameDescription
registers([ElectricityRegisterForReadingType])

All registers relevant for billing for the meter.

Example


ElectricityMeterReadingConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ElectricityMeterReadingConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ElectricityMeterReadingConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ElectricityMeterReadingConnectionTypeEdge

A Relay edge containing a ElectricityMeterReadingConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ElectricityRegisterReadingType)

The item at the end of the edge

Example

{
  "node": ElectricityRegisterReadingType,
  "cursor": "abc123"
}

Fields

NameDescription
activeFrom(DateTime!)

The datetime when the meter was active from.

activeTo(DateTime)

The datetime when the meter stops being active. This should be null if it is still active.

conversionFactor(String)

The conversion factor/Wandlerfaktor of the meter.

hasSmartMeterGateway(Boolean!)

Whether the meter has an associated smart meter gateway.

id(Int!)

The meter ID.

meloNumber(String)

The MeLo number associated with the meter.

meteringDirection(String)

The metering direction of the meter.

number(String!)

The meter number.

readingTransmissionType(String)

The reading transmission type of the meter.

tariffCount(String)

The tariff count of the meter.

Example

{
  "id": 1,
  "number": "abc123",
  "activeFrom": "2020-01-01T00:00:00.000Z",
  "activeTo": "2020-01-01T00:00:00.000Z",
  "meteringDirection": "abc123",
  "readingTransmissionType": "abc123",
  "tariffCount": "abc123",
  "meloNumber": "abc123",
  "hasSmartMeterGateway": true,
  "conversionFactor": "abc123"
}

Fields

NameDescription
breakdownChargeAnnual(Decimal)

eegChargeAnnual(Decimal)

gridBillingChargeAnnual(Decimal)

gridConcessionChargeAnnual(Decimal)

gridConcessionChargeAnnualNt(Decimal)

gridMeterOperationChargeAnnual(Decimal)

gridMeterReadingChargeAnnual(Decimal)

gridStandingChargeAnnual(Decimal)

gridUnitRateHtChargeAnnual(Decimal)

gridUnitRateNtChargeAnnual(Decimal)

kwkChargeAnnual(Decimal)

offshoreChargeAnnual(Decimal)

section19ChargeAnnual(Decimal)

totalNetworkChargesPerYear(Decimal)

Example

{
  "totalNetworkChargesPerYear": "1.0",
  "gridBillingChargeAnnual": "1.0",
  "gridMeterOperationChargeAnnual": "1.0",
  "gridMeterReadingChargeAnnual": "1.0",
  "gridStandingChargeAnnual": "1.0",
  "kwkChargeAnnual": "1.0",
  "breakdownChargeAnnual": "1.0",
  "eegChargeAnnual": "1.0",
  "gridConcessionChargeAnnual": "1.0",
  "gridConcessionChargeAnnualNt": "1.0",
  "offshoreChargeAnnual": "1.0",
  "section19ChargeAnnual": "1.0",
  "gridUnitRateHtChargeAnnual": "1.0",
  "gridUnitRateNtChargeAnnual": "1.0"
}

Fields

NameDescription
activeFrom(Date)

The date from when the register is active.

activeTo(Date)

The date until when the register is active.

decimalPlaces(Int)

The number of decimal places on the register.

digits(Int)

The number of digits on the register.

obisCode(String)

The OBIS code of the register.

readings(RegisterReadingConnectionTypeConnection)

The readings for a given register, in reverse order (latest first).

This field is a connection type. Connections are used to implement cursor based pagination.

This field requires the Authorization header to be set.

Arguments

after (String)

before (String)

first (Int)

last (Int)

registerType(String)

Example

{
  "obisCode": "abc123",
  "digits": 1,
  "decimalPlaces": 1,
  "activeFrom": "2020-01-01",
  "activeTo": "2020-01-01",
  "readings": RegisterReadingConnectionTypeConnection,
  "registerType": "abc123"
}

Fields

NameDescription
meterId(Int)

The meter id this reading belongs to.

origin(String)

readAt(DateTime!)

registerObisCode(String)

registerType(String)

status(String)

The status of the reading (e.g. SAVED, CHANGED, CANCELLED).

typeOfRead(String)

value(String!)

Example

{
  "value": "abc123",
  "readAt": "2020-01-01T00:00:00.000Z",
  "registerObisCode": "abc123",
  "typeOfRead": "abc123",
  "origin": "abc123",
  "status": "abc123",
  "meterId": 1,
  "registerType": "abc123"
}

EmailAttachmentType

Represents a file to attach to a email message.

Fields

NameDescription
filename(String!)

The filename of the attachment.

id(ID!)

The ID of the attachment.

temporaryUrl(String)

Temporary URL at which the attachment is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page).

Example

{
  "id": "abc123",
  "filename": "abc123",
  "temporaryUrl": "abc123"
}

Fields

NameDescription
eventType(String!)

id(ID!)

The ID of the object

message(EmailType)

Email message of the email event. Returns null for message's sent/received by other user's on the account.

occurredAt(DateTime!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "message": EmailType
}

EmailType

Represents an email communication

Fields

NameDescription
attachments([EmailAttachmentType])

Attachments of the email message.

channel(String!)

createdAt(DateTime!)

The date and time the email was created.

fromEmail(String!)

The address the email was sent from.

fromNumber(String!)

htmlBody(String)

HTML body of the email message.

id(ID!)

The ID of the email.

recipient(String)

Email recipient.

sender(String)

Email sender.

sentAt(DateTime)

The date and time the email was sent.

subject(String)

Subject line of the email message.

supportSiteUrl(String)

URL to view the email in the support site.

templateCode(String!)

The email template code.

textBody(String)

Text body of the email message.

toAddress(String!)

The email address of the recipient.

toNumber(String!)

Example

{
  "id": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "sentAt": "2020-01-01T00:00:00.000Z",
  "templateCode": "abc123",
  "toAddress": "abc123",
  "fromEmail": "abc123",
  "subject": "abc123",
  "attachments": [EmailAttachmentType],
  "textBody": "abc123",
  "htmlBody": "abc123",
  "supportSiteUrl": "abc123",
  "toNumber": "abc123",
  "fromNumber": "abc123",
  "channel": "abc123",
  "sender": "abc123",
  "recipient": "abc123"
}

Fields

NameDescription
email(String!)

The email address to be checked.

status(VerificationRequestStatus)

The status of verification for associated email.

Example

{
  "email": "abc123",
  "status": "NOT_SENT"
}

Fields

NameDescription
deviceId(String)

The identifier of the device associated to this reading.

marketSupplyPointId(String)

The identifier of the market supply point associated to this reading.

readingDirection(ReadingDirectionType)

Reading direction is based on the utility generated or consumed by the customer.

readingFrequencyType(ReadingFrequencyType)

The frequency of the reading.

readingQuality(ReadingQualityType)

registerId(String)

The identifier of the register associated to this reading.

Example

{
  "readingDirection": "CONSUMPTION",
  "registerId": "abc123",
  "readingQuality": "ACTUAL",
  "readingFrequencyType": "RAW_INTERVAL",
  "marketSupplyPointId": "abc123",
  "deviceId": "abc123"
}

EmbeddedNetworkType

Represents an embedded network that holds multiple embedded properties.

Fields

NameDescription
embeddedProperties([EmbeddedPropertyType])

Get details about properties in an embedded network.

id(ID!)

name(String!)

A unique name/code for the network

Example

{
  "id": "abc123",
  "name": "abc123"
}

EmbeddedPropertyType

Represents an embedded property in an embedded network.

Fields

NameDescription
embeddedNetwork(EmbeddedNetworkType!)

id(ID!)

propertyId(ID)

The id of the physical property related to this embedded property type.

Example

{
  "id": "abc123",
  "propertyId": "abc123",
  "embeddedNetwork": EmbeddedNetworkType
}

EndContributionAgreement

Output type of the endContributionAgreement mutation.

Fields

NameDescription
contributionAgreement(ContributionAgreementType)

The created contribution agreement.

Example

{
  "contributionAgreement": ContributionAgreementType
}

Energy

Describes the energy (not power) consumed (e.g. as electricity) or returned (e.g. as heat) by a system over a given span of time.

Differs from Power in that it describes the total amount of energy transferred during a given time frame (not a single point in time).

Fields

NameDescription
unit(EnergyUnit!)

The units in which the energy is being measured.

value(Decimal)

The amount of energy (not power) transmitted.

Example

{
  "value": "1.0",
  "unit": "KILOWATT_HOUR"
}

EnqueueInboundCall

Output type of the enqueueInboundCall mutation.

Fields

NameDescription
call(InboundCallType)

The call that was enqueued.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "possibleErrors": [PossibleErrorType]
}

EnrollAccountInLoyaltyProgram

Output type of the enrollAccountInLoyaltyProgram mutation.

Fields

NameDescription
outcome(EnrollAccountInLoyaltyProgramOutcome)

Outcome of the loyalty points campaign enrollment.


Fields

NameDescription
hasEnrolled(Boolean)

Whether or not this account has been enrolled in the loyalty points campaign.

Example

{
  "hasEnrolled": true
}

EnrollmentCancelled

Enrollment was successfully cancelled.

Fields

NameDescription
enrollmentProcess(EnrollmentProcess!)

The Enrollment process that was cancelled.

message(String!)

The message to display to the user on Enrollment initiation.

Example

{
  "message": "abc123",
  "enrollmentProcess": JoinSupplierProcessType
}

EnrollmentInitiated

Enrollment was successfully initiated.

Fields

NameDescription
enrollmentProcesses([EnrollmentProcess]!)

The Enrollment processes that were initiated.

message(String!)

The message to display to the user on Enrollment initiation.

Example

{
  "enrollmentProcesses": JoinSupplierProcessType,
  "message": "abc123"
}

EnrollmentReversed

Enrollment was successfully reversed.

Fields

NameDescription
enrollmentProcess(EnrollmentProcess!)

The Enrollment process that was reversed.

message(String!)

The message to display to the user on reversal.

Example

{
  "message": "abc123",
  "enrollmentProcess": JoinSupplierProcessType
}

EpexDayAheadPriceConnectionTypeConnection

Connection type for EPEX Day Ahead prices in Germany.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([EpexDayAheadPriceConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": EpexDayAheadPriceConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

EpexDayAheadPriceConnectionTypeEdge

A Relay edge containing a EpexDayAheadPriceConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(EpexDayAheadPriceType)

The item at the end of the edge

Example

{
  "node": EpexDayAheadPriceType,
  "cursor": "abc123"
}

EpexDayAheadPriceType

EPEX Day Ahead electricity price data for Germany.

Fields

NameDescription
periodEnd(DateTime!)

End datetime of the price period (exclusive).

periodStart(DateTime!)

Start datetime of the price period (inclusive).

unit(String!)

Unit of the price value (EUR/MWh).

value(Decimal!)

Price value in EUR/MWh.

Example

{
  "periodStart": "2020-01-01T00:00:00.000Z",
  "periodEnd": "2020-01-01T00:00:00.000Z",
  "value": "1.0",
  "unit": "abc123"
}

Fields

NameDescription
field(String!)

The name of the field that caused the error.

messages([String!]!)

A list of error messages for the field.

Example

{
  "field": "abc123",
  "messages": "abc123"
}

EscalateInkConversation

Output type of the escalateInkConversation mutation.

Fields

NameDescription
conversationRelayId(ID!)

The ID of the conversation that was escalated.

Example

{
  "conversationRelayId": "abc123"
}

EstimatedAnnualConsumptionType

An estimated annual consumption for a supply point.

Fields

NameDescription
amountKwh(Decimal)

The estimated annual consumption in kWh.

effectiveFrom(Date)

The date from which the estimation is effective.

id(ID)

The ID of the estimated annual consumption.

source(String)

The source of the estimation.

Example

{
  "id": "abc123",
  "amountKwh": "1.0",
  "effectiveFrom": "2020-01-01",
  "source": "abc123"
}

Fields

NameDescription
costCurrency(String!)

Monetary currency of the statistic in ISO-4217 format.

estimatedAmount(Decimal!)

        Monetary cost of the statistic. This is the smallest unit of currency,
        e.g. cents for USD or yen for JPY. Because electricity is priced as a commodity, we must
        account for fractional cents and this field must be a Decimal. Values from this field should
        likely not be used for accounting purposes.

pricePerUnit(PricePerUnit)

Net price per unit of the statistic if applicable.

Example

{
  "estimatedAmount": "1.0",
  "costCurrency": "abc123",
  "pricePerUnit": PricePerUnit
}

Fields

NameDescription
intervalEnd(DateTime!)

The exclusive end of this reading interval.

intervalStart(DateTime!)

The inclusive start of this reading interval.

isEstimated(Boolean!)

True if this reading was produced by the estimation engine rather than measured.

quality(String)

The data quality of this reading (e.g. ACTUAL, ESTIMATE, CALCULATED).

value(Decimal!)

The consumption value for this interval.

Example

{
  "intervalStart": "2020-01-01T00:00:00.000Z",
  "intervalEnd": "2020-01-01T00:00:00.000Z",
  "value": "1.0",
  "quality": "abc123",
  "isEstimated": true
}

ExportReadingsConnection

Pagination for readings representing outgoing utility flow e.g., solar generation.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ExportReadingsEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ExportReadingsEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ExportReadingsEdge

A Relay edge containing a ExportReadings and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Reading)

The item at the end of the edge

Example

{
  "node": Reading,
  "cursor": "abc123"
}

ExtendAgreementPeriod

Output type of the extendAgreementPeriod mutation.

Fields

NameDescription
agreement(CommonAgreementType)

Agreement that we are going to extend.

Example

{
  "agreement": CommonAgreementType
}

Fields

NameDescription
category(String!)

content(JSONString)

description(String)

eventType(String!)

id(ID!)

occurredAt(DateTime!)

subcategory(String!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "category": "abc123",
  "subcategory": "abc123",
  "description": "abc123",
  "content": {"key": "value"}
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ExternalAccountEventConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ExternalAccountEventConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ExternalAccountEventConnectionTypeEdge

A Relay edge containing a ExternalAccountEventConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ExternalAccountEvent)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
category(String!)

content(JSONString)

description(String)

eventType(String!)

id(ID!)

occurredAt(DateTime!)

subcategory(String!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "category": "abc123",
  "subcategory": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "description": "abc123",
  "content": {"key": "value"}
}

ExternalMessageEventType

A status update for an external message, such as delivery confirmation, a bounce, or an open.

Fields

NameDescription
eventType(MessageEventType!)

The type of message event.

id(ID!)

The ID of the message event.

occurredAt(DateTime!)

The date and time this event occurred.

Example

{
  "id": "abc123",
  "eventType": "DELIVERED",
  "occurredAt": "2020-01-01T00:00:00.000Z"
}

ExternalMessageType

An external message, which is a record of a communication such as an email, sent by an external messaging vendor.

Fields

NameDescription
id(ID!)

The ID in Kraken of the external message.

sentAt(DateTime!)

The date and time this message was sent.

vendor(String!)

The name of the external messaging vendor that sent this message.

vendorMessageId(String!)

The unique ID of the message in the external vendor's system.

Example

{
  "id": "abc123",
  "vendor": "abc123",
  "vendorMessageId": "abc123",
  "sentAt": "2020-01-01T00:00:00.000Z"
}

ExternalMessagingUploadPostRequest

Information needed to upload a file to S3 via a presigned POST request. See https://boto3.amazonaws.com/v1/documentation/api/latest/guide/s3-presigned-urls.html#generating-a-presigned-url-to-upload-a-file

Fields

NameDescription
fields(JSONString!)

The form fields that must be included in the POST request.

key(String!)

The S3 key the file will be stored under.

url(String!)

The S3 endpoint to POST the file to.

Example

{
  "url": "abc123",
  "fields": {"key": "value"},
  "key": "abc123"
}

ExternalSalesInfoType

GraphQL type representing external sales information.

This type is used to represent sales records that originate from external systems or processes outside of Kraken's direct tracking mechanisms.

Fields

NameDescription
salesRecordIdentifier(String)

The unique identifier for the sales record.

Example

{
  "salesRecordIdentifier": "abc123"
}

Fields

NameDescription
field(FunnelField)

The extra detail metadata associated with the opportunity.

key(String)

The key of the extra detail item.

value(GenericScalar)

The value of the extra detail item.

Example

{
  "key": "abc123",
  "value": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType
}

Fields

NameDescription
forecastConsumption([ForecastConsumptionEntryType!])

Forecast consumption entries for this quote configuration.

Example

{
  
}

Fields

NameDescription
description(String)

Description of the extra for the parent node.

label(String)

Display label of the extra for the parent node.

value(String)

Value of the extra.

Example

{
  "label": "abc123",
  "description": "abc123",
  "value": "abc123"
}

FetchGeneratePaymentFingerprint

Output type of the fetchGeneratePaymentFingerprint mutation.

Fields

NameDescription
fingerprint(String)

Fetched or generated fingerprint from vendor.

vendor(String)

Vendor name.

Example

{
  "fingerprint": "abc123",
  "vendor": "abc123"
}

FetchPreSignedLinkForOpportunityAttachment

Output type of the fetchPreSignedLinkForOpportunityAttachment mutation.

Fields

NameDescription
opportunityFileAttachment(OpportunityFileAttachment)

The opportunity file attachment with pre-signed URL.

Example

{
  
}

Fields

NameDescription
field(String)

The name of the GraphQL field for which the rate is limited.

isBlocked(Boolean)

Whether the viewer is currently blocked from making requests to this field due to exceeding the allowed request rate.

rate(String)

Indicates the rate limit allowed for this field (e.g. 10/m).

ttl(Int)

Time to live: The time remaining before the user is unblocked from making requests to this field.

Example

{
  "field": "abc123",
  "rate": "abc123",
  "ttl": 1,
  "isBlocked": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([FieldSpecificRateLimitInformationConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": FieldSpecificRateLimitInformationConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

FieldSpecificRateLimitInformationConnectionTypeEdge

A Relay edge containing a FieldSpecificRateLimitInformationConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(FieldSpecificRateLimitInformation)

The item at the end of the edge

Example

{
  "node": FieldSpecificRateLimitInformation,
  "cursor": "abc123"
}

Fields

NameDescription
identifierType(String)

The ID type. Currently only 'meter_point' is supported.

identifierValue(ID)

The ID to be checked.

isInRiskList(Boolean)

Returns True if the risk identifier is in the risk list.

riskLevel(Decimal)

Returns the level of risk for the supplied object between 0.0 and 1.0. Higher is worse.

Example

{
  "identifierValue": "abc123",
  "identifierType": "abc123",
  "riskLevel": "1.0",
  "isInRiskList": true
}

Fields

NameDescription
max(Decimal)

The maximum value this constraint allows.

min(Decimal)

The minimum value this constraint allows.

Example

{
  "min": "1.0",
  "max": "1.0"
}

Fields

NameDescription
id(Int!)

The unique id of the device preference schedule setting.

max(Decimal)

The maximum value a preference can be set to (inclusive).

maxConstraint(PreferenceConstraint)

The constraint applied to the max value.

min(Decimal)

The minimum value a preference can be set to (inclusive).

minConstraint(PreferenceConstraint)

The constraint applied to the min value.

step(Decimal!)

The step size preference can be set to.

targetConstraint(PreferenceConstraint)

The constraint applied to the target value.

timeFrom(Time)

The minimum time a preference can be set to (inclusive).

timeStep(Int!)

The step amount (in minutes) a preference schedule time can be set.

timeTo(Time)

The maximum time a preference can be set to (inclusive).

Example

{
  "id": 1,
  "timeFrom": "00:00:00.000Z",
  "timeTo": "00:00:00.000Z",
  "timeStep": 1,
  "min": "1.0",
  "max": "1.0",
  "step": "1.0",
  "minConstraint": PreferenceConstraint,
  "maxConstraint": PreferenceConstraint,
  "targetConstraint": PreferenceConstraint
}

Fields

NameDescription
deviceType(String!)

The device type of the setting.

id(Int!)

The unique id of the device preference setting.

mode(PreferencesModeChoices!)

The mode of the setting.

scheduleSettings([FlexDevicePreferenceScheduleSettingInterface]!)

Scheduled preference settings.

unit(PreferencesUnitChoices!)

The unit of the min and max values in the preferences setting.

Example

{
  "id": 1,
  "deviceType": "abc123",
  "mode": "CHARGE",
  "unit": "CELSIUS",
  "scheduleSettings": FlexDevicePreferenceScheduleSettingInterface
}

FlexSupportedDevices

A list of supported makes and models for a given device type.

Fields

NameDescription
deviceType(KrakenFlexDeviceTypes!)

The type of device, expressed via the legacy KrakenFlexDeviceTypes enum. For responses produced via supportedDeviceType: CHARGE_POINTS, this field is populated with ELECTRIC_VEHICLES for backward compatibility. Read supportedDeviceType for the actual value.

supportedDeviceType(FlexSupportedDeviceTypes)

The type of device, including charge points. Null when the response was produced via the legacy deviceType argument.

supportedMakes([FlexSupportedMake]!)

List of supported brands or manufacturer.

Example

{
  "deviceType": "BATTERIES",
  "supportedDeviceType": "CHARGE_POINTS",
  "supportedMakes": FlexSupportedMake
}

FlexSupportedMake

A brand or manufacturer of the device and its associated models.

If models is empty, all models for this make are supported.

Fields

NameDescription
make(String!)

Brand or manufacturer of the device.

models([FlexSupportedModel]!)

List of supported models for the device make. If empty, all models are supported.

Example

{
  "make": "abc123",
  "models": FlexSupportedModel
}

FlexSupportedModel

A supported model for a given make.

If model year range is null, all years are supported.

Fields

NameDescription
modelName(String!)

Model name of the device.

modelYearRange(ModelYearRange)

Model years supported. If null, all model years are supported.

Example

{
  "modelYearRange": ModelYearRange,
  "modelName": "abc123"
}

FloatType

Graphene type object to represent float values

Fields

NameDescription
floatValue(Float!)

Value of this field.

Example

{
  "floatValue": 1.0
}

ForceReauthentication

Output type of the forceReauthentication mutation.

Fields

NameDescription
effectiveAt(DateTime!)

The time at which forced reauthentication is effective. Kraken and refresh tokens issued before this time will be invalid.

tokensInvalidated(Boolean!)

Reports whether the mutation applied successfully. Should always be 'true'.

Example

{
  "tokensInvalidated": true,
  "effectiveAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
consumptionSplit([ConsumptionSplitType])

Optional TOU split breakdown for this entry.

identifier(String)

Unique identifier for this forecast consumption entry.

touName(String)

Unique identifier of the time-of-use scheme for this entry.

unit(String)

Unit of the consumption value.

validFrom(DateTime)

Start of the period this entry covers.

validTo(DateTime)

End of the period this entry covers.

value(Decimal)

Forecast consumption value.

Example

{
  "identifier": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "unit": "abc123",
  "value": "1.0",
  "touName": "abc123"
}

FormScreenType

A screen type for forms with input fields.

Combines display items with input fields (TextField, Checkbox, Toggle), and provides primary/secondary buttons for form submission.

Note: header and footer are embedded in screenData and not exposed as separate GraphQL fields, following the pattern of ComponentListType.

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

id(ID)

Unique identifier of the object.

name(String!)

The name of the screen.

refreshFrequency(Int)

The refresh / polling frequency in milliseconds.

screenData(String)

Serialized JSON representation of the screen.

typename(String)

The name of the object's type.

Example

{
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "name": "abc123",
  "refreshFrequency": 1,
  "screenData": "abc123"
}

Fields

NameDescription
content(JSONString)

errors([SerializerFieldErrorsType])

id(Int)

Example

{
  "id": 1,
  "content": {"key": "value"},
  "errors": [SerializerFieldErrorsType]
}

FractionSizeType

A fractional measurement.

Fields

NameDescription
fraction(Decimal!)

The fractional value.

id(ID)

Unique identifier of the object.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "fraction": "1.0"
}

Fields

NameDescription
isInSuspiciousList(Boolean)

Returns True if the meter point ID is in the list of suspicious meter point IDs.

meterPointId(String)

The meter point ID.

Example

{
  "meterPointId": "abc123",
  "isInSuspiciousList": true
}

FulfilmentType

Represents an amount of money that can be used to fulfil an obligation.

Fields

NameDescription
amount(Int!)

The amount of the fulfilment (in minor currency units), unsigned.

sourceIdentifier(String)

The database ID of the fulfilment source, e.g. the database ID of the payment.

sourceType(FulfilmentSourceType)

The type of the fulfilment source, e.g. PAYMENT.

Example

{
  "sourceType": "UNKNOWN",
  "sourceIdentifier": "abc123",
  "amount": 1
}

FundingSourceAmountConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([FundingSourceAmountConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": FundingSourceAmountConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

FundingSourceAmountConnectionTypeEdge

A Relay edge containing a FundingSourceAmountConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(FundingSourceAmountType)

The item at the end of the edge

Example

{
  "node": FundingSourceAmountType,
  "cursor": "abc123"
}

Fields

NameDescription
amount(Int)

Amount used from a funding source in minor currency.

reason(String)

Reason why the funding source was used.

Example

{
  "reason": "abc123",
  "amount": 1
}

Fields

NameDescription
code(String!)

The code of the field.

fieldType(FieldTypeChoices!)

The type of the field.

name(String!)

The name of the field.

orderInCollection(Int)

The order of the field in the collection.

required(Boolean)

Whether the field is required.

textChoices([String])

The choices for the field if applicable.

textRegex(String)

A regular expression that a field value must match, if populated.

Example

{
  "code": "abc123",
  "name": "abc123",
  "fieldType": "STR",
  "textChoices": ["abc123"],
  "textRegex": "abc123",
  "orderInCollection": 1,
  "required": true
}

GasFiltersOutput

Filter measurements by gas parameters.

Fields

NameDescription
deviceId(String)

The identifier of the device associated to this reading.

marketSupplyPointId(String)

The identifier of the market supply point associated to this reading.

readingFrequencyType(ReadingFrequencyType)

The frequency of the reading.

registerId(String)

The identifier of the register associated to this reading.

Example

{
  "registerId": "abc123",
  "readingFrequencyType": "RAW_INTERVAL",
  "marketSupplyPointId": "abc123",
  "deviceId": "abc123"
}

GasMeterConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([GasMeterConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": GasMeterConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

GasMeterConnectionTypeEdge

A Relay edge containing a GasMeterConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(GasMeterType)

The item at the end of the edge

Example

{
  "node": GasMeterType,
  "cursor": "abc123"
}

Fields

NameDescription
registers([GasRegisterForReadingType])

All registers relevant for billing for the meter.

Example

{
  "registers": [GasRegisterForReadingType]
}

GasMeterReadingConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([GasMeterReadingConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": GasMeterReadingConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

GasMeterReadingConnectionTypeEdge

A Relay edge containing a GasMeterReadingConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(GasRegisterReadingType)

The item at the end of the edge

Example

{
  "node": GasRegisterReadingType,
  "cursor": "abc123"
}

Fields

NameDescription
activeFrom(DateTime!)

The datetime when the meter was active from.

activeTo(DateTime)

The datetime when the meter stops being active. This should be null if it is still active.

hasSmartMeterGateway(Boolean!)

Whether the meter has an associated smart meter gateway.

id(Int!)

The meter ID.

meloNumber(String)

The MeLo number associated with the meter.

meteringDirection(String)

The metering direction of the meter.

number(String!)

The meter number.

readingTransmissionType(String)

The reading transmission type of the meter.

tariffCount(String)

The tariff count of the meter.

Example

{
  "id": 1,
  "number": "abc123",
  "activeFrom": "2020-01-01T00:00:00.000Z",
  "activeTo": "2020-01-01T00:00:00.000Z",
  "meteringDirection": "abc123",
  "readingTransmissionType": "abc123",
  "tariffCount": "abc123",
  "meloNumber": "abc123",
  "hasSmartMeterGateway": true
}

Fields

NameDescription
accountingFee(Decimal)

gridBillingChargeAnnual(Decimal)

gridConcessionChargePerKwh(Decimal)

gridMeterOperationChargeAnnual(Decimal)

gridMeterReadingChargeAnnual(Decimal)

gridPowerChargeAnnual(Decimal)

gridStandingChargeAnnual(Decimal)

gridUnitRateChargeAnnual(Decimal)

totalNetworkChargesPerYear(Decimal)

Example

{
  "totalNetworkChargesPerYear": "1.0",
  "gridBillingChargeAnnual": "1.0",
  "gridMeterOperationChargeAnnual": "1.0",
  "gridMeterReadingChargeAnnual": "1.0",
  "gridStandingChargeAnnual": "1.0",
  "gridConcessionChargePerKwh": "1.0",
  "gridPowerChargeAnnual": "1.0",
  "gridUnitRateChargeAnnual": "1.0",
  "accountingFee": "1.0"
}

Fields

NameDescription
activeFrom(Date)

The date from when the register is active.

activeTo(Date)

The date until when the register is active.

decimalPlaces(Int)

The number of decimal places on the register.

digits(Int)

The number of digits on the register.

obisCode(String)

The OBIS code of the register.

readings(RegisterReadingConnectionTypeConnection)

The readings for a given register, in reverse order (latest first).

This field is a connection type. Connections are used to implement cursor based pagination.

This field requires the Authorization header to be set.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "obisCode": "abc123",
  "digits": 1,
  "decimalPlaces": 1,
  "activeFrom": "2020-01-01",
  "activeTo": "2020-01-01",
  "readings": RegisterReadingConnectionTypeConnection
}

Fields

NameDescription
meterId(Int)

The meter id this reading belongs to.

origin(String)

readAt(DateTime!)

registerObisCode(String)

status(String)

The status of the reading (e.g. SAVED, CHANGED, CANCELLED).

typeOfRead(String)

value(String!)

Example

{
  "value": "abc123",
  "readAt": "2020-01-01T00:00:00.000Z",
  "registerObisCode": "abc123",
  "typeOfRead": "abc123",
  "origin": "abc123",
  "status": "abc123",
  "meterId": 1
}

GenerateAffiliatesAudioRecordingPreSignedUrl

Output type of the generateAffiliatesAudioRecordingPreSignedUrl mutation.

Fields

NameDescription
affiliatesAudioRecordingPreSignedUrl(AffiliateAudioRecordingPresignedPostType)

Input fields required to generate a presigned S3 post for affiliates audio recording.

Example

{
  
}

GenerateExternalMessagingUploadUrl

Output type of the generateExternalMessagingUploadUrl mutation.

Fields

NameDescription
postRequest(ExternalMessagingUploadPostRequest)

The presigned POST request details for uploading the file to S3.

Example

{
  
}

GenerateInkPresignedUrl

Output type of the generateInkPresignedUrl mutation.

Fields

NameDescription
fields(JSONString!)

Presigned post fields required to upload the file.

key(String!)

The key for the item.

uploadUrl(String!)

A presigned URL for the user to upload to the quarantine bucket.

Example

{
  "uploadUrl": "abc123",
  "key": "abc123",
  "fields": {"key": "value"}
}

GenerateLeadsFileAttachmentDownloadPreSignedUrl

Output type of the generateLeadsFileAttachmentDownloadPreSignedUrl mutation.

Fields

NameDescription
leadsFileAttachmentDownloadPreSignedUrl(LeadsFileAttachmentDownloadPresignedUrlType)

Pre-signed S3 URL for downloading the leads file attachment.

Example

{
  
}

GenerateLeadsFileAttachmentsPreSignedUrl

Output type of the generateLeadsFileAttachmentPreSignedUrl mutation.

Fields

NameDescription
leadsFileAttachmentPreSignedUrl(LeadsFileAttachmentPresignedPostType)

Input fields required to generate a presigned S3 post for leads file attachment.

Example

{
  
}

GeneratePreSignedToken

Output type of the generatePreSignedToken mutation.

Fields

NameDescription
scope(PreSignedTokenScope)

token(String)

tokenExpiryDatetime(DateTime)

Example

{
  "token": "abc123",
  "tokenExpiryDatetime": "2020-01-01T00:00:00.000Z",
  "scope": "SUBMIT_METER_READINGS"
}

GenericBackendScreen

A generic backend screen that can be used to define any type of screen.

Fields

NameDescription
name(String!)

The name of the screen.

refreshFrequency(Int)

The refresh / polling frequency in milliseconds.

screenData(String)

Serialized JSON representation of the screen.

Example

{
  "name": "abc123",
  "refreshFrequency": 1,
  "screenData": "abc123"
}

GetEmbeddedSecretForNewPaymentInstruction

Output type of the getEmbeddedSecretForNewPaymentInstruction mutation.

Fields

NameDescription
secretKey(String)

Example

{
  "secretKey": "abc123"
}

GetEmbeddedSecretForNewPaymentInstructionWithoutAccount

Output type of the getEmbeddedSecretForNewPaymentInstructionWithoutAccount mutation.

Fields

NameDescription
secretKey(String)

The client secret needed to create a new stored payment instruction.

Example

{
  "secretKey": "abc123"
}

GetHostedUrlForNewPaymentInstruction

Output type of the getHostedUrlForNewPaymentInstruction mutation.

Fields

NameDescription
url(String)

URL at which payment instruction can be set up.

Example

{
  "url": "abc123"
}

GetOrCreateAgreement

Output type of the getOrCreateAgreement mutation.

Fields

NameDescription
agreement(CommonAgreementType)

The agreement that was retrieved or created.

created(Boolean)

Indicates whether a new agreement was created (true) or an existing agreement was returned (false).

Example

{
  "created": true,
  "agreement": CommonAgreementType
}

Fields

NameDescription
currency(String)

Currency.

grossAmount(Float)

Gross amount.

netAmount(Float)

Net amount.

type(String)

Grant type.

Example

{
  "type": "abc123",
  "netAmount": 1.0,
  "grossAmount": 1.0,
  "currency": "abc123"
}

Fields

NameDescription
availableFrom(Date)

Product available from.

availableTo(Date)

Product available to.

code(String)

Product code.

currency(String)

Currency.

customerName(String)

Product customer name.

description(String)

Product description.

grossPricePerUnit(Float)

Gross price per unit.

id(Int)

Product ID.

internalName(String)

Product internal name.

marketName(String)

Market of the product.

notes(String)

Product notes.

pricePerUnit(Float)

Price per unit.

productType(GoodsProductType)

Type of the product.

Example

{
  "id": 1,
  "marketName": "abc123",
  "productType": GoodsProductType,
  "code": "abc123",
  "internalName": "abc123",
  "customerName": "abc123",
  "notes": "abc123",
  "description": "abc123",
  "availableFrom": "2020-01-01",
  "availableTo": "2020-01-01",
  "pricePerUnit": 1.0,
  "grossPricePerUnit": 1.0,
  "currency": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([GoodsProductConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": GoodsProductConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

GoodsProductConnectionTypeEdge

A Relay edge containing a GoodsProductConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(GoodsProduct)

The item at the end of the edge

Example

{
  "node": GoodsProduct,
  "cursor": "abc123"
}

Fields

NameDescription
code(String)

Product type code.

internalName(String)

Product type name.

Example

{
  "code": "abc123",
  "internalName": "abc123"
}

Fields

NameDescription
clientParams(JSONString)

Client parameters of the purchase.

code(String)

Purchase code.

goodsGrants([GoodsGrant])

Grants that apply in this purchase.

goodsSaleItems([GoodsSaleItem])

Sale items in this purchase.

ledgerId(ID)

Ledger ID associated to the purchase.

Deprecated

The 'ledgerId' field is deprecated.

Please use 'ledgerNumber' instead. This is in the form of 'L-123456789A'

- Marked as deprecated on 2024-10-22.
- Scheduled for removal on or after 2025-06-25.

ledgerNumber(String)

The ledger number associated to the purchase.

marketName(String!)

Market name of the purchase.

marketParams(JSONString)

Market parameters of the purchase.

Example

{
  "code": "abc123",
  "ledgerId": "abc123",
  "ledgerNumber": "abc123",
  "goodsSaleItems": [GoodsSaleItem],
  "goodsGrants": [GoodsGrant],
  "marketName": "abc123",
  "marketParams": {"key": "value"},
  "clientParams": {"key": "value"}
}

Fields

NameDescription
code(String)

Code of the quote.

goodsQuotedProducts([GoodsQuotedProduct])

Products of this quote.

hasQuoteExpired(Boolean)

Indicates whether or not the quote is expired.

id(ID)

ID of the quote.

quotedAt(DateTime)

Date and time when the quote was created.

totalNetAmount(Int)

Total net amount of the quote in cents.

Example

{
  "id": "abc123",
  "code": "abc123",
  "totalNetAmount": 1,
  "quotedAt": "2020-01-01T00:00:00.000Z",
  "goodsQuotedProducts": [GoodsQuotedProduct],
  "hasQuoteExpired": true
}

Fields

NameDescription
id(ID)

The ID of the quote share.

Example

{
  "id": "abc123"
}

Fields

NameDescription
currency(String)

Currency.

netAmount(Int)

Net amount.

numberOfUnits(Int)

Number of units.

pricePerUnit(Int)

Price per unit.

product(String)

Product code.

Example

{
  "product": "abc123",
  "numberOfUnits": 1,
  "pricePerUnit": 1,
  "netAmount": 1,
  "currency": "abc123"
}

Fields

NameDescription
currency(String)

Currency.

grossAmount(Float)

Gross amount.

netAmount(Float)

Net amount.

numberOfUnits(Int)

Number of units.

pricePerUnit(Float)

Price per unit.

product(String)

Product code.

Example

{
  "product": "abc123",
  "numberOfUnits": 1,
  "pricePerUnit": 1.0,
  "netAmount": 1.0,
  "grossAmount": 1.0,
  "currency": "abc123"
}

GrantUserAccessToBusiness

Output type of the grantUserAccessToBusiness mutation.

Fields

NameDescription
roleCode(String)

The code of the role granted to the user.

Example

{
  "roleCode": "abc123"
}

Fields

NameDescription
date(Date!)

The date when the VAT rate starts being active from.

grossRate(Decimal!)

The rate after the VAT rate is applied to the net rate.

rateValidToDate(Date)

The date until which the VAT rate is active (exclusive).

vatRate(Decimal!)

The VAT rate percentage.

Example

{
  "date": "2020-01-01",
  "vatRate": "1.0",
  "grossRate": "1.0",
  "rateValidToDate": "2020-01-01"
}

GroupType

Represents a group of components presented as a choice.

Fields

NameDescription
customerDescription(String!)

Customer-facing description of the group.

customerName(String!)

Customer-facing name for the group.

identifier(ID!)

Unique identifier of the group.

internalName(String!)

Internal name for the group.

maxCardinality(Int!)

Maximum number of components that can be selected from this group.

minCardinality(Int!)

Minimum number of components that must be selected from this group.

offeringComponents([OfferingComponentType])

Nested offering components within this group.

productComponents([ProductComponentType])

Product components within this group.

Example

{
  "identifier": "abc123",
  "internalName": "abc123",
  "customerName": "abc123",
  "customerDescription": "abc123",
  "minCardinality": 1,
  "maxCardinality": 1
}

GuaranteeOfOriginConfigurationType

Configuration for Guarantee of Origin term, defining percentage of energy from renewable sources.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

guaranteeOfOriginPercentage(GuaranteeOfOriginPercentage)

The percentage of the guarantee of origin.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "guaranteeOfOriginPercentage": "ZERO"
}

HardshipAgreementType

Represents a Hardship Agreement for a particular Account.

Fields

NameDescription
createdAt(DateTime!)

endDate(Date)

exitReason(HardshipAgreementExitReason)

exitReasonDetails(String)

Extra details for the exit reason

hardshipDetails(String!)

These are internal notes detailing the hardship.

hardshipEntryReason(HardshipAgreementHardshipEntryReason)

hardshipType(HardshipAgreementHardshipType!)

id(ID!)

paymentPlanDetails(String!)

startDate(Date!)

Example

{
  "id": "abc123",
  "hardshipType": "DEATH_IN_FAMILY",
  "hardshipDetails": "abc123",
  "hardshipEntryReason": "SELF_IDENTIFIED",
  "paymentPlanDetails": "abc123",
  "startDate": "2020-01-01",
  "endDate": "2020-01-01",
  "exitReason": "INITIAL_PAYMENT_PLAN_NOT_ESTABLISHED",
  "exitReasonDetails": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
isHeld(Boolean)

Whether a statement is currently held.

reason(String)

Reason for statement being held.

Example

{
  "isHeld": true,
  "reason": "abc123"
}

ImageType

A media element containing an image.

Fields

NameDescription
accessibilityHidden(Boolean)

Whether the element is hidden from view.

accessibilityLabel(String)

Accessible description of the element.

horizontalAlignment(Alignment)

The horizontal alignment of the media.

id(ID)

Unique identifier of the object.

mediaUrl(String!)

The resource URL of the media.

typename(String)

The name of the object's type.

width(ItemSizeType)

The measurement of the element.

Example

{
  "width": FractionSizeType,
  "mediaUrl": "abc123",
  "horizontalAlignment": "START",
  "accessibilityHidden": true,
  "accessibilityLabel": "abc123",
  "id": "abc123",
  "typename": "abc123"
}

ImportReadingsConnection

Pagination for readings representing incoming utility flow e.g., usage or consumption..

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ImportReadingsEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ImportReadingsEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ImportReadingsEdge

A Relay edge containing a ImportReadings and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Reading)

The item at the end of the edge

Example

{
  "node": Reading,
  "cursor": "abc123"
}

ImportTrancheRate

Output type of the importTrancheRate mutation.

Fields

NameDescription
rateIdentifier(ID)

Unique identifier that references the new tranche rate.

Example

{
  "rateIdentifier": "abc123"
}

Fields

NameDescription
recent(Int)

The average number of seconds passed before an inbound call with the given routing attributes is answered.

This value represents the calls received in the last 30 minutes.

The possible errors that can be raised are:

  • KT-CT-11821: No calls found matching the given routing attributes.
  • KT-CT-1113: Disabled GraphQL field requested.

yesterday(Int)

The average number of seconds passed before an inbound call with the given routing attributes is answered.

This value represents the calls received on the previous day.

The possible errors that can be raised are:

  • KT-CT-11821: No calls found matching the given routing attributes.
  • KT-CT-1113: Disabled GraphQL field requested.

Example

{
  "yesterday": 1,
  "recent": 1
}

Fields

NameDescription
recent(Int)

The average number of seconds passed before an inbound call is answered.

This value represents the calls received in the last 30 minutes.

yesterday(Int)

The average number of seconds passed before an inbound call is answered.

This value represents the calls received on the previous day.

Example

{
  "yesterday": 1,
  "recent": 1
}

Fields

NameDescription
account(AccountType)

If known, this is the account that a call is about. For inbound calls, we attempt to identify the account based on the phone number of the incoming call. For outbound calls, the account will be automatically set if the call was initiated from an account page. For all call types, the account can be updated, for example to correct a misidentification of an incoming call.

id(ID!)

The ID of the call.

initialCallerIdentification(PhoneNumberIdentificationType!)

When an inbound call is received, we identify all entities linked to the phone number of the caller.

metadata([CallMetadataItemType]!)

Metadata related to the call, for example metrics or data passed via an interactive voice response (IVR).

tags([CallTagType]!)

Tags that have been applied to the call, for example during call wrap-up.

Example

{
  "id": "abc123",
  "account": AccountType
}

Fields

NameDescription
escalationStartAt(DateTime)

The escalation start date for the product rate override configuration.

indexCode(String)

The index code for the product rate override configuration.

Example

{
  "indexCode": "abc123",
  "escalationStartAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
accountNumber(String)

The account number of the newly created account or the existing account to be re-used.

isNewAccount(Boolean)

Was a new account created.

Example

{
  "isNewAccount": true,
  "accountNumber": "abc123"
}

Fields

NameDescription
isNewUser(Boolean)

Was a new user created.

userNumber(String)

The user number of the newly created user or the existing user to be re-used.

Example

{
  "isNewUser": true,
  "userNumber": "abc123"
}

InitiateAgreementRescission

Output type of the initiateAgreementRescission mutation.

Fields

NameDescription
agreementRescission(AgreementRescissionType)

The new agreement rescission instance.

Example

{
  
}

InitiateHostedStandalonePayment

Output type of the initiateHostedStandalonePayment mutation.

Fields

NameDescription
payment(InitiateHostedStandalonePaymentOutput)

The details required to refer to and complete a hosted payment.


InitiateHostedStandalonePaymentOutput

Tokens required to collect and retrieve a standalone payment.

Fields

NameDescription
retrievalToken(String!)

The retrieval token for this standalone payment.

url(String!)

The url for the customer to complete the payment.

Example

{
  "retrievalToken": "abc123",
  "url": "abc123"
}

InitiateProductSwitch

Output type of the initiateProductSwitch mutation.

Fields

NameDescription
productCode(String!)

The selected product for a specific product switch.

switchDate(Date!)

The date at which the product switch becomes effective.

Example

{
  "productCode": "abc123",
  "switchDate": "2020-01-01"
}

InitiateStandalonePayment

Output type of the initiateStandalonePayment mutation.

Fields

NameDescription
payment(InitiateStandalonePaymentOutput)

Example


InitiateStandalonePaymentOutput

Tokens required to collect and retrieve a standalone payment.

Fields

NameDescription
retrievalToken(String!)

The retrieval token for this standalone payment.

secretToken(String!)

The secret used to collect the payment.

Example

{
  "retrievalToken": "abc123",
  "secretToken": "abc123"
}

Fields

NameDescription
icon(String)

The icon code point.

id(ID!)

The ID of the object

name(String!)

The ink bucket name.

Example

{
  "id": "abc123",
  "name": "abc123",
  "icon": "abc123"
}

Fields

NameDescription
all([InkContactChannelIdentity!]!)

All contacts for this conversation.

default(InkContactChannelIdentity)

The default contact for this conversation.


Fields

NameDescription
channel(InkCommunicationChannel!)

The channel of the contact.

displayName(String!)

The name to display to the user.

handle(String!)

The handle.

Example

{
  "channel": "EMAIL",
  "handle": "abc123",
  "displayName": "abc123"
}

Fields

NameDescription
accountNumber(String)

The number of the Kraken account that the conversation is from.

accountUsers([AccountUserType!])

The account users on the conversation.

buckets([InkBucket!])

The buckets the conversation is currently in.

contactChannelIdentities(InkContactChannelIdentities!)

The contact channel identities associated with this conversation.

events(InkConversationEventsConnection!)

Conversation events.

Arguments

after (String)

before (String)

first (Int)

last (Int)

id(ID!)

lastMessageAt(DateTime)

The timestamp of the most recent message in the conversation.

status(InkConversationStatus!)

The status of the conversation.

tags([InkTag!])

The tags on the conversation.

Example

{
  "id": "abc123",
  "status": "OPEN",
  "contactChannelIdentities": InkContactChannelIdentities,
  "accountUsers": [AccountUserType],
  "accountNumber": "abc123",
  "events": InkConversationEventsConnection,
  "lastMessageAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
edges([InkConversationEventsEdge!]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

Example

{
  "pageInfo": PageInfo,
  "edges": InkConversationEventsEdge
}

InkConversationEventsEdge

A Relay edge containing a InkConversationEvents and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(InkConversationEvent!)

The item at the end of the edge

Example

{
  "node": InkNewMessage,
  "cursor": "abc123"
}

Fields

NameDescription
edges([InkConversationsEdge!]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

Example

{
  "pageInfo": PageInfo,
  "edges": InkConversationsEdge
}

InkConversationsEdge

A Relay edge containing a InkConversations and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(InkConversation!)

The item at the end of the edge

Example

{
  "node": InkConversation,
  "cursor": "abc123"
}

InkEmail

This type wraps around the Message type for emails.

Fields

NameDescription
attachments([InkMessageAttachment!]!)

Attachments on the message.

cc([String!]!)

CC recipients on the message.

contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

conversationId(Int!)

The integer ID of the conversation this message belongs to.

conversationRelayId(String!)

The relay ID of the conversation this message belongs to.

delivery(InkMessageDelivery!)

The delivery status of the message.

direction(InkMessageDirection!)

The direction of the email.

displayContent(String!)

The content of the current email (without previous emails from the email thread).

fromHandle(String!)

From email address.

fullContentHtml(String!)

The full email, including previous emails from the email thread if available, in HTML.

fullContentPlainText(String!)

The full email, including previous emails from the email thread if available, in plain text format.

isChannelEmail(Boolean!)

Is this an message an email.

occurredAt(DateTime!)

The time the message was sent/received.

subject(String!)

The email subject.

tags([InkTag!]!)

All Tags associated with a message.

toHandles([String!])

The addresses that the message was sent to.

Example

{
  "direction": "INBOUND",
  "toHandles": ["abc123"],
  "fromHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "subject": "abc123",
  "displayContent": "abc123",
  "attachments": InkMessageAttachment,
  "cc": "abc123",
  "isChannelEmail": true,
  "conversationId": 1,
  "conversationRelayId": "abc123",
  "fullContentPlainText": "abc123",
  "fullContentHtml": "abc123"
}

InkGenericMessage

This message type is used for messages that belong to contact channels without a more granular message type.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

conversationId(Int!)

The integer ID of the conversation this message belongs to.

conversationRelayId(String!)

The relay ID of the conversation this message belongs to.

delivery(InkMessageDelivery!)

The delivery status.

direction(InkMessageDirection!)

The direction of the message.

displayContent(String!)

The content of the message.

fromHandle(String!)

The identity the message was sent from.

id(ID!)

The ID of the object

occurredAt(DateTime!)

The time the message was sent/received at.

toHandle(String!)

The identity the message was sent to.

Example

{
  "id": "abc123",
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "displayContent": "abc123",
  "conversationId": 1,
  "conversationRelayId": "abc123"
}

InkLine

This type wraps around the Message type for LINE message.

Fields

NameDescription
attachments([InkMessageAttachment!]!)

Attachments on the LINE message.

contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

delivery(InkMessageDelivery!)

The delivery status of the message.

direction(InkMessageDirection!)

The direction of the message.

fromHandle(String!)

From LINE id.

isChannelLine(Boolean!)

Is this a LINE message.

lineMessage(LineMessage!)

The line message content.

occurredAt(DateTime!)

The time the message was sent/received.

tags([InkTag!]!)

All Tags associated with a message.

toHandle(String!)

To LINE id.

Example

{
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "lineMessage": LineTextMessage,
  "isChannelLine": true,
  "attachments": InkMessageAttachment
}

Fields

NameDescription
relayId(ID!)

The relay ID of the live chat conversation.

Example

{
  "relayId": "abc123"
}

InkLiveChatMessage

This type wraps around the Message type for a Live Chat message.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

delivery(InkMessageDelivery!)

The delivery status.

direction(InkMessageDirection!)

The direction of the message.

displayContent(String!)

The content of the message.

fromHandle(String!)

The identity the message was sent from.

id(ID!)

The ID of the object

occurredAt(DateTime!)

The time the message was sent/received at.

toHandle(String!)

The identity the message was sent to.

Example

{
  "id": "abc123",
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "displayContent": "abc123"
}

Fields

NameDescription
fetchUrl(String)

The url for fetching the attachment.

filename(String!)

The filename.

sizeInBytes(Int)

The size in bytes.

Example

{
  "filename": "abc123",
  "fetchUrl": "abc123",
  "sizeInBytes": 1
}

Fields

NameDescription
accountType(String)

The type of the account linked to the conversation of the message.

accounts([String!]!)

The list of accounts related to the message.

buckets([String!])

The list of the buckets the message is in.

conversationId(Int!)

The ID of the conversation this message belongs to.

hourOccurredAt(Int!)

The hour at which the message arrived in Ink.

hoursWaiting(Int!)

The number of hours the customer has been waiting for a response to their previous message.

isAssignedToUserBucket(Boolean!)

Whether the conversation that the message belongs to is assigned to a user bucket.

isFirstFromContact(Boolean!)

Whether the message is the first one sent by the contact.

isNewThread(Boolean!)

Whether the message starts a new thread in its conversation.

opsTeam(String)

The operation team that handles the message.

recentlyReceivedAutoReplies([String!]!)

The codes of the auto replies that have been sent to the contact in the last 6 months.

replyToCommsSms(String)

The body of the latest comms SMS message sent to the customer, if the message is an sms.

weekDayOccurredAt(Int!)

The week day at which the message arrived in Ink.

Example

{
  "accounts": "abc123",
  "accountType": "abc123",
  "buckets": ["abc123"],
  "conversationId": 1,
  "hourOccurredAt": 1,
  "hoursWaiting": 1,
  "isAssignedToUserBucket": true,
  "isFirstFromContact": true,
  "isNewThread": true,
  "opsTeam": "abc123",
  "recentlyReceivedAutoReplies": "abc123",
  "replyToCommsSms": "abc123",
  "weekDayOccurredAt": 1
}

Fields

NameDescription
status(InkMessageDeliveryStatus!)

Message delivery status.

Example

{
  "status": "PENDING"
}

Fields

NameDescription
message(InkMessage!)

The message.

occurredAt(DateTime!)

The time the conversation event occurred.

Example

{
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "message": InkEmail
}

Fields

NameDescription
content(String!)

The content of the ink note.

id(ID!)

The ID of the object

isPinned(Boolean!)

The note is pinned, so that it's always visible in the conversation.

occurredAt(DateTime!)

The datetime at which the conversation note occurred.

Example

{
  "id": "abc123",
  "content": "abc123",
  "isPinned": true,
  "occurredAt": "2020-01-01T00:00:00.000Z"
}

InkPost

This type wraps around the Message type for Post.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

conversationId(Int!)

The integer ID of the conversation this message belongs to.

conversationRelayId(String!)

The relay ID of the conversation this message belongs to.

displayContent(String!)

The notes left when a message was uploaded.

fromHandle(String!)

The from property id.

isChannelPost(Boolean!)

Determine if the message is a post message.

rawPlainTextContent(String!)

The content of the message.

toHandle(String!)

The to property id.

Example

{
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "displayContent": "abc123",
  "rawPlainTextContent": "abc123",
  "isChannelPost": true,
  "contactChannelIdentity": InkContactChannelIdentity,
  "conversationId": 1,
  "conversationRelayId": "abc123"
}

InkSMS

This type wraps around the Message type for SMS.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

The contact channel identity.

delivery(InkMessageDelivery!)

The delivery status.

direction(InkMessageDirection!)

The direction of the message.

displayContent(String!)

The content of the message.

fromHandle(String!)

The phone number the message was sent from.

isChannelSms(Boolean!)

Is this an SMS message.

occurredAt(DateTime!)

The time the message was sent/received at.

tags([InkTag!]!)

All Tags associated with a message.

toHandle(String!)

The phone number the message was sent to.

Example

{
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "displayContent": "abc123",
  "isChannelSms": true
}

Fields

NameDescription
analyzerResults([InkStorylineAnalyzerResult!]!)

The analyzer results for this storyline.

createdAt(DateTime!)

entries([InkStorylineEntry!]!)

The entries in the storyline.

generatedAt(DateTime!)

When the storyline was generated.

id(ID!)

The ID of the object

knowledgeArticleIds([BigInt!])

neuralinkRequestId(UUID!)

summary(String!)

topic(String!)

triggerId(String)

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "topic": "abc123",
  "summary": "abc123",
  "generatedAt": "2020-01-01T00:00:00.000Z",
  "neuralinkRequestId": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "knowledgeArticleIds": [1],
  "triggerId": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
analyzerType(String!)

createdAt(DateTime!)

data(JSONString!)

id(ID!)

The ID of the object

schemaVersion(String!)

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "analyzerType": "abc123",
  "schemaVersion": "abc123",
  "data": {"key": "value"},
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
content(String!)

The content of the storyline entry.

contentId(BigInt)

The optional related object ID of the entry.

entryType(String!)

The type of the storyline entry.

id(ID!)

The ID of the object

isRootCause(Boolean)

Whether this entry is identified as the root cause of the issue.

occurredAt(DateTime!)

The time the storyline entry occurred.

url(String)

Optional URL related to the storyline entry.

Example

{
  "id": "abc123",
  "entryType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "content": "abc123",
  "url": "abc123",
  "contentId": 1,
  "isRootCause": true
}

Fields

NameDescription
id(ID!)

The ID of the object

name(String!)

Tag for a message.

Example

{
  "id": "abc123",
  "name": "abc123"
}

InkTwilioWhatsApp

This type wraps around the Message type for a Twilio WhatsApp message.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

Twilio WhatsApp message contact channel identity.

delivery(InkMessageDelivery!)

Message delivery status.

direction(InkMessageDirection!)

The direction of the message.

fromHandle(String!)

From WhatsApp number.

occurredAt(DateTime!)

Date when the conversation event was created.

tags([InkTag!]!)

All Tags associated with a message.

toHandle(String!)

To WhatsApp number.

vendorId(String)

The vendor id.

whatsappContent(WhatsAppTextMessage!)

Whatsapp message content.

Example

{
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "vendorId": "abc123",
  "whatsappContent": WhatsAppTextMessage
}

InkWhatsApp

This type wraps around the Message type for WhatsApp message.

Fields

NameDescription
contactChannelIdentity(InkContactChannelIdentity!)

Whatsapp message contact channel identity.

delivery(InkMessageDelivery!)

Whatsapp message delivery status.

direction(InkMessageDirection!)

The direction of the message.

fromHandle(String!)

From WhatsApp phone number.

isChannelWhatsapp(Boolean!)

Whether or not the message is a whatsapp message.

occurredAt(DateTime!)

Date when the conversation event was created.

tags([InkTag!]!)

All Tags associated with a message.

toHandle(String!)

Whatsapp contact phone number.

vendorId(String)

The vendor id.

whatsappContent(WhatsAppTextMessage!)

Whatsapp message content.

Example

{
  "direction": "INBOUND",
  "fromHandle": "abc123",
  "toHandle": "abc123",
  "delivery": InkMessageDelivery,
  "contactChannelIdentity": InkContactChannelIdentity,
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "vendorId": "abc123",
  "whatsappContent": WhatsAppTextMessage,
  "isChannelWhatsapp": true
}

InputFieldErrorType

Represents a validation error for a specific input field.

Fields

NameDescription
errorMessage(String!)

The error message to display for this field.

inputFieldKey(String!)

The key of the input field with the error.

inputFieldValue(String!)

The value that was submitted for the field.

Example

{
  "inputFieldKey": "abc123",
  "inputFieldValue": "abc123",
  "errorMessage": "abc123"
}

Fields

NameDescription
endDate(Date)

The date on which the instalment schedule will end.

frequency(String)

The base unit of frequency at which payments are to be taken.

frequencyMultiplier(Int)

The multiple of the frequency at which payments are taken.

paymentDay(Int)

The day of the month/week at which to take payment.

Example

{
  "paymentDay": 1,
  "frequency": "abc123",
  "frequencyMultiplier": 1,
  "endDate": "2020-01-01"
}

InstigateLeaveSupplierForCollectionProcess

Output type of the instigateLeaveSupplierForCollectionProcess mutation.

Fields

NameDescription
leaveSupplierInstigated(InstigateLeaveSupplierForCollectionProcessOutputType)

The instigated leave supplier for the collection process.

Example

{
  
}

Fields

NameDescription
leaveSupplierProcessNumber(String)

The number of the leave supplier process that was instigated.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123",
  "leaveSupplierProcessNumber": "abc123"
}

Fields

NameDescription
characteristic(CharacteristicType)

The product characteristic.

integerValue(Int!)

The integer value of the characteristic.

value(String)

A string representation of a characteristic value, for convenience.

Example

{
  "value": "abc123",
  "characteristic": CharacteristicType,
  "integerValue": 1
}

IntegerType

Graphene type object to represent integer values

Fields

NameDescription
integerValue(Int!)

Value of this field.

Example

{
  "integerValue": 1
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([InternalCompanyConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": InternalCompanyConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

InternalCompanyConnectionTypeEdge

A Relay edge containing a InternalCompanyConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(InternalCompanyType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

InternalCompanyType

Represents an internal company.

Fields

NameDescription
displayableNumber(String!)

The internal company's displayable number, which is a human-friendly identifier.

id(ID!)

The internal company's ID.

legalAddress(RichAddressType)

The legal address of the internal company.

name(String!)

The internal company's name.

primaryRegistrationNumber(String)

The primary registration number of the internal company.

primaryTaxIdentifierNumber(String)

The primary tax identifier number of the internal company.

secondaryRegistrationNumber(String)

The secondary registration number of the internal company.

Example

{
  "id": "abc123",
  "displayableNumber": "abc123",
  "name": "abc123",
  "primaryRegistrationNumber": "abc123",
  "secondaryRegistrationNumber": "abc123",
  "primaryTaxIdentifierNumber": "abc123",
  "legalAddress": RichAddressType
}

Fields

NameDescription
accumulation(Decimal)

Deprecated

The 'accumulation' field is deprecated.

This field is no longer required.

- Marked as deprecated on 2024-10-15.
- Scheduled for removal on or after 2024-11-01.

durationInSeconds(Int!)

The duration of the measurement.

endAt(DateTime!)

The end datetime of the measurement.

metaData(MeasurementsMetadataOutput)

This type will return more granular data about the measurement.

readAt(DateTime!)

The datetime the measurement was taken.

source(String!)

The data source of the measurement.

startAt(DateTime!)

The start datetime of the measurement.

unit(String!)

The unit of the measurement.

value(Decimal!)

The value of the measurement.

Example

{
  "source": "abc123",
  "metaData": MeasurementsMetadataOutput,
  "value": "1.0",
  "unit": "abc123",
  "readAt": "2020-01-01T00:00:00.000Z",
  "startAt": "2020-01-01T00:00:00.000Z",
  "endAt": "2020-01-01T00:00:00.000Z",
  "durationInSeconds": 1,
  "accumulation": "1.0"
}

InvalidatePaymentInstruction

Output type of the invalidatePaymentInstruction mutation.

Fields

NameDescription
instruction(InvalidatePaymentInstructionOutput)

Example


InvalidatePaymentInstructionOutput

Output for invalidating an arbitrary payment instruction.

Fields

NameDescription
id(Int)

Example

{
  "id": 1
}

InvalidatePreSignedToken

Output type of the invalidatePreSignedToken mutation.

Fields

NameDescription
token(PreSignedToken)

Example

{
  "token": PreSignedToken
}

InvalidatePreSignedTokensForUser

Output type of the invalidatePreSignedTokensForUser mutation.

Fields

NameDescription
tokens([PreSignedToken])

Example

{
  "tokens": [PreSignedToken]
}

InvalidateRefreshToken

Output type of the invalidateRefreshToken mutation.

Fields

NameDescription
token(RefreshToken)

Example

{
  
}

InvalidateRefreshTokensForUser

Output type of the invalidateRefreshTokensForUser mutation.

Fields

NameDescription
tokens([RefreshToken])

Example

{
  
}

InvoiceBillingDocumentConnectionTypeConnection

An invoice is a bill that contains individual transactions (i.e. charges, credits, payments, and repayments). These may come from any period of time.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([InvoiceBillingDocumentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": InvoiceBillingDocumentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

InvoiceBillingDocumentConnectionTypeEdge

A Relay edge containing a InvoiceBillingDocumentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(InvoiceBillingDocumentType)

The item at the end of the edge

Example

{
  "node": InvoiceBillingDocumentType,
  "cursor": "abc123"
}

InvoiceBillingDocumentType

An invoice is a bill that contains individual transactions (i.e. charges, credits, payments, and repayments). These may come from any period of time.

Fields

NameDescription
annulledBy(AnnulmentBillingDocumentType)

Billing document that annuls this invoice.

billingFrom(DateTime)

Start date of billing period.

billingTo(DateTime)

End date of billing period.

documentDebtPosition(BillingDocumentPositionType)

Position of the billing document in the delinquent debt tracking system.

dueDate(Date)

The final date before missing payment is considered overdue.

firstIssued(DateTime)

First time the invoice was issued.

id(Int)

Unique identifier for the invoice billing document.

invoicedAmount(Int)

The invoiced amount of the billing document.

isHeld(Boolean)

Whether the billing document is currently held.

number(String)

The unique billing document's reference that can be used for identifying it externally.

paymentDueDate(Date)

The date due for payment for the invoice.

Deprecated

The 'paymentDueDate' field is deprecated.

This field name is ambiguous and inconsistently populated. Use `paymentDate` for the date on which payment will be collected. Use `dueDate` for the last date any payment can be made before the bill is considered overdue.

- Marked as deprecated on 2026-06-15.
- Scheduled for removal on or after 2027-08-15.

pdfUrl(String)

URL to the PDF of the Invoice.

scheduledPaymentDate(Date)

The planned date for payment (may be before the due_date).

totalCharges(InvoiceTotalType)

The total amounts for all charges on the invoice.

totalCredits(InvoiceTotalType)

The total amounts for all credits on the invoice.

transactions(BillTransactionConnectionTypeConnection)

Transactions on the invoice

Arguments

after (String)

before (String)

first (Int)

last (Int)

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

Example

{
  "id": 1,
  "firstIssued": "2020-01-01T00:00:00.000Z",
  "pdfUrl": "abc123",
  "annulledBy": AnnulmentBillingDocumentType,
  "isHeld": true,
  "number": "abc123",
  "invoicedAmount": 1,
  "totalCharges": InvoiceTotalType,
  "totalCredits": InvoiceTotalType,
  "transactions": BillTransactionConnectionTypeConnection,
  "documentDebtPosition": BillingDocumentPositionType,
  "dueDate": "2020-01-01",
  "scheduledPaymentDate": "2020-01-01",
  "paymentDueDate": "2020-01-01",
  "billingFrom": "2020-01-01T00:00:00.000Z",
  "billingTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
grossTotal(Int)

The gross total amount for the statement (in minor currency units).

netTotal(Int)

The net total amount for the statement (in minor currency units).

taxTotal(Int)

The total amount of tax on the statement (in minor currency units).

Example

{
  "netTotal": 1,
  "taxTotal": 1,
  "grossTotal": 1
}

Fields

NameDescription
attachments(BillingAttachmentConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

billType(BillTypeEnum)

The type of the bill.

fromDate(Date)

The date of the bill is covered from. This may differ from the service/consumption period shown on the bill document.

grossAmount(Int)

This field returns the total gross amount of the bill in pence.

id(ID)

The ID of the bill.

identifier(String)

The unique identifier of a bill. It will usually be present on the billing document itself.

Note: a bill that hasn't been issued yet will not have an identifier; and not all issued bills will have an identifier assigned to them, in which case this will be null.

isAnnulled(Boolean!)

Whether the billing document has been annulled.

isHeld(Boolean)

Whether the billing document is currently held.

issuedDate(Date)

The date the bill was sent to the customer.

representations(BillRepresentationConnectionTypeConnection)

Arguments

after (String)

before (String)

code (String)

The code of a representation. Used to identify different types of representations.

first (Int)

last (Int)

reversalsAfterClose(StatementReversalsAfterClose!)

How many charges have been reversed after the close date.

temporaryUrl(String)

Requesting this field generates a temporary URL at which bill is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page). This field can raise an error with errorClass NOT_FOUND if the bill document has not been created/issued yet. This field is deprecated use 'attachments' field instead.

Deprecated

The 'temporaryUrl' field is deprecated.

This field is deprecated. Use the 'attachments' field instead.

- Marked as deprecated on 2024-09-16.
- Scheduled for removal on or after 2025-09-01.

toDate(Date)

The date of the bill is covered to. This may differ from the service/consumption period shown on the bill document.

totalCharges(InvoiceTotalType)

The total amounts for all charges on the invoice.

totalCredits(InvoiceTotalType)

The total amounts for all credits on the invoice.

totalPayments(Int)

The sum of all previous payments made that are included towards this invoice.

transactions(BillTransactionConnectionTypeConnection)

Transactions on the given billing document.

Arguments

after (String)

before (String)

first (Int)

last (Int)

ledgerNumber (String)

When provided, only entries that are linked to that ledger are returned.

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

transactionTypes ([TransactionTypeFilter])

Include only these specific transaction types in the result.

Example

{
  "id": "abc123",
  "billType": "STATEMENT",
  "fromDate": "2020-01-01",
  "toDate": "2020-01-01",
  "temporaryUrl": "abc123",
  "issuedDate": "2020-01-01",
  "attachments": BillingAttachmentConnectionTypeConnection,
  "reversalsAfterClose": "ALL",
  "identifier": "abc123",
  "grossAmount": 1,
  "isAnnulled": true,
  "isHeld": true,
  "totalCharges": InvoiceTotalType,
  "totalCredits": InvoiceTotalType,
  "totalPayments": 1,
  "transactions": BillTransactionConnectionTypeConnection,
  "representations": BillRepresentationConnectionTypeConnection
}

JoinSupplierAcceptTermsAndConditions

Output type of the joinSupplierAcceptTermsAndConditions mutation.

Fields

NameDescription
success(Boolean)

Indicator that the mutation has completed successfully.

Example

{
  "success": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([JoinSupplierLedgerAssignmentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": JoinSupplierLedgerAssignmentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

JoinSupplierLedgerAssignmentConnectionTypeEdge

A Relay edge containing a JoinSupplierLedgerAssignmentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(JoinSupplierLedgerAssignmentType)

The item at the end of the edge

Example

{
  "node": JoinSupplierLedgerAssignmentType,
  "cursor": "abc123"
}

JoinSupplierLedgerAssignmentType

A ledger with its associated supply points.

Multiple supply points may be assigned to the same ledger. This type groups them for convenient querying.

Fields

NameDescription
ledgerName(String)

The ledger name.

ledgerNumber(String)

The ledger number.

ledgerSupplyPoints([LedgerSupplyPointType])

The supply points associated with the ledger.

ledgerType(String)

The ledger type.

Example

{
  "ledgerNumber": "abc123",
  "ledgerType": "abc123",
  "ledgerName": "abc123",
  "ledgerSupplyPoints": [LedgerSupplyPointType]
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([JoinSupplierProcessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": JoinSupplierProcessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

JoinSupplierProcessConnectionTypeEdge

A Relay edge containing a JoinSupplierProcessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(JoinSupplierProcessType)

The item at the end of the edge

Example

{
  "node": JoinSupplierProcessType,
  "cursor": "abc123"
}

Fields

NameDescription
affiliateLink(AffiliateLinkType)

Affiliate link for the join supplier journey.

note(String)

The note associated with this join supplier process data.

offerGroupIdentifier(NonEmptyString)

Unique identifier for the offer group.

paymentScheduleData(PaymentScheduleDataType)

The payment schedule details chosen for this join supplier journey.

requestedAt(DateTime!)

When the journey was requested.

salesChannel(String)

Sales channel.

salesSubchannel(String)

Sales subchannel.

storedPaymentMethodDetailsReference(String)

Reference to the stored payment method details.

supplyPointContexts([SupplyPointContextDataInterface])

The supply point context data.

Example

{
  "requestedAt": "2020-01-01T00:00:00.000Z",
  "salesChannel": "abc123",
  "salesSubchannel": "abc123",
  "offerGroupIdentifier": NonEmptyString,
  "supplyPointContexts": SupplyPointContextDataInterface,
  "note": "abc123",
  "storedPaymentMethodDetailsReference": "abc123",
  "paymentScheduleData": PaymentScheduleDataType
}

JoinSupplierProcessType

Represents a Join Supplier process.

Fields

NameDescription
contractReferences(ContractReferencesType)

Contract identifiers associated with this join supplier process.

currentProcessData(JoinSupplierProcessDataType)

The current process data associated with the Join Supplier process.

id(ID)

The ID or the primary key of the lifecycle process.

ledgerAssignments(JoinSupplierLedgerAssignmentConnectionTypeConnection)

The ledgers associated with the supply points in the process.

Arguments

after (String)

before (String)

first (Int)

last (Int)

number(String)

The unique identifier of the process.

stage(String)

Current stage of the join supplier journey.

status(LifecycleSupplyPointProcessStatus)

The status of the process.

subtype(String)

The subtype of the process.

supplyPoints(SupplyPointConnectionTypeConnection!)

The supply points associated with the process.

Deprecated

The 'supplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyPointsInterface(SupplyPointInterfaceConnection!)

The supply points associated with the process. Node type is the CommonSupplyPointInterface; use inline fragments (e.g. ... on WaterSupplyPointType, ... on ElectricitySupplyPointType) to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "status": "PENDING",
  "supplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection,
  "number": "abc123",
  "subtype": "abc123",
  "contractReferences": ContractReferencesType,
  "currentProcessData": JoinSupplierProcessDataType,
  "ledgerAssignments": JoinSupplierLedgerAssignmentConnectionTypeConnection,
  "stage": "abc123"
}

KnowledgeDatabaseArticle

An article in the Knowledge Database.

Fields

NameDescription
archivedAt(DateTime)

When the Article was archived, if it has been archived.

articleId(Int!)

The ID of the Article in the Knowledge Database.

articleType(ArticleType!)

The type of the Article.

audience(ArticleAudience!)

Whether the Article is for internal or external consumption.

brands([KnowledgeDatabaseArticleBrand!]!)

The brands associated with the Article.

createdAt(DateTime!)

When the Article was initially loaded into the Knowledge Database.

lastRefreshedAt(DateTime!)

When the Article was last refreshed in the Knowledge Database from its original source.

status(ArticleStatus!)

Whether the Article is active or archived.

tags([String!]!)

Any metadata tags attached to the Article.

text(String)

The body of the Article.

title(String!)

The title of the Article.

url(String)

Link to the Article's original source address.

Example

{
  "articleId": 1,
  "articleType": "COMPANY_BLOG",
  "audience": "INTERNAL",
  "title": "abc123",
  "tags": "abc123",
  "text": "abc123",
  "status": "ACTIVE",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "archivedAt": "2020-01-01T00:00:00.000Z",
  "lastRefreshedAt": "2020-01-01T00:00:00.000Z",
  "url": "abc123"
}

KnowledgeDatabaseArticleBrand

A brand associated with a Knowledge Database article.

Fields

NameDescription
code(String!)

The unique code of the brand.

name(String!)

The display name of the brand.

Example

{
  "code": "abc123",
  "name": "abc123"
}

Fields

NameDescription
identifier(String)

The unique identifier for the sales record.

opportunityNumber(String)

The opportunity code associated with the sales record.

Example

{
  "identifier": "abc123",
  "opportunityNumber": "abc123"
}

Fields

NameDescription
chargePointMake(String)

chargePointModel(String)

chargePointPowerInKw(Decimal)

createdAt(DateTime)

hasToken(Boolean)

krakenflexDeviceId(String)

provider(ProviderChoices)

The third party that provides control over this device.

stateOfChargeLimit(StateOfChargeLimit)

Maximum state of charge (SoC) limit telemetry.

status(String)

suspended(Boolean)

testDispatchFailureReason(TestDispatchAssessmentFailureReason)

The reason for the most recent failed test dispatch (if any).

vehicleBatterySizeInKwh(Decimal)

vehicleMake(String)

vehicleModel(String)

Example

{
  "krakenflexDeviceId": "abc123",
  "provider": "BMW",
  "vehicleMake": "abc123",
  "vehicleModel": "abc123",
  "vehicleBatterySizeInKwh": "1.0",
  "chargePointMake": "abc123",
  "chargePointModel": "abc123",
  "chargePointPowerInKw": "1.0",
  "status": "abc123",
  "suspended": true,
  "hasToken": true,
  "createdAt": "2020-01-01T00:00:00.000Z",
  "stateOfChargeLimit": StateOfChargeLimit,
  "testDispatchFailureReason": "NONE"
}

Fields

NameDescription
affiliateOrganisationName(String)

The name of the affiliate organisation associated with the sales record.

identifier(String)

The unique identifier for the sales record.

salesChannel(String)

The sales channel associated with the sales record.

Example

{
  "identifier": "abc123",
  "salesChannel": "abc123",
  "affiliateOrganisationName": "abc123"
}

KrakenVersionType

Information about what version of Kraken is being executed by this service.

Fields

NameDescription
SHA(String)

The git commit SHA that is being executed.

isPinned(Boolean)

Whether this version is pinned to a specific version.

number(String)

The version number that is being executed.

Example

{
  "number": "abc123",
  "SHA": "abc123",
  "isPinned": true
}

LatePaymentFeesType

Represents later payment fees to be applied in a contract.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

flatFeeAmount(Int)

The flat fee amount for late payment.

identifier(NonEmptyString)

The identifier of the term.

interestPolicyName(String)

The interest policy to use for late payment fee calculations.

isVariable(Boolean)

Whether the term is variable.

percentageFee(Decimal)

The percentage fee for late payment.

percentageIntervalDays(Int)

The interval in days for the percentage fee (1=daily, 7=weekly, 30=monthly, 365=yearly).

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "flatFeeAmount": 1,
  "percentageFee": "1.0",
  "percentageIntervalDays": 1,
  "interestPolicyName": "abc123"
}

Fields

NameDescription
assignedToOrganization(AffiliateOrganisationType)

Affiliate organization assigned to this lead.

Deprecated

The 'assignedToOrganization' field is deprecated.

Please use 'assignedToTeamIdentifier' instead.

- Marked as deprecated on 2026-05-07.
- Scheduled for removal on or after 2026-07-07.

assignedToTeamIdentifier(String)

The identifier of the team the lead is assigned to.

Deprecated

The 'assignedToTeamIdentifier' field is deprecated.

Lead-level assignment is being removed. Assignment is managed at Opportunity level.

- Marked as deprecated on 2026-05-19.
- Scheduled for removal on or after 2026-07-19.

assignedToUserIdentifier(String)

The identifier of the user the lead is assigned to.

Deprecated

The 'assignedToUserIdentifier' field is deprecated.

Lead-level assignment is being removed. Assignment is managed at Opportunity level.

- Marked as deprecated on 2026-05-19.
- Scheduled for removal on or after 2026-07-19.

assignedToUsername(String)

The username of the user the lead is assigned to.

Deprecated

The 'assignedToUsername' field is deprecated.

Please use 'assignedToUserIdentifier' instead.

- Marked as deprecated on 2026-04-22.
- Scheduled for removal on or after 2026-06-22.

contacts([LeadContactDetailsType])

The contacts for the lead.

Arguments

input (LeadContactDetailsFiltersInput)

Input fields for retrieving contacts.

leadType(String)

The type of the lead.

nationalId(String)

National Identifier of the lead.

Deprecated

The 'nationalId' field is deprecated.

Please use 'leadContact.nationalId' instead.

- Marked as deprecated on 2026-06-10.
- Scheduled for removal on or after 2026-09-10.

number(String!)

Lead number.

opportunities([OpportunityOutput])

List of opportunities for the lead.

Arguments

input (OpportunitiesQueryInput)

Input fields for retrieving opportunities.

salesChannel(SalesChannelType)

The sales channel that this lead was captured by.

Deprecated

The 'salesChannel' field is deprecated.

Sales channel information is being removed from the Lead model. This is information is saved in the Opportunity.

- Marked as deprecated on 2025-06-17.
- Scheduled for removal on or after 2025-10-17.

salesFunnel(SalesFunnel)

The sales funnel this lead is in.

stage(SalesFunnelStage)

The current stage of the sales funnel that this lead is in.

Example

{
  "number": "abc123",
  "nationalId": "abc123",
  "leadType": "abc123",
  "assignedToUsername": "abc123",
  "assignedToUserIdentifier": "abc123",
  "assignedToTeamIdentifier": "abc123"
}

Fields

NameDescription
blockListHits([String])

List of block list hits found.

valid(Boolean)

Indicates if the block list validation passed.

Example

{
  "valid": true,
  "blockListHits": ["abc123"]
}

Fields

NameDescription
consents([ConsentOutput])

List of consents for the contact.

contactAddress(RichAddressType)

The address of the contact.

email(String)

The email address of the contact.

familyName(String)

The family name of the contact.

givenName(String)

The given name of the contact.

landlineNumber(String)

The landline phone number of the contact.

nationalId(String)

National Identifier of the lead.

phoneNumber(String)

The mobile phone number of the contact.

preferredLanguage(String)

The preferred language of the contact as an ISO code (e.g. 'es-es').

roles([LeadContactRoles])

The roles of the contact.

Example

{
  "givenName": "abc123",
  "familyName": "abc123",
  "email": "abc123",
  "phoneNumber": "abc123",
  "nationalId": "abc123",
  "landlineNumber": "abc123",
  "roles": "LEGAL_CONTACT",
  "preferredLanguage": "abc123",
  "contactAddress": RichAddressType,
  "consents": [ConsentOutput]
}

Fields

NameDescription
number(String!)

The number of the lead.

Example

{
  "number": "abc123"
}

Fields

NameDescription
accountNumber(String)

Lead's linked account number.

assignedToTeam(String)

Team assigned to this lead.

Deprecated

The 'assignedToTeam' field is deprecated.

Please use 'assignedToTeamIdentifier' instead.

- Marked as deprecated on 2026-04-22.
- Scheduled for removal on or after 2026-06-22.

assignedToUser(String)

User assigned to this lead.

Deprecated

The 'assignedToUser' field is deprecated.

Please use 'assignedToUserIdentifier' instead.

- Marked as deprecated on 2026-04-22.
- Scheduled for removal on or after 2026-06-22.

billingAddress(AddressOutput)

Lead billing address.

Deprecated

The 'billingAddress' field is deprecated.

Please use 'contactAddress' on the lead contact with the ACCOUNT_HOLDER role instead.

- Marked as deprecated on 2026-06-18.
- Scheduled for removal on or after 2026-09-18.

billingName(String)

Lead billing name.

Deprecated

The 'billingName' field is deprecated.

Please use 'givenName' and 'familyName' on the lead contact with the ACCOUNT_HOLDER role instead.

- Marked as deprecated on 2026-06-18.
- Scheduled for removal on or after 2026-09-18.

billingRichAddress(RichAddressType)

Lead billing rich address.

Deprecated

The 'billingRichAddress' field is deprecated.

Please use 'contactAddress' on the lead contact with the ACCOUNT_HOLDER role instead.

- Marked as deprecated on 2026-06-18.
- Scheduled for removal on or after 2026-09-18.

brand(String)

Lead brand.

contacts([LeadContactDetailsType])

The contacts for the lead.

Arguments

input (LeadContactDetailsFiltersInput)

Input fields for filtering contacts.

email(String)

Lead account holder email.

extraDetailItems([ExtraDetail])

Extra details about the lead as key/value pairs.

familyName(String)

Lead legal family name.

funnel(SalesFunnel)

The lead funnel this lead is in.

givenName(String)

Lead legal given name.

leadId(ID)

Lead ID.

leadType(String)

The type of the lead.

nationalId(String)

National Identifier of the lead.

Deprecated

The 'nationalId' field is deprecated.

Please use 'leadContact.nationalId' instead.

- Marked as deprecated on 2026-06-10.
- Scheduled for removal on or after 2026-09-10.

number(String)

Lead number.

phoneNumber(String)

Lead account holder mobile number.

salesChannel(String)

Lead sales channel.

Deprecated

The 'salesChannel' field is deprecated.

Sales channel information is being removed from the Lead model. This is information is saved in the Opportunity.

- Marked as deprecated on 2025-06-17.
- Scheduled for removal on or after 2025-10-17.

stage(String)

Current stage in a funnel.

Example

{
  "leadId": "abc123",
  "accountNumber": "abc123",
  "givenName": "abc123",
  "familyName": "abc123",
  "billingName": "abc123",
  "billingRichAddress": RichAddressType,
  "email": "abc123",
  "phoneNumber": "abc123",
  "number": "abc123",
  "stage": "abc123",
  "brand": "abc123",
  "salesChannel": "abc123",
  "assignedToTeam": "abc123",
  "assignedToUser": "abc123",
  "nationalId": "abc123",
  "leadType": "abc123"
}

Fields

NameDescription
externalIdentifier(String)

Supply point identifier.

marketName(String)

Market code of the supply point.

Example

{
  "externalIdentifier": "abc123",
  "marketName": "abc123"
}

Fields

NameDescription
number(String!)

The lead number.

Example

{
  "number": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([LeadsEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": LeadsEdge,
  "totalCount": 1,
  "edgeCount": 1
}

LeadsEdge

A Relay edge containing a Leads and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Lead)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

LeadsFileAttachmentDownloadPresignedUrlType

Metadata returned when generating a pre-signed download URL for a leads file attachment.

Fields

NameDescription
preSignedUrl(String!)

The pre-signed S3 download URL.

Example

{
  "preSignedUrl": "abc123"
}

LeadsFileAttachmentPresignedPostType

Metadata returned when generating a pre-signed post URL for a leads file attachment.

Fields

NameDescription
bucket(String!)

The S3 bucket.

fields(JSONString!)

The fields to be included in the pre-signed post.

key(String!)

The S3 bucket key.

preSignedUrl(String!)

The pre-signed S3 URL.

Example

{
  "key": "abc123",
  "bucket": "abc123",
  "preSignedUrl": "abc123",
  "fields": {"key": "value"}
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([LeavePropertyProcessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": LeavePropertyProcessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

LeavePropertyProcessConnectionTypeEdge

A Relay edge containing a LeavePropertyProcessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(LeavePropertyProcessType)

The item at the end of the edge

Example

{
  "node": LeavePropertyProcessType,
  "cursor": "abc123"
}

LeavePropertyProcessType

Represents a Leave Property process.

Fields

NameDescription
id(ID)

The ID or the primary key of the lifecycle process.

status(LifecycleSupplyPointProcessStatus)

The status of the process.

supplyPoints(SupplyPointConnectionTypeConnection!)

The supply points associated with the process.

Deprecated

The 'supplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyPointsInterface(SupplyPointInterfaceConnection!)

The supply points associated with the process. Node type is the CommonSupplyPointInterface; use inline fragments (e.g. ... on WaterSupplyPointType, ... on ElectricitySupplyPointType) to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "status": "PENDING",
  "supplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection
}

LeaveSupplierCancelled

Output of a LeaveSupplier journey cancellation.

Fields

NameDescription
message(String!)

The message to display to the user on cancellation.

Example

{
  "message": "abc123"
}

LeaveSupplierInstigated

Termination was successfully initiated.

Fields

NameDescription
leaveSupplierProcessId(ID)

The ID of the newly created or existing leave supplier process.

Deprecated

The 'leaveSupplierProcessId' field is deprecated.

Process IDs are deprecated, please use 'number' instead.

- Marked as deprecated on 2025-08-06.
- Scheduled for removal on or after 2025-09-30.

message(String!)

The message to display to the user on termination initiation.

number(ID!)

The number of the newly created or existing leave supplier process.

Example

{
  "number": "abc123",
  "leaveSupplierProcessId": "abc123",
  "message": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([LeaveSupplierProcessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": LeaveSupplierProcessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

LeaveSupplierProcessConnectionTypeEdge

A Relay edge containing a LeaveSupplierProcessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(LeaveSupplierProcessType)

The item at the end of the edge

Example

{
  "node": LeaveSupplierProcessType,
  "cursor": "abc123"
}

LeaveSupplierProcessType

Represents a Leave Supplier process. Conceptually, it contains information related to supply points that are associated with a Leave Supplier journey.

Fields

NameDescription
id(ID)

The ID or the primary key of the lifecycle process.

number(String)

The unique identifier of the process.

stage(String)

Current stage of the leave supplier journey.

status(LifecycleSupplyPointProcessStatus)

The status of the process.

subtype(String)

The subtype of the process.

supplyPoints(SupplyPointConnectionTypeConnection!)

The supply points associated with the process.

Deprecated

The 'supplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyPointsInterface(SupplyPointInterfaceConnection!)

The supply points associated with the process. Node type is the CommonSupplyPointInterface; use inline fragments (e.g. ... on WaterSupplyPointType, ... on ElectricitySupplyPointType) to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "status": "PENDING",
  "number": "abc123",
  "supplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection,
  "subtype": "abc123",
  "stage": "abc123"
}

LeaveSupplierReversed

Output of a LeaveSupplier journey reversal.

Fields

NameDescription
message(String!)

The message to display to the user on reversal.

Example

{
  "message": "abc123"
}

LeaveSupplierUpdated

Leave supplier was successfully updated.

Fields

NameDescription
message(String!)

The message to display to the user on leave supplier update.

Example

{
  "message": "abc123"
}

Fields

NameDescription
delinquentDebtAmount(Int)

The total amount of delinquent debt for this ledger (in minor currency units, e.g. pence/cents). A value of 0 means the ledger has no delinquent debt. Null if the status is not OK.

ledgerNumber(String!)

The ledger number.

status(LedgerDebtPositionStatus!)

The status of the debt position for this ledger. OK means the delinquentdebtamount is available and accurate. UNAVAILABLE means the position could not be determined.

Example

{
  "ledgerNumber": "abc123",
  "delinquentDebtAmount": 1,
  "status": "OK"
}

Fields

NameDescription
externalIdentifier(String)

Supply point external identifier. Empty string if not set.

marketName(String)

Market name for the supply point.

Example

{
  "externalIdentifier": "abc123",
  "marketName": "abc123"
}

LedgerType

Ledgers provide the foundation of Kraken’s bookkeeping functionality. Similar to a bank account, they allow us to keep track of financial activity on a particular Kraken account.

Fields

NameDescription
acceptsPayments(Boolean)

Whether payments can be posted onto this ledger.

affectsAccountBalance(Boolean)

Whether this ledger's balance contributes to the account's balance.

agreements(AgreementConnection)

The charged supply agreements of the ledger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

amountOwedByCustomer(Int)

The amount owed from the customer perspective. A positive value implies the customer owes the business, while a negative amount implies the customer is in credit.

balance(Int)

The current balance on the ledger in minor units of currency.

billingTriggerConfiguration(BillingTriggerConfiguration)

The active billing trigger configuration for the ledger.

The possible errors that can be raised are:

  • KT-CT-9709: Billing trigger configuration only supports SupplementaryLedger type.
  • KT-CT-1113: Disabled GraphQL field requested.

creditTransferPermissionsData(CreditTransferPermissionsDataType)

Permissions data for credit transfers involving the given ledger.

currentDirectDebitInstructionInvalidatedWithVendor(Boolean)

True if the current direct debit instruction has been invalidated by vendor. False otherwise.

debtLedger(LedgerType)

The debt ledger assigned to this ledger.

id(ID)

Deprecated

The 'ledgerId' field is deprecated.

Please use 'ledgerNumber' instead. This is in the form of 'L-123456789A'

- Marked as deprecated on 2024-10-22.
- Scheduled for removal on or after 2025-06-25.

invoices(InvoiceBillingDocumentConnectionTypeConnection)

An invoice is a bill that contains individual transactions (i.e. charges, credits, payments, and repayments). These may come from any period of time.

Arguments

after (String)

before (String)

excludeExternallyIssued (Boolean)

Exclude invoices that were issued by external systems. Does not apply to legacy bills.

first (Int)

invoiceId (Int)

The id of the invoice.

last (Int)

orderBy (_BillingDocumentsOrderBy)

The order the invoices should be returned in.

ledgerType(String)

The ledger type code.

name(String)

The display name of the ledger.

number(String)

The canonical name of the ledger.

paymentAdequacy(PaymentAdequacyDetailsType)

paymentPreferenceAtTime(PaymentPreferenceUnion)

The customer's preferred payment method at a point in time.

The possible errors that can be raised are:

  • KT-CT-3976: The ledger has no configured payment preference.
  • KT-CT-3977: Ledger was not accepting payments at this time.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

atTime (DateTime!)

The time at which to know the payment preference.

paymentPreferences(PaymentPreferenceConnectionTypeConnection)

The customer's preferred payment methods.

Arguments

after (String)

before (String)

first (Int)

last (Int)

paymentsWithNonConcludedRePresentation(PaymentWithNonConcludedRePresentationConnectionTypeConnection)

Payments with non-concluded re-presentation.

Arguments

after (String)

before (String)

first (Int)

last (Int)

refundRequests(RefundRequestConnectionTypeConnection)

Refund requests for a given ledger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

repaymentRequests(RepaymentRequestConnectionTypeConnection)

Repayment requests for a given ledger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

statements(StatementBillingDocumentConnectionTypeConnection)

A statement is a billing document that contains all entries on a ledger during a period of time. A customer can understand how their ledger's balance has changed by looking at each statement in series.

Arguments

after (String)

before (String)

first (Int)

last (Int)

orderBy (_BillingDocumentsOrderBy)

The order the statements should be returned in.

statementId (Int)

The id of billing document.

supportsInvoices(Boolean)

Is it possible for this ledger to contain invoices.

supportsStatements(Boolean)

Is it possible for this ledger to contain statements.

transactions(TransactionConnectionTypeConnection)

Transactions on the given ledger.

Arguments

after (String)

before (String)

first (Int)

fromDate (Date)

Optional date representing the beginning of the postedDate range filter. This date value is inclusive.

last (Int)

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

toDate (Date)

Optional date representing the end of the postedDate range filter. This date value is exclusive.

transactionTypes ([TransactionTypeFilter])

Include only these specific transaction types in the result.

usablePaymentInstructions(PaymentInstructionConnectionTypeConnection)

The usable payment instructions for this ledger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

usableAt (DateTime)

The time at which the payment instructions should be usable.

Example

{
  "id": "abc123",
  "name": "abc123",
  "number": "abc123",
  "ledgerType": "abc123",
  "balance": 1,
  "amountOwedByCustomer": 1,
  "affectsAccountBalance": true,
  "statements": StatementBillingDocumentConnectionTypeConnection,
  "invoices": InvoiceBillingDocumentConnectionTypeConnection,
  "transactions": TransactionConnectionTypeConnection,
  "repaymentRequests": RepaymentRequestConnectionTypeConnection,
  "refundRequests": RefundRequestConnectionTypeConnection,
  "acceptsPayments": true,
  "paymentAdequacy": PaymentAdequacyDetailsType,
  "creditTransferPermissionsData": CreditTransferPermissionsDataType,
  "paymentPreferences": PaymentPreferenceConnectionTypeConnection,
  "paymentPreferenceAtTime": PreferredInstruction,
  "debtLedger": LedgerType,
  "agreements": AgreementConnection,
  "usablePaymentInstructions": PaymentInstructionConnectionTypeConnection,
  "billingTriggerConfiguration": BillingTriggerConfiguration,
  "supportsStatements": true,
  "supportsInvoices": true,
  "currentDirectDebitInstructionInvalidatedWithVendor": true,
  "paymentsWithNonConcludedRePresentation": PaymentWithNonConcludedRePresentationConnectionTypeConnection
}

LegacyItemProfileType

Represents the characteristics and configuration of an ordered item.

Fields

NameDescription
characteristics(JSONString)

The characteristic values for this item profile.

Example

{
  "characteristics": {"key": "value"}
}

LegacyOrderDetailsType

Represents the details of an Order.

Fields

NameDescription
order(LegacyOrderType)

The order details.

The possible errors that can be raised are:

  • KT-CT-13101: Order not found.
  • KT-CT-1113: Disabled GraphQL field requested.

resources([LegacyOrderResource])

The resources associated with the order.

The possible errors that can be raised are:

  • KT-CT-13101: Order not found.
  • KT-CT-1113: Disabled GraphQL field requested.

status(OrderStatus)

The current status of the order.

The possible errors that can be raised are:

  • KT-CT-13101: Order not found.
  • KT-CT-1113: Disabled GraphQL field requested.

Example

{
  "status": "PENDING"
}

LegacyOrderItemType

Represents an item being ordered.

Fields

NameDescription
code(NonEmptyString)

The code identifying the item.

marketData(JSONString)

Market-specific data for the item.

profile(LegacyItemProfileType)

The profile containing characteristics of the item.

Example

{
  "profile": LegacyItemProfileType,
  "marketData": {"key": "value"},
  "code": NonEmptyString
}

LegacyOrderLineDateRangeType

Represents a period defined by specific start and end dates.

Fields

NameDescription
end(DateTime)

The end date and time of the period. Null indicates an infinite/rolling period.

start(DateTime!)

The start date and time of the period.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

LegacyOrderLineDurationType

Represents a period defined by duration in seconds.

Fields

NameDescription
duration(Float!)

The duration in seconds.

Example

{
  "duration": 1.0
}

LegacyOrderLineType

Represents a line item in an order.

Fields

NameDescription
item(LegacyOrderItemType)

The item being ordered.

period(LegacyOrderLinePeriodType)

The period for which this order line is valid. Can be a range or a duration.

target(AccountType)

The target customer for this order line.

terms([TermInterface])

The terms applicable to this order line.

Example


LegacyOrderResource

Represents a resource associated with an order.

Fields

NameDescription
resourceIdentifier(NonEmptyString)

The unique identifier of the resource.

resourceType(NonEmptyString)

The type of the resource.

Example

{
  "resourceType": NonEmptyString,
  "resourceIdentifier": NonEmptyString
}

LegacyOrderType

Represents an order in the system.

Fields

NameDescription
customer(LegacyOrderCustomerType)

The customer who placed the order.

identifier(NonEmptyString)

Unique identifier for the order.

lines([LegacyOrderLineType])

The order lines in this order.

orderedAt(DateTime)

The date and time when the order was placed.

sale(SalesRecordType)

The sales record associated with this order, if any.

source(String)

The source offering that generated this order.

terms([TermInterface])

The terms applicable to this order.

Example

{
  "identifier": NonEmptyString,
  "customer": AccountType,
  "lines": [LegacyOrderLineType],
  "orderedAt": "2020-01-01T00:00:00.000Z",
  "terms": TermInterface,
  "sale": KrakenDrivenSalesInfoType,
  "source": "abc123"
}

LegacyProcessOrderOutput

Output type for the result of processing an order.

Fields

NameDescription
identifier(NonEmptyString)

The unique identifier of the processed order.

resources([LegacyOrderResource!])

The resources associated with the processed order.

status(OrderStatus)

The status of the order processing.

Example

{
  "status": "PENDING",
  "identifier": NonEmptyString
}

Fields

NameDescription
joinSupplierProcesses(JoinSupplierProcessConnectionTypeConnection)

List of JoinSupplierProcess for an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

leavePropertyProcesses(LeavePropertyProcessConnectionTypeConnection)

List of LeavePropertyProcess for an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

leaveSupplierProcesses(LeaveSupplierProcessConnectionTypeConnection)

List of LeaveSupplierProcess for an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

occupyPropertyProcesses(OccupyPropertyProcessConnectionTypeConnection)

List of OccupyPropertyProcess for an account.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example


LifecycleType

Represents the lifecycle of an offering.

Fields

NameDescription
activatedAt(DateTime)

DateTime when the offering was activated.

code(String!)

Unique lifecycle code.

maxVersion(Int!)

Maximum version number reached.

previousOffering(ID)

Identifier of the previous version of this offering.

status(CatalogComponentStatus!)

Current status of the offering.

version(Int!)

Current version of the offering.

Example

{
  "code": "abc123",
  "version": 1,
  "maxVersion": 1,
  "previousOffering": "abc123",
  "status": "DRAFT",
  "activatedAt": "2020-01-01T00:00:00.000Z"
}

LineCommonError

A base error type. Should be used for general application or lower level errors.

Fields

NameDescription
field(String)

The field that for which this error should be associated.

message(String!)

The error message to display to the user.

Example

{
  "message": "abc123",
  "field": "abc123"
}

LineEmoji

A LINE specific emoji object. refs: https://developers.line.biz/en/reference/messaging-api/#text-message

Fields

NameDescription
emojiId(String!)

The emoji id.

index(Int!)

The location of the emoji in the message.

length(Int)

The length of the emoji string placeholder.

productId(String!)

The product id.

Example

{
  "index": 1,
  "length": 1,
  "productId": "abc123",
  "emojiId": "abc123"
}

Fields

NameDescription
id(ID!)

Example

{
  "id": "abc123"
}

LineLinkRedirectResponse

Link Successful. Complete link process with LINE.

Fields

NameDescription
redirectUrl(String!)

Example

{
  "redirectUrl": "abc123"
}

Fields

NameDescription
keywords([String!]!)

Keywords describing the sticker.

packageId(String!)

Sticker package id.

resourceType(String!)

Sticker resource type.

stickerId(String!)

Sticker id.

text(String!)

Text used to customize some stickers.

Example

{
  "packageId": "abc123",
  "stickerId": "abc123",
  "resourceType": "abc123",
  "keywords": "abc123",
  "text": "abc123"
}

Fields

NameDescription
displayContent(String!)

The display content.

emojis([LineEmoji!])

The emojis in the message.

Example

{
  "displayContent": "abc123",
  "emojis": [LineEmoji]
}

Fields

NameDescription
message(String!)

Example

{
  "message": "abc123"
}

LinkAccountToBusiness

Output type of the linkAccountToBusiness mutation.

Fields

NameDescription
business(BusinessType)

The business the account was linked to.

Example

{
  "business": BusinessType
}

LinkActionType

An action which navigates to any URL.

Fields

NameDescription
id(ID)

Unique identifier of the object.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

url(String!)

The URL to navigate to.

Example

{
  "typeName": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "url": "abc123"
}

Fields

NameDescription
type(LineLinkErrorType!)

The type of error that occurred.

Example

{
  "type": "NO_MATCHING_LINE_LINK"
}

Fields

NameDescription
averageMonthlyCharge(Int)

The combined average montly cost for all markets based on usage.

balanceAdjustment(Int)

Suggested temporary adjustment to ongoing usage amount to cover debt or overpayment.

consumption(ConsumptionBreakdownConnectionTypeConnection)

Breakdown of customer's estimated or real usage per market and per month.

Arguments

after (String)

before (String)

first (Int)

last (Int)

currentBalance(Int)

The balance the ledger has at the time of review.

existingMonthlyAmount(Int)

The amount the customer is paying monthly at the time of the review.

reviewedOn(Date)

The date that we used to calculate the review of the ledger.

suggestedNewMonthlyAmount(Int)

The suggested monthly payment amount in minor currency following the payment adequacy review.

targetBalance(Int)

The balance we expect the ledger to have at the end period of the review.

Example

{
  "suggestedNewMonthlyAmount": 1,
  "consumption": ConsumptionBreakdownConnectionTypeConnection,
  "averageMonthlyCharge": 1,
  "existingMonthlyAmount": 1,
  "balanceAdjustment": 1,
  "currentBalance": 1,
  "targetBalance": 1,
  "reviewedOn": "2020-01-01"
}

LoyaltyCardType

A loyalty card.

Fields

NameDescription
id(ID!)

number(String)

The number of the loyalty card.

scheme(String)

The scheme of the loyalty card.

status(String)

The status of the loyalty card.

Example

{
  "id": "abc123",
  "scheme": "abc123",
  "number": "abc123",
  "status": "abc123"
}

LoyaltyPointLedgerEntryType

A Loyalty Point ledger entry.

Fields

NameDescription
accountNumber(String)

The account number associated with the entry.

balanceBroughtForward(String)

Equal to the balance_carried_forward from the previous ledger entry or zero if this is the first one.

balanceCarriedForward(String)

Equal to the balance_brought_forward plus or minus the value depending on the ledger_type.

id(ID!)

idempotencyKey(UUID)

A unique idempotency key for the operation.

ledgerType(String)

The LedgerEntryType. Either CHARGE or CREDIT.

postedAt(DateTime)

The date the points were added to the ledger.

reasonCode(String)

The reason the entry was being added.

value(String)

The value of the charge or credit.

Example

{
  "id": "abc123",
  "ledgerType": "abc123",
  "value": "abc123",
  "balanceBroughtForward": "abc123",
  "balanceCarriedForward": "abc123",
  "reasonCode": "abc123",
  "idempotencyKey": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "postedAt": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123"
}

Fields

NameDescription
isEligible(Boolean)

Whether the account is eligible to join the loyalty points program.

primaryIneligibilityReason(String)

The primary reason for ineligibility, if any.

Example

{
  "isEligible": true,
  "primaryIneligibilityReason": "abc123"
}

Fields

NameDescription
agreements([Agreement])

canBeAnnulled(Boolean)

Whether the MaLo's supply point can currently be annulled.

canBeCancelled(Boolean)

Whether the MaLo's supply point can currently be cancelled.

canBeRevoked(Boolean)

Whether the MaLo's supply point can currently be revoked.

canBeSpeciallyCancelled(Boolean)

Whether the MaLo's supply point can currently be specially cancelled.

dno(MarketParticipantType)

The currently valid network operator (DNO) for this MaLo's supply point.

estimatedAnnualConsumptions([EstimatedAnnualConsumptionType])

The estimated annual consumptions for this MaLo's supply point.

firstDayOfSupply(Date)

The first day on which we supply this MaLo. Also known as the supply start date. This is the first day of the currently active supply period, a future supply period, or a past supply period. The date is returned in the local timezone. Null if no supply period is available.

id(ID)

lastDayOfSupply(Date)

The last day (inclusive) on which we supply this MaLo. Also known as the supply end date. This is the last day of the currently active supply period, a future supply period, or a past supply period. The date is returned in the local timezone. Null if there is no supply period or if the supply period is open-ended.

maloNumber(String)

The MaLo number.

meloNumber(String)

The MeLo number.

Deprecated

The 'meloNumber' field is deprecated.

Use meters instead, which exposes meloNumber per meter.

- Marked as deprecated on 2026-03-27.
- Scheduled for removal on or after 2027-03-27.

meter(Meter)

The currently active meter.

Deprecated

The 'meter' field is deprecated.

Use meters instead, which supports multiple MeLos per MaLo.

- Marked as deprecated on 2026-03-27.
- Scheduled for removal on or after 2027-03-27.

meters([Meter])

The currently active meters, one per MeLo attached to this MaLo.

mop(MarketParticipantType)

The currently valid meter operator (MOP) for this MaLo's supply point.

referenceConsumption(Int)

The reference consumption related to energy price brake.

status(String)

Deprecated

The 'status' field is deprecated.

This field hasn't contained sensible data in years and will be removed.

- Marked as deprecated on 2026-01-09.
- Scheduled for removal on or after 2026-02-09.

supplyLifecycleStatus(SupplyLifecycleStatus)

The status of the current supply lifecycle. If no current supply lifecycle is available, we will return last one.

The possible errors that can be raised are:

  • KT-DE-8812: Supply lifecycle not found.
  • KT-CT-1113: Disabled GraphQL field requested.

supplyPointId(ID)

ID of the supply point.

supplyStartDate(Date)

The supply start date, either of the currently active supply period, a future supply period, or a past supply period. The date is returned in the local timezone. Null if no supply period is available.

Deprecated

The 'supplyStartDate' field is deprecated.

Use firstDayOfSupply instead.

- Marked as deprecated on 2024-10-18.
- Scheduled for removal on or after 2025-01-01.

tso(MarketParticipantType)

The currently valid transmission system operator (TSO) for this MaLo's supply point.

Example

{
  "id": "abc123",
  "status": "abc123",
  "maloNumber": "abc123",
  "meloNumber": "abc123",
  "meter": Meter,
  "meters": [Meter],
  "agreements": [Agreement],
  "supplyStartDate": "2020-01-01",
  "firstDayOfSupply": "2020-01-01",
  "lastDayOfSupply": "2020-01-01",
  "supplyPointId": "abc123",
  "canBeAnnulled": true,
  "canBeRevoked": true,
  "canBeCancelled": true,
  "canBeSpeciallyCancelled": true,
  "referenceConsumption": 1,
  "supplyLifecycleStatus": "A00_STARTED",
  "estimatedAnnualConsumptions": [EstimatedAnnualConsumptionType],
  "dno": MarketParticipantType,
  "mop": MarketParticipantType,
  "tso": MarketParticipantType
}

MarkPrintBatchAsProcessed

Output type of the markPrintBatchAsProcessed mutation.

Fields

NameDescription
printBatch(PrintBatchType)

Example

{
  
}

MarketParticipantType

A market participant (e.g. network operator, meter operator, TSO).

Fields

NameDescription
code(String)

The BDEW/DVGW/ILN code of the market participant.

name(String)

The name of the market participant.

Example

{
  "code": "abc123",
  "name": "abc123"
}

Fields

NameDescription
acceptedAt(DateTime)

code(String)

The code of the created quote.

quotedSupplyPoints(MarketSupplyQuotedSupplyPointConnectionTypeConnection)

List of quoted supply points.

Arguments

after (String)

before (String)

first (Int)

last (Int)

requestedAt(DateTime)

termsAndConditions(TermsAndConditionsConnectionTypeConnection)

List of terms and conditions applicable to the quote.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "acceptedAt": "2020-01-01T00:00:00.000Z",
  "requestedAt": "2020-01-01T00:00:00.000Z",
  "code": "abc123",
  "quotedSupplyPoints": MarketSupplyQuotedSupplyPointConnectionTypeConnection,
  "termsAndConditions": TermsAndConditionsConnectionTypeConnection
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([MarketSupplyQuotedProductConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": MarketSupplyQuotedProductConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

MarketSupplyQuotedProductConnectionTypeEdge

A Relay edge containing a MarketSupplyQuotedProductConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(MarketSupplyQuotedProductType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

MarketSupplyQuotedProductType

A product quoted for a supply point.

Fields

NameDescription
clientParams(JSONString)

A JSON object containing client parameters on the quoted product.

id(ID!)

product(SupplyProductType)

The product associated with the quoted product.

wasSelected(Boolean!)

Example

{
  "id": "abc123",
  "wasSelected": true,
  "product": SupplyProductType,
  "clientParams": {"key": "value"}
}

MarketSupplyQuotedSupplyPointConnectionTypeConnection

Pagination for quoted supply points.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([MarketSupplyQuotedSupplyPointConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": MarketSupplyQuotedSupplyPointConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

MarketSupplyQuotedSupplyPointConnectionTypeEdge

A Relay edge containing a MarketSupplyQuotedSupplyPointConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(MarketSupplyQuotedSupplyPointType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

MarketSupplyQuotedSupplyPointType

A supply point quoted as part of a quote request.

Fields

NameDescription
clientParams(JSONString)

A JSON object containing client parameters on the quoted product.

id(ID)

The ID of the quoted supply point.

identifier(String)

The identifier of the quoted supply point, if one exists.

marketName(String)

The market this supply point belongs to.

quotedProducts(MarketSupplyQuotedProductConnectionTypeConnection)

Details of all products quoted for this supply point.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyPoint(SupplyPointType)

The supply point being quoted.

Example

{
  "marketName": "abc123",
  "id": "abc123",
  "identifier": "abc123",
  "quotedProducts": MarketSupplyQuotedProductConnectionTypeConnection,
  "supplyPoint": SupplyPointType,
  "clientParams": {"key": "value"}
}

MasqueradeAuthentication

Output type of the masqueradeAuthentication mutation.

Fields

NameDescription
errors([ErrorType])

A list of any errors that occurred while running this mutation.

token(String)

A Kraken Token that can be used to authenticate to the API, masquerading as the desired user.

Example

{
  "token": "abc123",
  "errors": [ErrorType]
}

Fields

NameDescription
amount(Int)

The maximum amount available to be requested as a refund.

reasonToRecommendAmount(MaximumRefundReasonChoices)

The reason why a specific amount is the maximum available to be requested as a refund.

recommendedBalance(Int)

The recommended minimum balance an account should have when asking for a refund.

Example

{
  "amount": 1,
  "reasonToRecommendAmount": "MAX_AVAILABLE_AMOUNT",
  "recommendedBalance": 1
}

MeasurementConnection

Pagination for measurements.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([MeasurementEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": MeasurementEdge,
  "totalCount": 1,
  "edgeCount": 1
}

MeasurementEdge

A Relay edge containing a Measurement and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(MeasurementInterface)

The item at the end of the edge

Example

{
  "node": MeasurementInterface,
  "cursor": "abc123"
}

Fields

NameDescription
metaData(MeasurementsMetadataOutput)

This type will return more granular data about the measurement.

readAt(DateTime!)

The datetime the measurement was taken.

source(String!)

The data source of the measurement.

unit(String!)

The unit of the measurement.

value(Decimal!)

The value of the measurement.

Example

{
  "source": "abc123",
  "metaData": MeasurementsMetadataOutput,
  "value": "1.0",
  "unit": "abc123",
  "readAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
extras([ExtrasOutput])

Extras relating to the parent measurement node.

statistics([StatisticOutput])

Statistics relating to the parent measurement node.

utilityFilters(UtilityFiltersOutput)

The source information relating to the parent measurement node.

Example

{
  "utilityFilters": ElectricityFiltersOutput,
  "statistics": [StatisticOutput],
  "extras": [ExtrasOutput]
}

Fields

NameDescription
account(AccountType)

The account associated with this transactional message.

accountUser(AccountUserType)

The account user associated with this transactional message.

channel(Channel!)

The channel that the message was sent through.

deliveredAt(DateTime)

The date/time that the message was confirmed as having been delivered. Only populated for messages delivered from 2026-08-20 onwards; a null value for earlier messages does not indicate that they were not delivered.

dispatchedAt(DateTime)

The date/time that Kraken dispatched the message to the vendor.

failedAt(DateTime)

The date/time that the message was confirmed as having failed to send.

id(String!)

The ID of the transactional message.

Example

{
  "channel": "EMAIL",
  "dispatchedAt": "2020-01-01T00:00:00.000Z",
  "failedAt": "2020-01-01T00:00:00.000Z",
  "deliveredAt": "2020-01-01T00:00:00.000Z",
  "id": "abc123",
  "account": AccountType,
  "accountUser": AccountUserType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([MessageEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": MessageEdge,
  "totalCount": 1,
  "edgeCount": 1
}

MessageEdge

A Relay edge containing a Message and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(Message)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
key(String!)

The key for the metadata.

value(JSONString)

The metadata value.

Example

{
  "key": "abc123",
  "value": {"key": "value"}
}

Fields

NameDescription
hasSmartMeterGateway(Boolean!)

Whether the meter has an associated smart meter gateway.

id(ID)

meloNumber(String)

The MeLo number of the measurement location this meter belongs to.

meterType(String)

number(String)

shouldReceiveSmartMeterData(Boolean)

Whether the meter should receive smart meter data.

submitMeterReadingUrl(String)

A tokenized url for submitting meter readings.

Example

{
  "id": "abc123",
  "number": "abc123",
  "meterType": "abc123",
  "submitMeterReadingUrl": "abc123",
  "shouldReceiveSmartMeterData": true,
  "meloNumber": "abc123",
  "hasSmartMeterGateway": true
}

Fields

NameDescription
deviceType(String)

The type of MFA device.

isConfirmed(Boolean)

Whether the MFA device is confirmed or not.

Example

{
  "deviceType": "abc123",
  "isConfirmed": true
}

MinimumContractLengthType

Represents the minimum term of a contract.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

length(Int)

The minimum length of the contract.

type(NonEmptyString)

The type of the term.

unitOfTime(String)

The unit of time for the contract length.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "length": 1,
  "unitOfTime": "abc123"
}

ModelYearRange

Range of model years supported for a device model.

If end year is null, all years after start year are supported.

Fields

NameDescription
endYear(Int)

Latest year model is supported. If null, all years after start year are supported.

startYear(Int!)

Earliest year model is supported.

Example

{
  "startYear": 1,
  "endYear": 1
}

Fields

NameDescription
amount(Decimal!)

        The unit being in the smallest denomination of the currency (e.g. pence for GBP).

currency(String!)

The ISO-4217 code for the currency.

Example

{
  "amount": "1.0",
  "currency": "abc123"
}

MoveToBucket

Output type of the moveToBucket mutation.

Fields

NameDescription
conversation(InkConversation!)

The conversation that was moved to the bucket.

Example

{
  "conversation": InkConversation
}

MunicipalityType

A municipality in Germany.

Fields

NameDescription
amtlicherGemeindeschluessel(String!)

Official municipality key (Amtlicher Gemeindeschlüssel). Also known as Gemeindekennzahl (GKZ).

federalState(String)

The federal state in which the municipality is located.

id(ID!)

The unique identifier of the municipality.

name(String!)

The name of the municipality.

Example

{
  "id": "abc123",
  "name": "abc123",
  "amtlicherGemeindeschluessel": "abc123",
  "federalState": "abc123"
}

NetworkOperatorType

A market participant acting as a network operator.

Fields

NameDescription
code(String!)

The BDEW (electricity) or DVGW (gas) code of the market participant.

energy(String!)

The energy type (electricity, gas, or both).

name(String!)

The name of the market participant.

role(String!)

The role of the market participant.

Example

{
  "code": "abc123",
  "name": "abc123",
  "role": "abc123",
  "energy": "abc123"
}

NextOperationsTeamRoundRobin

Output type of the nextOperationsTeamRoundRobin mutation.

Fields

NameDescription
allInferredRoutingAttributes([String]!)

All inferred routing attributes for team, location, and team groups (e.g., ['OPERATIONSGROUP.TEAM.TeamA', 'OPERATIONSGROUP.LOCATION.London', 'OPERATIONSGROUP.GROUP_B']). Recommended for IVR usage.

location(TeamLocation!)

Location routing information for the selected team.

team(Team!)

The next operations team assigned in round-robin sequence.

teamGroups([TeamGroup]!)

All operations team groups that the selected team belongs to.

Example

{
  "allInferredRoutingAttributes": "abc123"
}

NotifiableApplicationType

Represents an application that can receive push notifications.

Fields

NameDescription
bundleId(String!)

Bundle ID or package name of the app.

description(String!)

externalProjectId(String!)

Project ID used in push notification delivery service. (Currently: AWS Pinpoint)

externalProvider(NotifiableApplicationExternalProvider!)

The provider that delivers push notifications for the application.

id(ID!)

name(String!)

Human readable name for the app.

pushNotificationBindings([PushNotificationBindingType!]!)

service(NotifiableApplicationService!)

The push notification service the application uses.

Example

{
  "id": "abc123",
  "name": "abc123",
  "bundleId": "abc123",
  "service": "GCM",
  "externalProvider": "PINPOINT",
  "externalProjectId": "abc123",
  "description": "abc123",
  "pushNotificationBindings": PushNotificationBindingType
}

OCPPAuthentication

Output type of the ocppAuthentication mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

Fields

NameDescription
isConnected(Boolean)

Example

{
  "isConnected": true
}

Fields

NameDescription
url(String)

username(String)

Example

{
  "url": "abc123",
  "username": "abc123"
}

ObtainKrakenJSONWebToken

Output type of the obtainKrakenToken mutation.

Fields

NameDescription
payload(GenericScalar!)

The body payload of the Kraken Token. The same information can be obtained by using JWT decoding tools on the value of the token field.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

refreshExpiresIn(Int)

A Unix timestamp representing the point in time at which the refresh token will expire.

refreshToken(String)

A token that can be used in a subsequent call to obtainKrakenToken to get a new Kraken Token with the same access conditions after the previous one has expired.

token(String!)

The Kraken Token. Can be used in the Authorization header for subsequent calls to the API to access protected resources.

Example

{
  "token": "abc123",
  "payload": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "refreshToken": "abc123",
  "refreshExpiresIn": 1,
  "possibleErrors": [PossibleErrorType]
}

ObtainLongLivedRefreshToken

Output type of the obtainLongLivedRefreshToken mutation.

Fields

NameDescription
refreshExpiresIn(Int!)

refreshToken(String)

Example

{
  "refreshToken": "abc123",
  "refreshExpiresIn": 1
}

OccupancyPeriodType

An occupancy period for a property.

Fields

NameDescription
accountNumber(String)

Account number associated with this occupancy period.

effectiveFrom(DateTime)

Date the occupancy period is effective from.

effectiveTo(DateTime)

Date the occupancy period is effective to.

id(ID)

The unique ID of the occupancy period.

isOccupier(Boolean)

Whether the account associated with the occupancy period is an occupier account type.

numberOfOccupants(Int)

Number of occupants associated with this occupancy period.

Example

{
  "id": "abc123",
  "effectiveFrom": "2020-01-01T00:00:00.000Z",
  "effectiveTo": "2020-01-01T00:00:00.000Z",
  "isOccupier": true,
  "accountNumber": "abc123",
  "numberOfOccupants": 1
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OccupyPropertyProcessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OccupyPropertyProcessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OccupyPropertyProcessConnectionTypeEdge

A Relay edge containing a OccupyPropertyProcessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OccupyPropertyProcessType)

The item at the end of the edge

Example

{
  "node": OccupyPropertyProcessType,
  "cursor": "abc123"
}

OccupyPropertyProcessType

Represents a Occupy Property process.

Fields

NameDescription
id(ID)

The ID or the primary key of the lifecycle process.

occupyAt(DateTime!)

status(LifecycleSupplyPointProcessStatus)

The status of the process.

supplyPoints(SupplyPointConnectionTypeConnection!)

The supply points associated with the process.

Deprecated

The 'supplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyPointsInterface(SupplyPointInterfaceConnection!)

The supply points associated with the process. Node type is the CommonSupplyPointInterface; use inline fragments (e.g. ... on WaterSupplyPointType, ... on ElectricitySupplyPointType) to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "status": "PENDING",
  "occupyAt": "2020-01-01T00:00:00.000Z",
  "supplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection
}

Fields

NameDescription
createdAt(DateTime)

The date and time when Offer Group was created.

createdBy(ActorType)

The Actor who created the Offer Group.

identifier(ID)

Identifier of the Offer Group.

offers([OfferType])

One or more Offers contained in the Offer Group.

Example

{
  "identifier": "abc123",
  "offers": [OfferType],
  "createdAt": "2020-01-01T00:00:00.000Z",
  "createdBy": ActorType
}

Fields

NameDescription
acceptedAt(DateTime)

The date and time when Offer was accepted.

createdBy(ActorType)

The Actor who created the Offer.

description(String)

Description of the Offer.

identifier(ID)

Identifier of the Offer.

quote(QuoteType_)

The Quote this Offer is related to.

rejectedAt(DateTime)

The date and time when Offer was rejected.

validFrom(DateTime)

The date and time from which the Offer becomes valid.

validTo(DateTime)

The date and time until which the Offer remains valid.

Example

{
  "identifier": "abc123",
  "quote": QuoteType_,
  "description": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "acceptedAt": "2020-01-01T00:00:00.000Z",
  "rejectedAt": "2020-01-01T00:00:00.000Z",
  "createdBy": ActorType
}

OfferingComponentType

Represents a nested offering component within an offering.

Fields

NameDescription
component(OfferingType!)

The offering associated with this component.

identifier(ID!)

Unique identifier of the component.

initialQuantity(Int!)

Initial/default quantity for this component.

maximumQuantity(Int!)

Maximum quantity of this component that can be selected.

minimumQuantity(Int!)

Minimum quantity of this component that can be selected.

Example

{
  "identifier": "abc123",
  "minimumQuantity": 1,
  "maximumQuantity": 1,
  "initialQuantity": 1
}

OfferingType

Represents a product offering in the catalog.

Fields

NameDescription
customerDescription(String!)

Customer-facing description of the offering.

customerName(String!)

Customer-facing name of the offering.

groups([GroupType])

Groups of components with cardinality constraints.

identifier(ID!)

Unique identifier of the offering.

internalName(String!)

Internal name used to identify the offering.

isActive(Boolean!)

Whether this offering is currently active.

isAmendable(Boolean!)

Whether this offering can be amended (only DRAFT offerings).

isDraft(Boolean!)

Whether this offering is in draft status.

isExpired(Boolean!)

Whether this offering has expired.

isFirstDraft(Boolean!)

Whether this is the first draft version (version 1, not yet activated).

isLatestVersion(Boolean!)

Whether this is the latest version of the offering.

isSellable(Boolean!)

Whether this offering can be sold stand-alone.

lifecycle(LifecycleType!)

Lifecycle information for this offering.

offeringComponents([OfferingComponentType])

Nested offering components included in this offering.

productComponents([ProductComponentType])

Product components included in this offering.

tags([TagType])

Tags associated with this offering.

termTemplateComponents([TermTemplateComponentType])

Contract term template components included in this offering.

Example

{
  "identifier": "abc123",
  "internalName": "abc123",
  "customerName": "abc123",
  "customerDescription": "abc123",
  "isSellable": true,
  "isAmendable": true,
  "isExpired": true,
  "isActive": true,
  "isDraft": true,
  "isLatestVersion": true,
  "isFirstDraft": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OnSiteJobsAppointmentActionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OnSiteJobsAppointmentActionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OnSiteJobsAppointmentActionConnectionTypeEdge

A Relay edge containing a OnSiteJobsAppointmentActionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OnSiteJobsAppointmentActionType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

OnSiteJobsAppointmentActionType

An action linked to an On-Site Jobs Appointment.

Fields

NameDescription
actionTriggerStage(OnSiteJobsAppointmentActionTriggerStage)

The appointment stage at which this action is triggered.

workflowName(String)

The name of the workflow.

workflowStatus(OnSiteJobsWorkflowStatus)

The current status of the workflow.

Example

{
  "actionTriggerStage": "POST_APPOINTMENT_BOOKING",
  "workflowName": "abc123",
  "workflowStatus": "SKIPPED"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OnSiteJobsAppointmentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OnSiteJobsAppointmentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OnSiteJobsAppointmentConnectionTypeEdge

A Relay edge containing a OnSiteJobsAppointmentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OnSiteJobsAppointmentType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
isComplete(Boolean!)

Indicates whether all available appointment slots have been fetched. This is only relevant for booking adapters that support async timeslot fetching. For sync, it will always be True. If false, empty list of slots will be returned.

slots([OnSiteJobsAppointmentSlotType]!)

List of available appointment slots.

Example

{
  "isComplete": true
}

Fields

NameDescription
endDatetime(DateTime!)

The end datetime of the appointment slot.

slotId(UUID!)

The unique identifier for this appointment slot.

startDatetime(DateTime!)

The start datetime of the appointment slot.

Example

{
  "startDatetime": "2020-01-01T00:00:00.000Z",
  "endDatetime": "2020-01-01T00:00:00.000Z",
  "slotId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

Fields

NameDescription
agent(OnSiteJobsAgent)

The agent assigned to the appointment.

appointmentActions(OnSiteJobsAppointmentActionConnectionTypeConnection)

A list of actions triggered by this appointment, across stages.

Arguments

after (String)

before (String)

first (Int)

last (Int)

assets(OnSiteJobsAssetConnectionTypeConnection)

A list of assets attached to this request.

Arguments

after (String)

before (String)

first (Int)

last (Int)

cancellationCategory(OnSiteJobsCancellationCategory)

The cancellation category for this appointment.

cancellationSubCategory(String!)

cancelledAt(DateTime)

The datetime of the latest appointment cancellation event, if the appointment has been cancelled.

comments(String!)

commsStrategy(OnSiteJobsCommsStrategy)

The communication strategy for this appointment.

createdAt(DateTime!)

deadlineDate(Date)

endAt(DateTime)

externalJobType(String!)

Appointment job type.

Deprecated

The 'externalJobType' field is deprecated.

Please use externalJobTypeMapping instead.

- Marked as deprecated on 2026-03-17.
- Scheduled for removal on or after 2026-04-17.

externalJobTypeMapping(OnSiteJobsExternalJobTypeMappingType)

Mapping of appointment job type value to its human-friendly label.

externalReference(String!)

id(UUID!)

jobDetails(JSONString!)

jobNotes(JSONString!)

preferredStartDate(Date)

request(OnSiteJobsRequestType!)

startAt(DateTime)

status(OnSiteJobsAppointmentStatus)

The current status of the appointment.

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "externalReference": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "startAt": "2020-01-01T00:00:00.000Z",
  "endAt": "2020-01-01T00:00:00.000Z",
  "preferredStartDate": "2020-01-01",
  "deadlineDate": "2020-01-01",
  "jobDetails": {"key": "value"},
  "jobNotes": {"key": "value"},
  "comments": "abc123",
  "cancellationSubCategory": "abc123",
  "externalJobType": "abc123",
  "agent": "GENERIC_AGENT",
  "status": "PENDING_KRAKEN_TIMESLOT_SELECTION",
  "commsStrategy": "SEND_ALL",
  "cancellationCategory": "CANCELLED_BY_CUSTOMER",
  "cancelledAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OnSiteJobsAssetConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OnSiteJobsAssetConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OnSiteJobsAssetConnectionTypeEdge

A Relay edge containing a OnSiteJobsAssetConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OnSiteJobsAssetType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

OnSiteJobsAssetType

An On-Site Jobs Asset

Fields

NameDescription
additionalDetails(JSONString!)

externalIdentifier(String!)

fuelType(OnSiteJobsAssetFuelType)

The fuel type of the asset.

kind(OnSiteJobsAssetKind!)

The kind of the asset.

status(OnSiteJobsAssetStatus!)

The status of the asset.

supplyPointIdentifier(String)

The internal identifier of the supply point associated with the asset.

Deprecated

The 'supplyPointIdentifier' field is deprecated.

Use 'supplyPointInternalIdentifier' instead. This field is being removed as the underlying model field is being removed.

- Marked as deprecated on 2026-01-16.
- Scheduled for removal on or after 2026-03-01.

supplyPointInternalIdentifier(Int)

Example

{
  "externalIdentifier": "abc123",
  "additionalDetails": {"key": "value"},
  "supplyPointInternalIdentifier": 1,
  "supplyPointIdentifier": "abc123",
  "status": "EXISTING",
  "kind": "METER",
  "fuelType": "ELECTRICITY"
}

OnSiteJobsCheckResultsType

Check results for creating On-Site Jobs requests and appointments.

Fields

NameDescription
appointmentCheckResults([CheckResultType])

Results of appointment checks.

canCreateAppointment(Boolean)

Whether an appointment can be created (overall appointment check is PASS/WARNING).

canCreateRequest(Boolean)

Whether a request can be created (overall request check is PASS/WARNING).

hasAppointmentWarnings(Boolean)

Whether any of the appointment checks have warnings.

hasRequestWarnings(Boolean)

Whether any of the request checks have warnings.

requestCheckResults([CheckResultType])

Results of request checks.

Example

{
  "canCreateRequest": true,
  "hasRequestWarnings": true,
  "canCreateAppointment": true,
  "hasAppointmentWarnings": true
}

OnSiteJobsDraftAppointmentType

A draft appointment: the details of an appointment for which a timeslot has not been chosen yet, together with the customer's availability. Booking a timeslot creates an appointment with the same ID.

Fields

NameDescription
agent(OnSiteJobsAgent)

The agent the draft appointment will be booked with.

bookingAm(Boolean)

Whether the customer prefers a morning timeslot. Null if not recorded.

bookingComments(String!)

Free-text notes about the customer's timeslot preferences.

bookingFriday(Boolean)

Whether the customer prefers a Friday timeslot. Null if not recorded.

bookingMonday(Boolean)

Whether the customer prefers a Monday timeslot. Null if not recorded.

bookingPm(Boolean)

Whether the customer prefers an afternoon timeslot. Null if not recorded.

bookingThursday(Boolean)

Whether the customer prefers a Thursday timeslot. Null if not recorded.

bookingTuesday(Boolean)

Whether the customer prefers a Tuesday timeslot. Null if not recorded.

bookingWednesday(Boolean)

Whether the customer prefers a Wednesday timeslot. Null if not recorded.

comments(String!)

Comments about the job.

commsStrategy(OnSiteJobsCommsStrategy)

The communication strategy for this draft appointment.

createdAt(DateTime!)

When the draft appointment was created.

externalJobTypeMapping(OnSiteJobsExternalJobTypeMappingType!)

The job type the appointment will be booked with.

id(UUID!)

The Kraken ID of the draft appointment.

jobDetails(JSONString!)

Additional details about the job, as required by the agent.

request(OnSiteJobsRequestType!)

The request this draft appointment was created for.

updatedAt(DateTime!)

When the draft appointment was last updated.

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "agent": "GENERIC_AGENT",
  "commsStrategy": "SEND_ALL",
  "jobDetails": {"key": "value"},
  "comments": "abc123",
  "bookingComments": "abc123",
  "bookingAm": true,
  "bookingPm": true,
  "bookingMonday": true,
  "bookingTuesday": true,
  "bookingWednesday": true,
  "bookingThursday": true,
  "bookingFriday": true,
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

OnSiteJobsExternalJobTypeMappingType

Mapping of a job type value to its human-friendly label.

Fields

NameDescription
label(String)

The human-friendly name of the job type.

value(String)

The job type value set on the appointment.

Example

{
  "value": "abc123",
  "label": "abc123"
}

OnSiteJobsJobTypeType

Represents a job type available for on-site jobs requests.

Fields

NameDescription
id(String!)

The unique identifier for the job type.

name(String!)

The human-readable name of the job type.

Example

{
  "id": "abc123",
  "name": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OnSiteJobsRequestActionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OnSiteJobsRequestActionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OnSiteJobsRequestActionConnectionTypeEdge

A Relay edge containing a OnSiteJobsRequestActionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OnSiteJobsRequestActionType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

OnSiteJobsRequestActionType

An action linked to an On Site Jobs Request.

Fields

NameDescription
actionTriggerStage(OnSiteJobsRequestActionTriggerStage)

The request stage at which this action is triggered.

workflowName(String)

The name of the workflow.

workflowStatus(Status)

The current status of the workflow.

Example

{
  "actionTriggerStage": "POST_REQUEST_COMPLETION",
  "workflowName": "abc123",
  "workflowStatus": "SKIPPED"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OnSiteJobsRequestConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OnSiteJobsRequestConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OnSiteJobsRequestConnectionTypeEdge

A Relay edge containing a OnSiteJobsRequestConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OnSiteJobsRequestType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

OnSiteJobsRequestType

An On Site Jobs Request

Fields

NameDescription
account(String)

Request account.

agent(String!)

appointments(OnSiteJobsAppointmentConnectionTypeConnection)

A list of appointments associated to this request.

Arguments

after (String)

before (String)

first (Int)

last (Int)

assets(OnSiteJobsAssetConnectionTypeConnection)

A list of assets attached to this request.

Arguments

after (String)

before (String)

first (Int)

last (Int)

comment(String!)

createdBy(Int)

The ID of the support user who created the request.

externalReference(String!)

id(UUID!)

isEmergency(Boolean!)

marketSupplyPoints(SupplyPointConnectionTypeConnection)

List of supply points on request.

Deprecated

The 'marketSupplyPoints' field is deprecated.

Please use 'supplyPointsInterface' instead. It returns SupplyPointInterfaceConnection, whose node is CommonSupplyPointInterface, and supports inline fragments (e.g. `... on WaterSupplyPointType`, `... on ElectricitySupplyPointType`).

- Marked as deprecated on 2026-07-23.
- Scheduled for removal on or after 2027-01-23.

Arguments

after (String)

before (String)

first (Int)

last (Int)

overallActionsStatus(Status)

The overall priority status of all actions linked to the request and its appointments.

property(PropertyType)

Request property.

reason(String!)

requestActions(OnSiteJobsRequestActionConnectionTypeConnection)

A list of actions attached directly to this request.

Arguments

after (String)

before (String)

first (Int)

last (Int)

status(OnSiteJobsRequestStatus)

Request status.

subReason(String!)

supplyPointsInterface(SupplyPointInterfaceConnection)

List of supply points on request. Node type is the CommonSupplyPointInterface; use inline fragments to access concrete types.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "reason": "abc123",
  "subReason": "abc123",
  "isEmergency": true,
  "externalReference": "abc123",
  "agent": "abc123",
  "comment": "abc123",
  "account": "abc123",
  "marketSupplyPoints": SupplyPointConnectionTypeConnection,
  "supplyPointsInterface": SupplyPointInterfaceConnection,
  "property": PropertyType,
  "status": "APPOINTMENT_FAILED",
  "overallActionsStatus": "SKIPPED",
  "requestActions": OnSiteJobsRequestActionConnectionTypeConnection,
  "createdBy": 1
}

OnSiteJobsVendorComplaintType

A vendor complaint. It may be linked to an on-site jobs request, an appointment, both, or neither.

Fields

NameDescription
appointment(OnSiteJobsAppointmentType)

The on-site jobs appointment linked to this vendor complaint.

clientFormData(JSONString!)

Client-specific form data for the vendor complaint.

complaint(ComplaintType!)

The formal complaint linked to this vendor complaint.

The possible errors that can be raised are:

  • KT-CT-13086: Formal complaint does not exist.
  • KT-CT-1113: Disabled GraphQL field requested.

createdAt(DateTime!)

When the vendor complaint was created.

id(UUID!)

The Kraken ID of the vendor complaint.

request(OnSiteJobsRequestType)

The on-site jobs request linked to this vendor complaint.

status(OnSiteJobsVendorComplaintStatus!)

The status of the vendor complaint.

updatedAt(DateTime!)

When the vendor complaint was last updated.

Example

{
  "id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "status": "OPEN",
  "complaint": ComplaintType,
  "clientFormData": {"key": "value"},
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
code(String)

A machine-readable code identifying the error.

Example

{
  "code": "abc123"
}

Fields

NameDescription
id(ID)

ID for the Operations Team.

name(String)

Name for the Operations Team.

Example

{
  "id": "abc123",
  "name": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([OpportunitiesEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": OpportunitiesEdge,
  "totalCount": 1,
  "edgeCount": 1
}

OpportunitiesEdge

A Relay edge containing a Opportunities and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(OpportunityOutput)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
category(OpportunityAttachmentCategory)

Attachment category.

filename(String)

Attachment filename.

id(ID)

Attachment ID.

Example

{
  "id": "abc123",
  "category": "LEAD_FILE",
  "filename": "abc123"
}

Fields

NameDescription
expiresAt(DateTime)

The date and time the file attachment will expire.

presignedUrl(String)

Presigned URL for the file attachment.

Example

{
  "presignedUrl": "abc123",
  "expiresAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
assignedTeam(AssignedTeam)

Resolved assigned team details for this opportunity.

assignedToAffiliateNumber(String)

The affiliate's name this opportunity is assigned to.

assignedToTeam(String)

Team assigned to this opportunity.

Deprecated

The 'assignedToTeam' field is deprecated.

Please use 'assignedToTeamIdentifier' instead.

- Marked as deprecated on 2026-04-22.
- Scheduled for removal on or after 2026-06-22.

assignedToTeamIdentifier(String)

The identifier of the team assigned to this opportunity.

assignedToUser(String)

User assigned to this opportunity.

Deprecated

The 'assignedToUser' field is deprecated.

Please use 'assignedToUserIdentifier' instead.

- Marked as deprecated on 2026-04-22.
- Scheduled for removal on or after 2026-06-22.

assignedToUserIdentifier(String)

The identifier of the user assigned to this opportunity.

assignedUser(AssignedUser)

Resolved assigned user details for this opportunity.

attachments([OpportunityAttachment])

Attachments for the opportunity.

conversionSalesChannel(String)

Sales channel at conversion time.

creationSalesChannel(String)

Sales channel recorded when the opportunity was first created.

email(String)

Lead account holder email.

extraDetailItems([ExtraDetail])

Extra details about the opportunity as key/value pairs.

funnel(SalesFunnel)

The sales funnel this opportunity is in.

leadNumber(String)

Lead number.

leadType(String)

Lead type.

name(String)

Lead legal name.

notes(String)

Notes for the opportunity.

number(String)

Opportunity number.

offerGroupId(String)

Offer group ID.

opportunityAddress(AddressOutput)

Opportunity address.

opportunityId(ID)

Opportunity ID.

Deprecated

The 'opportunityId' field is deprecated.

Use `number` instead.

- Marked as deprecated on 2025-12-16.
- Scheduled for removal on or after 2026-02-16.

opportunityRichAddress(RichAddressType)

Opportunity rich address.

phoneNumber(String)

Lead account holder mobile number.

productOffering(OfferingType)

The product offering of the opportunity.

productOfferingId(String)

Product offering ID.

salesChannel(String)

Sales channel.

stage(String)

Current stage in a funnel.

supplyPoints([LeadSupplyPointType])

List of supply points associated with the opportunity.

Arguments

input (LeadSupplyPointFiltersInput)

Input fields for retrieving supply points by market.

Example

{
  "opportunityId": "abc123",
  "leadNumber": "abc123",
  "leadType": "abc123",
  "name": "abc123",
  "email": "abc123",
  "phoneNumber": "abc123",
  "number": "abc123",
  "stage": "abc123",
  "opportunityRichAddress": RichAddressType,
  "salesChannel": "abc123",
  "creationSalesChannel": "abc123",
  "conversionSalesChannel": "abc123",
  "assignedToTeam": "abc123",
  "assignedToUser": "abc123",
  "assignedToUserIdentifier": "abc123",
  "assignedToTeamIdentifier": "abc123",
  "productOfferingId": "abc123",
  "offerGroupId": "abc123",
  "notes": "abc123",
  "assignedToAffiliateNumber": "abc123"
}

Fields

NameDescription
market(String)

The market for the Product.

productCharacteristics(GenericScalar)

The characteristics of the product.

productCode(String)

The code of the Product.

productIdentifier(String)

The UUID for the Product.

productOfferingIdentifier(String)

The UUID for the Product Offering.

Example

{
  "productOfferingIdentifier": "abc123",
  "productIdentifier": "abc123",
  "productCode": "abc123",
  "productCharacteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "market": "abc123"
}

OrganisationReferenceType

A namespaced external reference attached to a partner organisation.

Fields

NameDescription
namespace(String!)

The code for the namespace this reference belongs to.

value(String!)

The reference value within the namespace.

Example

{
  "namespace": "abc123",
  "value": "abc123"
}

Fields

NameDescription
account(AccountType)

If known, this is the account that a call is about. For inbound calls, we attempt to identify the account based on the phone number of the incoming call. For outbound calls, the account will be automatically set if the call was initiated from an account page. For all call types, the account can be updated, for example to correct a misidentification of an incoming call.

id(ID!)

The ID of the call.

metadata([CallMetadataItemType]!)

Metadata related to the call, for example metrics or data passed via an interactive voice response (IVR).

tags([CallTagType]!)

Tags that have been applied to the call, for example during call wrap-up.

Example

{
  "id": "abc123",
  "account": AccountType
}

Fields

NameDescription
category(AppSessionOutcomeCategory)

reason(String)

type(AppSessionOutcomeType!)

Example

{
  "type": "SALE",
  "category": "SUCCESS",
  "reason": "abc123"
}

PageInfo

The Relay compliant PageInfo type, containing data necessary to paginate this connection.

Fields

NameDescription
endCursor(String)

When paginating forwards, the cursor to continue.

hasNextPage(Boolean!)

When paginating forwards, are there more items?

hasPreviousPage(Boolean!)

When paginating backwards, are there more items?

startCursor(String)

When paginating backwards, the cursor to continue.

Example

{
  "hasNextPage": true,
  "hasPreviousPage": true,
  "startCursor": "abc123",
  "endCursor": "abc123"
}

PartnerAccessType

Represents an accessible partner and the roles granting that access.

Fields

NameDescription
partner(AffiliateOrganisationType!)

The partner the accessor has access to.

roleAssignments([RoleAssignment]!)

The role assignments granting the accessor access to the partner.

Example

{
  "roleAssignments": RoleAssignment
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PartnerAccessorAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PartnerAccessorAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PartnerAccessorAccessConnectionTypeEdge

A Relay edge containing a PartnerAccessorAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PartnerAccessorAccessType)

The item at the end of the edge

Example

{
  "node": PartnerAccessorAccessType,
  "cursor": "abc123"
}

PartnerAccessorAccessType

Represents a partner and their access information to an entity.

Fields

NameDescription
accessor(AffiliateOrganisationType!)

The partner that has access to the entity.

roleAssignments([RoleAssignment!]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment
}

Fields

NameDescription
applyUplift(Boolean)

Whether to apply uplift to the partner commission.

overrideFixedAmount(Decimal)

Override for the fixed amount of the partner commission.

overrideTrailingPercentage(Decimal)

Override for the trailing commission percentage (1-100).

overrideUnitAmount(Decimal)

Override for the unit amount of the partner commission.

partnerCommissionNumber(String)

The unique number identifying the partner commission.

Example

{
  "partnerCommissionNumber": "abc123",
  "overrideTrailingPercentage": "1.0",
  "overrideUnitAmount": "1.0",
  "overrideFixedAmount": "1.0",
  "applyUplift": true
}

PartnerCommissionType

Represents a partner commission term on a contract.

Fields

NameDescription
configurations([PartnerCommissionContractConfigType])

The set of partner commission configurations for this term.

description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "configurations": [PartnerCommissionContractConfigType]
}

Fields

NameDescription
code(String!)

The unique code of the role.

description(String!)

The description of the role.

name(String!)

The unique displayable name of the role.

permissionCodes([String]!)

The permissions associated with the role.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "permissionCodes": "abc123"
}

PartnerTeamType

A partner team within an affiliate organisation.

Fields

NameDescription
name(String!)

The partner team's name.

number(String!)

The partner team's number.

parentTeamNumber(String)

The number of the parent team, if any.

teamMembers(PartnerTeamUserConnectionTypeConnection!)

Members directly assigned to this team (excluding subteam-only members).

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "number": "abc123",
  "name": "abc123",
  "parentTeamNumber": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PartnerTeamUserConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PartnerTeamUserConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PartnerTeamUserConnectionTypeEdge

A Relay edge containing a PartnerTeamUserConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PartnerUserType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PartnerUserAccessorAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PartnerUserAccessorAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PartnerUserAccessorAccessConnectionTypeEdge

A Relay edge containing a PartnerUserAccessorAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PartnerUserAccessorAccessType)

The item at the end of the edge

Example

{
  "node": PartnerUserAccessorAccessType,
  "cursor": "abc123"
}

PartnerUserAccessorAccessType

Represents a partner user and their access information to a partner.

Fields

NameDescription
accessor(PartnerUserType!)

The partner user that has access to the partner.

roleAssignments([RoleAssignment!]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment
}

PartnerUserPermission

Holds information about a specific permission.

Fields

NameDescription
permission(String!)

The short name of the permission.

Example

{
  "permission": "abc123"
}

Fields

NameDescription
code(String!)

The unique code of the role.

description(String!)

The description of the role.

name(String!)

The unique displayable name of the role.

permissionCodes([String]!)

The permissions associated with the role.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "permissionCodes": "abc123"
}

PartnerUserRoleType

A role available for assignment to a partner user.

Fields

NameDescription
code(String!)

The role code.

description(String!)

The role description.

name(String!)

The role name.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123"
}

PartnerUserType

A partner user of an affiliate organisation.

Fields

NameDescription
createdAt(DateTime!)

When the partner user was created.

email(String)

The partner user's email address.

familyName(String)

The partner user's family name.

givenName(String)

The partner user's given name.

id(ID!)

The partner user's ID.

lastLogin(DateTime)

The last time the partner user logged in.

name(String!)

The partner user's full name.

number(String!)

The partner user's number.

organisation(AffiliateOrganisationType)

The organisation the partner user belongs to.

permissions([PartnerUserPermission!]!)

The effective permissions of the partner user.

roles([PartnerUserRoleType!])

Role codes assigned to the partner user.

Example

{
  "id": "abc123",
  "number": "abc123",
  "givenName": "abc123",
  "familyName": "abc123",
  "name": "abc123",
  "email": "abc123",
  "lastLogin": "2020-01-01T00:00:00.000Z",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

PartnerViewerPermission

Holds information about a specific permission.

Fields

NameDescription
permission(String)

The short name of the permission.

Example

{
  "permission": "abc123"
}

PartnerViewerType

Type for the authenticated partner user viewer.

Fields

NameDescription
accessiblePartner(PartnerAccessType)

The partner the partner user can access, with the roles granting that access. Null when the partner user holds no active role on a partner.

email(String!)

The partner user's email address.

name(String!)

The partner user's full name.

number(String!)

The partner user's unique number (e.g. PU-XXXXXXXX).

permissions([PartnerViewerPermission])

Holds information about the permissions of the current viewer.

Example

{
  "name": "abc123",
  "email": "abc123",
  "number": "abc123",
  "permissions": [PartnerViewerPermission],
  "accessiblePartner": PartnerAccessType
}

PauseCollectionProcess

Output type of the pauseCollectionProcess mutation.

Fields

NameDescription
collectionProcessPaused(PauseCollectionProcessOutput)

Collection process pause output.

Example

{
  
}

Fields

NameDescription
pauseRecords([CollectionProcessPauseStatusRecord])

Pause records on the collection process.

Example

{
  
}

PauseDunning

Output type of the pauseDunning mutation.

Fields

NameDescription
pauseCreated(Boolean)

Whether the pause has been successfully created.

Example

{
  "pauseCreated": true
}

Payment

A payment from the customer to the supplier.

Fields

NameDescription
accountNumber(String)

Unique identifier of the account the transaction belongs to.

amount(Int)

Gross amount including tax (when payable). Refer to the amounts field for a breakdown of this information.

amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

balanceCarriedForward(Int)

The customer's resulting balance after this transaction has been applied, in the smallest unit of currency.

billingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

createdAt(DateTime)

The date time when the transaction is created.

hasStatement(Boolean)

Returns True if the transaction is linked with a statement.

id(ID)

Unique identifier for the transaction.

isAccountCharge(Boolean)

Deprecated.

Deprecated

The 'isAccountCharge' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isAccountPayment(Boolean)

Deprecated.

Deprecated

The 'isAccountPayment' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isCredit(Boolean)

Deprecated.

Deprecated

The 'isCredit' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isHeld(Boolean)

Whether the statement this transaction is on has been held. A held statement is not sent to a customer automatically, but is instead marked for manual attention by operations staff. Returns False if a statement is not linked with the transaction.

isIssued(Boolean)

Whether this transaction has been issued on any billing document.Note: Look for the most recently issued transaction instead of looking through all transactions as some accounts may have initial transactions that were not issued.This will return False if the transaction is not associated with any billing documents.

isLateFailedPayment(Boolean!)

Whether a payment has been reversed due to a late failure.Sometimes a payment is marked cleared, only for Kraken to be notified days/weeks later that the payment has failed.

isReversed(Boolean!)

note(String)

Returns the note field value for the transaction, which contains additional info.

paymentTransactionType(AccountPaymentTransactionTypeChoices)

The transaction type of the payment.

postedDate(Date)

Date when the transaction was posted to the account.

reasonCode(String)

Returns the reason.

statementId(ID)

Returns None if a statement is not linked with the transaction.

Deprecated

The 'statementId' field is deprecated.

Use `billingDocumentIdentifier` instead.

- Marked as deprecated on 2023-11-30.
- Scheduled for removal on or after 2024-06-01.

title(String)

Human-readable title describing the transaction.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123",
  "amount": 1,
  "amounts": TransactionAmountType,
  "balanceCarriedForward": 1,
  "isCredit": true,
  "isAccountCharge": true,
  "isAccountPayment": true,
  "isHeld": true,
  "isIssued": true,
  "title": "abc123",
  "billingDocumentIdentifier": "abc123",
  "statementId": "abc123",
  "isReversed": true,
  "hasStatement": true,
  "note": "abc123",
  "reasonCode": "abc123",
  "isLateFailedPayment": true,
  "paymentTransactionType": "DD_FIRST_COLLECTION"
}

PaymentAdequacyChangeType

An applied Payment Adequacy review that updated the recurring payment schedule.

Fields

NameDescription
appliedDate(DateTime)

When the Payment Adequacy review was applied.

newPaymentAmount(Int)

New payment amount in minor currency after Payment Adequacy was applied.

previousPaymentAmount(Int)

Previous payment amount in minor currency before Payment Adequacy was applied.

Example

{
  "appliedDate": "2020-01-01T00:00:00.000Z",
  "previousPaymentAmount": 1,
  "newPaymentAmount": 1
}

PaymentAdequacyDetailsType

Payment adequacy adjusts fixed payment schedules to maintain a healthy ledger balance over a year.

Fields

NameDescription
isCurrentlyExempt(Boolean)

This ledger will be exempt from default Payment Adequacy. This may mean that it is completely exempt, or handled with special rules.

latestAppliedPaymentAdequacyChange(PaymentAdequacyChangeType)

The most recent Payment Adequacy review that has been applied to this ledger, or null if no review has been applied.

Example

{
  "isCurrentlyExempt": true,
  "latestAppliedPaymentAdequacyChange": PaymentAdequacyChangeType
}

Fields

NameDescription
fingerprint(String)

Fingerprint.

isFound(Boolean)

Returns True if the fingerprint exists, False otherwise.

isRiskListed(Boolean)

Returns True if the fingerprint is risk-listed, False otherwise.

Example

{
  "fingerprint": "abc123",
  "isFound": true,
  "isRiskListed": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentForecastConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentForecastConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentForecastConnectionTypeEdge

A Relay edge containing a PaymentForecastConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentForecastType)

The item at the end of the edge

Example

{
  "node": PaymentForecastType,
  "cursor": "abc123"
}

Fields

NameDescription
amount(Int)

date(Date)

method(ScheduleType)

The payment method used for the forecasted payment.

paymentNumber(Int)

Example

{
  "paymentNumber": 1,
  "date": "2020-01-01",
  "amount": 1,
  "method": "BACS_TRANSFER"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentInstructionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentInstructionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentInstructionConnectionTypeEdge

A Relay edge containing a PaymentInstructionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentInstructionType)

The item at the end of the edge

Example

{
  "node": PaymentInstructionType,
  "cursor": "abc123"
}

Fields

NameDescription
accountUser(AccountUserType)

The account user who is an owner of this payment instruction.

business(BusinessType)

The business who is an owner of this payment instruction.

lead(LeadType)

The lead who is an owner of this payment instruction.

Example

{
  "accountUser": AccountUserType,
  "business": BusinessType,
  "lead": LeadType
}

PaymentInstructionType

Payment Instructions

Fields

NameDescription
accountHolder(String!)

accountType(String)

bankCode(String)

cardExpiryMonth(Int)

cardExpiryYear(Int)

cardNumber(String!)

cardPaymentNetwork(String)

cardType(String)

iban(String!)

id(ID!)

instructionType(String!)

maskedAccountIdentifier(String)

A masked reference to a recurring payment method.

owners([PaymentInstructionOwnerType])

The owners of the financial account this instruction represents.

sortCode(String!)

status(String!)

supplementaryLedger(SupplementaryLedgerType)

The supplementary ledger for this payment instruction.

validFrom(DateTime!)

vendor(String!)

Example

{
  "id": "abc123",
  "status": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "accountHolder": "abc123",
  "instructionType": "abc123",
  "cardPaymentNetwork": "abc123",
  "cardExpiryMonth": 1,
  "cardExpiryYear": 1,
  "sortCode": "abc123",
  "iban": "abc123",
  "bankCode": "abc123",
  "accountType": "abc123",
  "vendor": "abc123",
  "cardNumber": "abc123",
  "cardType": "abc123",
  "maskedAccountIdentifier": "abc123",
  "owners": [PaymentInstructionOwnerType],
  "supplementaryLedger": SupplementaryLedgerType
}

Fields

NameDescription
account(AccountType!)

details(JSONString)

id(ID!)

owners([PaymentInstructionOwnerType])

The owners of the financial account this instruction represents.

paymentMethodType(String!)

reference(String!)

status(String!)

supplementaryLedger(SupplementaryLedgerType)

The supplementary ledger for this payment instruction.

validFrom(DateTime!)

validTo(DateTime)

Example

{
  "id": "abc123",
  "reference": "abc123",
  "status": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z",
  "paymentMethodType": "abc123",
  "details": {"key": "value"},
  "account": AccountType,
  "owners": [PaymentInstructionOwnerType],
  "supplementaryLedger": SupplementaryLedgerType
}

Fields

NameDescription
notificationService(String)

Notification service used to send payment notification.

reference(String)

Payment notification reference.

Example

{
  "notificationService": "abc123",
  "reference": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentPlanConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentPlanConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentPlanConnectionTypeEdge

A Relay edge containing a PaymentPlanConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentPlanType)

The item at the end of the edge

Example

{
  "node": PaymentPlanType,
  "cursor": "abc123"
}

PaymentPlanPaymentType

An object that represents a planned payment for a payment plan.

Fields

NameDescription
amount(Int!)

payableDate(Date!)

paymentType(String)

Example

{
  "payableDate": "2020-01-01",
  "amount": 1,
  "paymentType": "abc123"
}

PaymentPlanType

An object that represents a payment plan.

Fields

NameDescription
acceptedAt(DateTime)

account(AccountType!)

id(ID!)

initialScheduleType(String!)

ledgerNumber(String)

The ledger number for this payment plan or None if one does not exist.

nextPayment(PaymentPlanPaymentType)

The next planned payment for this payment plan.

offerExpiresAt(DateTime)

offeredAt(DateTime)

payments([PaymentPlanPaymentType!]!)

status(String!)

strategyDisplayName(String)

The display name of the strategy used for this payment plan or None if one does not exist.

strategyName(String!)

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "initialScheduleType": "abc123",
  "strategyName": "abc123",
  "status": "abc123",
  "offeredAt": "2020-01-01T00:00:00.000Z",
  "offerExpiresAt": "2020-01-01T00:00:00.000Z",
  "acceptedAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "account": AccountType,
  "payments": PaymentPlanPaymentType,
  "nextPayment": PaymentPlanPaymentType,
  "strategyDisplayName": "abc123",
  "ledgerNumber": "abc123"
}

PaymentPreferenceConnectionTypeConnection

Pagination object for PaymentPreferenceUnion

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentPreferenceConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentPreferenceConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentPreferenceConnectionTypeEdge

A Relay edge containing a PaymentPreferenceConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentPreferenceUnion)

The item at the end of the edge

Example

{
  "node": PreferredInstruction,
  "cursor": "abc123"
}

PaymentRequestConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentRequestConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentRequestConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentRequestConnectionTypeEdge

A Relay edge containing a PaymentRequestConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentRequestType)

The item at the end of the edge

Example

{
  "node": PaymentRequestType,
  "cursor": "abc123"
}

Fields

NameDescription
customerAmount(Int)

The amount the customer is expected to pay in minor currency.

expectedPaymentDate(Date)

The date the payment is expected to be made.

fundingSourceAmounts(FundingSourceAmountConnectionTypeConnection)

The amount that was funded by each funding source.

Arguments

after (String)

before (String)

first (Int)

last (Int)

paymentStatus(String)

The status of the payment.

totalAmount(Int)

The total amount of the payment in minor currency.

Example

{
  "expectedPaymentDate": "2020-01-01",
  "paymentStatus": "abc123",
  "totalAmount": 1,
  "customerAmount": 1,
  "fundingSourceAmounts": FundingSourceAmountConnectionTypeConnection
}

Fields

NameDescription
paymentRequest(PaymentRequestConnectionTypeConnection)

A list of payment requests for a given ledger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example


PaymentScheduleChangeEventType

A recorded change to a payment schedule (creation, update or deletion), sourced from the financial events audit log.

Fields

NameDescription
category(PaymentScheduleChangeCategory)

The kind of change made to the schedule.

createdAt(DateTime)

When the change was recorded.

description(String)

A human-readable description of the change.

madeBySupportUser(Boolean)

Whether the change was made by a member of support staff. When false, the change was made by an automated/system process.

Example

{
  "createdAt": "2020-01-01T00:00:00.000Z",
  "category": "CREATED",
  "description": "abc123",
  "madeBySupportUser": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentScheduleConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentScheduleConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentScheduleConnectionTypeEdge

A Relay edge containing a PaymentScheduleConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentScheduleType)

The item at the end of the edge

Example

{
  "node": PaymentScheduleType,
  "cursor": "abc123"
}

PaymentScheduleDataType

Payment schedule details for a join supplier process.

This type represents the chosen payment schedule configuration. Only one of the schedule type fields will be populated, depending on which type of schedule was chosen.

Fields

NameDescription
balanceTriggered(BalanceTriggeredScheduleType)

Balance-triggered payment schedule details, if this schedule type was chosen.

billTriggered(BillTriggeredScheduleType)

Bill-triggered payment schedule details, if this schedule type was chosen.

billTriggeredBalanceTarget(BillTriggeredBalanceTargetScheduleType)

Bill-triggered with balance target schedule details, if this schedule type was chosen.

instalment(InstalmentScheduleType)

Instalment schedule details, if this schedule type was chosen.

regular(RegularScheduleType)

Regular payment schedule details, if this schedule type was chosen.

Example

{
  "regular": RegularScheduleType,
  "billTriggered": BillTriggeredScheduleType,
  "balanceTriggered": BalanceTriggeredScheduleType,
  "billTriggeredBalanceTarget": BillTriggeredBalanceTargetScheduleType,
  "instalment": InstalmentScheduleType
}

Fields

NameDescription
args(JSONString)

The arguments of the delay configuration.

code(String)

The code of the delay configuration.

Example

{
  "code": "abc123",
  "args": {"key": "value"}
}

Fields

NameDescription
description(String)

A human-readable description of the value.

direction(PaymentDayDirectionType)

Direction of payment day.

Example

{
  "direction": "OF_MONTH",
  "description": "abc123"
}

PaymentScheduleType

An object that represents when we have agreed to take payments from a payment instruction.

Fields

NameDescription
changeHistory([PaymentScheduleChangeEventType])

The recorded history of changes to this payment schedule (creation, updates and deletion), most recent first.

delayConfiguration(PaymentScheduleDelayConfigurationType)

The delay configuration for this payment schedule.

id(ID!)

isExemptFromPaymentAdequacy(Boolean)

If the payment schedule is exempt from payment adequacy.

isPaymentHoliday(Boolean)

isVariablePaymentAmount(Boolean!)

ledgerNumber(String)

The ledger number of the payment schedule.

paymentAdequacyAdjustment(Int)

paymentAdequacyAdjustmentExpiryDate(Date)

paymentAmount(Int!)

paymentDay(Int)

paymentDayDetails(PaymentSchedulePaymentDayDetailsType)

Details of the payment_day value.

paymentFrequency(PaymentFrequencyOptions)

The frequency of the payment schedule.

paymentFrequencyMultiplier(Int!)

paymentHolidayReason(String!)

reason(PaymentScheduleReasonOptions)

The reason the payment schedule was created.

scheduleType(ScheduleType)

The method of payment for the schedule.

supplementaryLedger(SupplementaryLedgerType)

The supplementary ledger for this payment schedule, if it is on one.

totalDebtAmount(Int)

The sum of the payment adequacy contributions on the payment schedule that are expected to be taken before the debt repayment is complete.

trigger(ScheduleTrigger)

The cause for requesting payment on a schedule.

validFrom(Date!)

validTo(Date)

Example

{
  "id": "abc123",
  "validFrom": "2020-01-01",
  "validTo": "2020-01-01",
  "reason": "GENERAL_ACCOUNT_PAYMENT",
  "paymentHolidayReason": "abc123",
  "paymentDay": 1,
  "paymentFrequency": "Weekly",
  "paymentFrequencyMultiplier": 1,
  "paymentAmount": 1,
  "paymentAdequacyAdjustment": 1,
  "paymentAdequacyAdjustmentExpiryDate": "2020-01-01",
  "isVariablePaymentAmount": true,
  "totalDebtAmount": 1,
  "supplementaryLedger": SupplementaryLedgerType,
  "isPaymentHoliday": true,
  "scheduleType": "BACS_TRANSFER",
  "paymentDayDetails": PaymentSchedulePaymentDayDetailsType,
  "delayConfiguration": PaymentScheduleDelayConfigurationType,
  "isExemptFromPaymentAdequacy": true,
  "ledgerNumber": "abc123",
  "trigger": "PLAN",
  "changeHistory": [PaymentScheduleChangeEventType]
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PaymentWithNonConcludedRePresentationConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PaymentWithNonConcludedRePresentationConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PaymentWithNonConcludedRePresentationConnectionTypeEdge

A Relay edge containing a PaymentWithNonConcludedRePresentationConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PaymentWithNonConcludedRePresentationType)

The item at the end of the edge

Example

{
  "node": PaymentWithNonConcludedRePresentationType,
  "cursor": "abc123"
}

Fields

NameDescription
amountPayable(Int)

The amount expected for this payment in minor currency units.

payableDate(Date)

The date this payment is scheduled to be debited.

Example

{
  "amountPayable": 1,
  "payableDate": "2020-01-01"
}

PayoutReferralForAccount

Output type of the payoutReferralForAccount mutation.

Fields

NameDescription
payoutResult(PayoutReferralForAccountResultType)

The result of the payout.

Example

{
  
}

PayoutReferralForAccountResultType

The result of the payout of a referral for an account.

Fields

NameDescription
accountCreditAmount(Int)

The amount of the account credit paid out to the referring account.

Example

{
  "accountCreditAmount": 1
}

PaysByDirectDebitType

Represents a restriction for if an account should pay only by direct debit in a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

paysByDirectDebit(Boolean!)

Whether the account is paying by direct debit or not.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "paysByDirectDebit": true
}

PerformBoostCharge

Output type of the triggerBoostCharge mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

PerformHouseMove

Output type of the performHouseMove mutation.

Fields

NameDescription
account(AccountType)

The account the house move was performed on.

Example

{
  "account": AccountType
}

PerformTestCharge

Output type of the triggerTestCharge mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

Fields

NameDescription
end(DateTime!)

The period end.

start(DateTime!)

The period start.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
attachments(BillingAttachmentConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

billType(BillTypeEnum)

The type of the bill.

closingBalance(Int!)

The closing balance of an issued billing document.

Arguments

ledgerNumber (String)

When provided, the closing balance for this ledger on this statement. Required if multiple ledgers are affected by this statement.

documentDebtPosition(BillingDocumentPositionType)

Position of the billing document in the delinquent debt tracking system.

fromDate(Date)

The date of the constituent bill covered from. This may differ from the service/consumption period shown on the bill document.

id(ID)

The ID of the constituent bill.

identifier(ID)

The unique identifier for the billing document. Note: a pending billing document will not have an identifier yet; and not all finalized billing documents will have an identifier assigned to them, in which case this will be null.

isAnnulled(Boolean!)

Whether the billing document has been annulled.

isHeld(Boolean!)

Whether the billing document is currently held.

issuedDate(Date)

The date the bill was sent to the customer.

openingBalance(Int)

This field returns the opening balance of a statement.

Arguments

ledgerNumber (String)

When provided, the opening balance for this ledger on this statement. Required if multiple ledgers are affected by this statement.

printedCopyRequests([Date])

List of dates when a printed copy of this bill was requested.

representations(BillRepresentationConnectionTypeConnection)

Arguments

after (String)

before (String)

code (String)

The code of a representation. Used to identify different types of representations.

first (Int)

last (Int)

reversalsAfterClose(StatementReversalsAfterClose!)

How many charges have been reversed after the close date.

temporaryUrl(String)

Requesting this field generates a temporary URL at which bill is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page). This field can raise an error with errorClass NOT_FOUND if the bill document has not been created/issued yet. This field is deprecated use 'attachments' field instead.

Deprecated

The 'temporaryUrl' field is deprecated.

This field is deprecated. Use the 'attachments' field instead.

- Marked as deprecated on 2024-09-16.
- Scheduled for removal on or after 2025-09-01.

toDate(Date)

The date of the constituent bill covered to. This may differ from the service/consumption period shown on the bill document.

totalCharges(StatementTotalType)

The total amounts for all charges on the billing document.

totalCredits(StatementTotalType)

The total amounts for all credits on the statement.

transactions(BillTransactionConnectionTypeConnection)

Transactions on the given billing document.

Arguments

after (String)

before (String)

first (Int)

last (Int)

ledgerNumber (String)

When provided, only entries that are linked to that ledger are returned.

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

transactionTypes ([TransactionTypeFilter])

Include only these specific transaction types in the result.

Example

{
  "id": "abc123",
  "billType": "STATEMENT",
  "fromDate": "2020-01-01",
  "toDate": "2020-01-01",
  "temporaryUrl": "abc123",
  "issuedDate": "2020-01-01",
  "attachments": BillingAttachmentConnectionTypeConnection,
  "reversalsAfterClose": "ALL",
  "identifier": "abc123",
  "totalCharges": StatementTotalType,
  "totalCredits": StatementTotalType,
  "isAnnulled": true,
  "isHeld": true,
  "transactions": BillTransactionConnectionTypeConnection,
  "openingBalance": 1,
  "closingBalance": 1,
  "documentDebtPosition": BillingDocumentPositionType,
  "representations": BillRepresentationConnectionTypeConnection,
  "printedCopyRequests": ["2020-01-01"]
}

Fields

NameDescription
accountAllMatches(AccountConnectionTypeConnection!)

All accounts that are linked to this phone number. A maximum of 26 results are returned. Results are ordered by most likely first.

Arguments

after (String)

before (String)

first (Int)

last (Int)

accountBestMatch(AccountType)

Our best guess for which account a call with this phone number would be about.

accountUserAllMatches(AccountUserConnectionTypeConnection!)

All account users that are linked to this phone number. A maximum of 26 results are returned. Results are ordered by most likely first.

Arguments

after (String)

before (String)

first (Int)

last (Int)

accountUserBestMatch(AccountUserType)

Our best guess for which account user would be calling from this phone number.

Example

{
  "accountBestMatch": AccountType,
  "accountAllMatches": AccountConnectionTypeConnection,
  "accountUserBestMatch": AccountUserType,
  "accountUserAllMatches": AccountUserConnectionTypeConnection
}

PickTimeslotForOnSiteJobsAppointment

Output type of the pickTimeslotForOnSiteJobsAppointment mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The appointment the timeslot was picked for.

Example

{
  
}

Fields

NameDescription
buttonAction(ActionType!)

The action to perform when the button is pressed.

buttonStyle(ButtonStyle)

The button style.

id(ID)

Unique identifier of the object.

title(String!)

Title text of the button.

typename(String)

The name of the object's type.

Example

{
  "buttonStyle": "PRIMARY",
  "title": "abc123",
  "buttonAction": DeeplinkActionType,
  "id": "abc123",
  "typename": "abc123"
}

Fields

NameDescription
isBlocked(Boolean)

Whether the viewer has been blocked due to spending all its allowed points.

limit(Int)

The maximum number of points the viewer gets for requests per hour.

remainingPoints(Int)

The remaining points for the viewer in one hour time limit.

ttl(Int)

Time To Live: UNIX timestamp when the viewer will get a new allowance of points.

usedPoints(Int)

The points used so far in one hour time limit.

Example

{
  "limit": 1,
  "remainingPoints": 1,
  "usedPoints": 1,
  "ttl": 1,
  "isBlocked": true
}

PointsSizeType

A measurement in points.

Fields

NameDescription
id(ID)

Unique identifier of the object.

points(Int!)

The points value.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "points": 1
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PortfolioAccessConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PortfolioAccessConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PortfolioAccessConnectionTypeEdge

A Relay edge containing a PortfolioAccessConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PortfolioAccessType)

The item at the end of the edge

Example

{
  "node": PortfolioAccessType,
  "cursor": "abc123"
}

PortfolioAccessType

Represents the accessible portfolio and access information of an accessor.

Fields

NameDescription
entity(PortfolioType!)

The portfolio that the accessor has access to.

roleAssignments([RoleAssignment]!)

The role assignments that the accessor has for the entity.

Example

{
  "roleAssignments": RoleAssignment,
  "entity": PortfolioType
}

PortfolioConnectionTypeConnection

Paginator of Operations Team

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PortfolioConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PortfolioConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PortfolioConnectionTypeEdge

A Relay edge containing a PortfolioConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PortfolioType)

The item at the end of the edge

Example

{
  "node": PortfolioType,
  "cursor": "abc123"
}

PortfolioType

An object that represents a portfolio.

Fields

NameDescription
accountUserAccessors(AccountUserAccessorAccessConnectionTypeConnection)

Account users that have access to this portfolio, with their access information.

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

roleCodes ([String!])

Filter accessors by role codes.

scope (AccessScope)

Whether to return only directly assigned accessors (DIRECT) or all accessors including inherited access (ALL, default).

accounts(AccountConnectionTypeConnection)

The accounts associated with this portfolio.

Arguments

after (String)

before (String)

first (Int)

last (Int)

ancestors(PortfolioConnectionTypeConnection)

The ancestors of the given portfolio.

Arguments

after (String)

before (String)

first (Int)

last (Int)

billingName(String)

brand(String)

The brand code associated with the portfolio.

collectiveBilling(Boolean!)

collectivePayments(Boolean!)

createdAt(DateTime!)

depth(Int)

The depth of the portfolio in the hierarchy.

descendants(PortfolioConnectionTypeConnection)

The descendants of the given portfolio.

Arguments

after (String)

before (String)

first (Int)

last (Int)

id(ID!)

leadAccountNumber(String)

The lead account for this portfolio.

name(String)

The name of the portfolio.

number(String!)

operationsTeam(OperationsTeamType)

Operations team for this portfolio.

parent(PortfolioType)

The parent portfolio of the given portfolio, if any.

updatedAt(DateTime!)

Example

{
  "id": "abc123",
  "number": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "updatedAt": "2020-01-01T00:00:00.000Z",
  "billingName": "abc123",
  "collectiveBilling": true,
  "collectivePayments": true,
  "leadAccountNumber": "abc123",
  "brand": "abc123",
  "name": "abc123",
  "depth": 1,
  "parent": PortfolioType,
  "ancestors": PortfolioConnectionTypeConnection,
  "descendants": PortfolioConnectionTypeConnection,
  "accounts": AccountConnectionTypeConnection,
  "accountUserAccessors": AccountUserAccessorAccessConnectionTypeConnection
}

PortfolioUserRoleType

The role a user has in association with one portfolio.

Fields

NameDescription
id(ID!)

The ID of the portfolio user role.

Deprecated

The 'id' field is deprecated.

An access allocation's identifier is internal to the Customer Access domain. Access is identified by who it affects, not by the row that records it: please use 'user', 'portfolio' and 'role' instead.

- Marked as deprecated on 2026-09-02.
- Scheduled for removal on or after 2026-11-01.

portfolio(PortfolioType!)

Portfolio object.

role(RoleString)

The portfolio role.

user(AccountUserType!)

Example

{
  "id": "abc123",
  "user": AccountUserType,
  "role": RoleString,
  "portfolio": PortfolioType
}

PossibleErrorType

The GraphQL error type for displaying information about GraphQL errors that might be raised from the API.

Fields

NameDescription
code(String)

The error code that might be returned from the query/mutation.

description(String)

The error description that might be returned from the query/mutation.

message(String)

The error message that might be returned from the query/mutation.

type(String)

The error type that might be returned from the query/mutation.

Example

{
  "message": "abc123",
  "code": "abc123",
  "type": "abc123",
  "description": "abc123"
}

PossibleErrorsOutputType

Information and possible errors of the requested query/mutation.

Fields

NameDescription
authErrors(Boolean)

Whether the possible authentication errors are included.

name(String)

Name of the query/mutation whose possible errors are returned.

possibleErrors([PossibleErrorType])

List of the errors the query/mutation is susceptible of raising.

type(query_type)

Type of the query (query or mutation).

Example

{
  "name": "abc123",
  "type": "query",
  "authErrors": true,
  "possibleErrors": [PossibleErrorType]
}

PostCredit

Output type of the postCredit mutation.

Fields

NameDescription
credit(Credit)

Posted account credit.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "credit": Credit,
  "possibleErrors": [PossibleErrorType]
}

Fields

NameDescription
attachments(BillingAttachmentConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

billType(BillTypeEnum)

The type of the bill.

fromDate(Date)

The date of the bill is covered from. This may differ from the service/consumption period shown on the bill document.

grossAmount(BigInt)

The gross amount of the historical bill.

id(ID)

The ID of the bill.

identifier(String)

The unique identifier of a historical bill. It will usually be present on the billing document itself.

issuedDate(Date)

The date the bill was sent to the customer.

params(JSONString)

The params associated with the historical bill.

reversalsAfterClose(StatementReversalsAfterClose!)

How many charges have been reversed after the close date.

temporaryUrl(String)

Requesting this field generates a temporary URL at which bill is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page). This field can raise an error with errorClass NOT_FOUND if the bill document has not been created/issued yet. This field is deprecated use 'attachments' field instead.

Deprecated

The 'temporaryUrl' field is deprecated.

This field is deprecated. Use the 'attachments' field instead.

- Marked as deprecated on 2024-09-16.
- Scheduled for removal on or after 2025-09-01.

toDate(Date)

The date of the bill is covered to. This may differ from the service/consumption period shown on the bill document.

Example

{
  "id": "abc123",
  "billType": "STATEMENT",
  "fromDate": "2020-01-01",
  "toDate": "2020-01-01",
  "temporaryUrl": "abc123",
  "issuedDate": "2020-01-01",
  "attachments": BillingAttachmentConnectionTypeConnection,
  "reversalsAfterClose": "ALL",
  "identifier": "abc123",
  "params": {"key": "value"},
  "grossAmount": 1
}

PreSignedToken

A pre-signed, expiring and opaque tokens that can be swapped for a limited scope JWT (Kraken Token).

Fields

NameDescription
isValid(Boolean)

key(String!)

scope(ExpiringTokenScope!)

The scope that the token will grant to the account user.

Example

{
  "scope": "SUBMIT_METER_READINGS",
  "key": "abc123",
  "isValid": true
}

PreferredInstruction

Represents the preference of the user to be charged using a specific payment instruction.

Fields

NameDescription
forPaymentsAfter(String)

The start time of the payment preference.

paymentMethod(PaymentInstructionType)

The payment instruction preferred by the user.

status(String)

The status of the payment preference.

Example

{
  "forPaymentsAfter": "abc123",
  "status": "abc123",
  "paymentMethod": PaymentInstructionType
}

Fields

NameDescription
accountNumber(String)

The account number of the newly created account or the existing account to be re-used.

isNewAccount(Boolean)

Was a new account created.

isNewUser(Boolean)

Was a new user created.

userId(ID)

The ID of the newly created or existing account user.

userNumber(String)

The user number of the newly created or existing account user.

Example

{
  "isNewAccount": true,
  "accountNumber": "abc123",
  "isNewUser": true,
  "userId": "abc123",
  "userNumber": "abc123"
}

PriceAdjustment

A fixed or externally sourced adjustment to a targeted rate or cost.

Fields

NameDescription
adjustmentMethod(PriceAdjustmentAdjustmentMethod)

The method used to calculate the price adjustment.

adjustmentType(PriceAdjustmentType)

Whether the adjustment reduces or increases the targeted value.

code(String)

The price adjustment code.

label(String)

The human-readable label for the price adjustment.

rateSource(PriceAdjustmentRateSource)

The source used to determine this price adjustment's value.

Example

{
  "code": "abc123",
  "label": "abc123",
  "adjustmentMethod": "PERCENTAGE",
  "adjustmentType": "DISCOUNT"
}

PriceAdjustmentAvailabilityPeriod

The period during which a price adjustment bundle is available.

Fields

NameDescription
end(DateTime)

The date and time until which the bundle is available, if any.

start(DateTime)

The date and time from which the bundle is available.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

PriceAdjustmentBundle

A collection of price adjustments available in a sales context.

Fields

NameDescription
availabilityPeriod(PriceAdjustmentAvailabilityPeriod)

The period during which the bundle is available.

code(String)

The price adjustment bundle code.

name(String)

The human-readable name of the price adjustment bundle.

priceAdjustments([PriceAdjustment])

The price adjustments in the bundle, ordered by code.

Example

{
  "code": "abc123",
  "name": "abc123"
}

PriceAdjustmentRateSource

The source used to determine a price adjustment's value.

Fields

NameDescription
externalRateSource(String)

The external rate source reference. External sources are not yet exposed.

fixedRate(Decimal)

The fixed price adjustment value, if configured.

Example

{
  "fixedRate": "1.0",
  "externalRateSource": "abc123"
}

PriceForStream

Rate group prices for a product.

Fields

NameDescription
characteristicMapping(JSONString!)

The characteristic mapping for the price.

Deprecated

The 'characteristicMapping' field is deprecated.

Please use 'characteristics' instead.

- Marked as deprecated on 2026-07-17.
- Scheduled for removal on or after 2026-07-31.

characteristics(GenericScalar!)

The characteristic values for the variant.

price(Decimal!)

The price per unit.

schemeLabels(JSONString)

The scheme labels for the price.

Deprecated

The 'schemeLabels' field is deprecated.

Please use 'schemes' instead.

- Marked as deprecated on 2026-07-17.
- Scheduled for removal on or after 2026-07-31.

schemes(GenericScalar)

The scheme labels for the variant.

Example

{
  "characteristicMapping": {"key": "value"},
  "characteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "schemeLabels": {"key": "value"},
  "schemes": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "price": "1.0"
}

Fields

NameDescription
amount(Decimal!)

        Monetary value of a single unit of the measurement.
        This is the smallest unit of currency e.g. cents for USD or yen for JPY.

unit(Unit)

Unit that monetary amount relates to eg. 27 cents per kwh.

Example

{
  "amount": "1.0",
  "unit": "KILOWATT_HOURS"
}

PrintAttachmentType

Represents a print attachment

Fields

NameDescription
filename(String!)

id(ID!)

s3Bucket(String!)

s3Key(String!)

temporaryUrl(String)

Temporary URL at which the attachment is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page).

Example

{
  "id": "abc123",
  "filename": "abc123",
  "s3Bucket": "abc123",
  "s3Key": "abc123",
  "temporaryUrl": "abc123"
}

PrintBatchType

Represents print batch details

Fields

NameDescription
id(ID!)

messages(PrintMessageTypeConnection)

Messages in a print batch.

Arguments

after (String)

before (String)

first (Int)

isHighPriority (Boolean)

Whether to filter to include or exclude high priority messages. If not supplied, no filtering will be performed.

last (Int)

offset (Int)

status(PrintBatchStatus)

The status of the print batch.

Example

{
  "id": "abc123",
  "status": "OPEN",
  "messages": PrintMessageTypeConnection
}

Fields

NameDescription
eventType(String!)

id(ID!)

The ID of the object

message(PrintMessageType)

Print message of the print event.

occurredAt(DateTime!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "message": PrintMessageType
}

PrintMessageType

Represents a print communication.

Fields

NameDescription
account(AccountType)

attachments([PrintAttachmentType])

Attachments of the message.

highPriority(Boolean)

Comms that are marked as high priority.

id(ID!)

The ID of the object

templateCode(String!)

Example

{
  "id": "abc123",
  "templateCode": "abc123",
  "attachments": [PrintAttachmentType],
  "account": AccountType,
  "highPriority": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PrintMessageTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PrintMessageTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PrintMessageTypeEdge

A Relay edge containing a PrintMessageType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PrintMessageType)

The item at the end of the edge

Example

{
  "node": PrintMessageType,
  "cursor": "abc123"
}

Fields

NameDescription
availabilityStatus(ProductAvailabilityStatus!)

availableFrom(DateTime!)

availableTo(DateTime)

code(String!)

contractBindingStart(ContractBindingStart)

When the contractual binding starts, relative to the supply start date.

description(String!)

This will be shown to customers during sign-up

displayName(String!)

This name will be shown to customers during sign-up

endsAt(DateTime)

This is when end-dated products expire

fullName(String!)

hasMinimumTerm(Boolean)

Whether the product has a minimum term (contract binding).

isHidden(Boolean!)

Use this field to temporarily make a product unavailable

isTimeOfUse(Boolean!)

Whether the product is a time of use product.

marketName(String!)

minimumTerm(Int)

The minimum term (contract binding) in months. 0 means no minimum term.

noticePeriod(Int)

The notice period in days.

params(JSONString!)

priceGuaranteeInMonths(Int)

The price guarantee in months. 0 means no price guarantee.

priceGuaranteeType(PriceGuaranteeType)

The type of price guarantee for the product.

term(Int)

Duration of agreements using this product in months

termsContractType(String!)

Example

{
  "marketName": "abc123",
  "code": "abc123",
  "fullName": "abc123",
  "displayName": "abc123",
  "description": "abc123",
  "availableFrom": "2020-01-01T00:00:00.000Z",
  "availableTo": "2020-01-01T00:00:00.000Z",
  "isHidden": true,
  "term": 1,
  "endsAt": "2020-01-01T00:00:00.000Z",
  "availabilityStatus": "PUBLIC",
  "termsContractType": "abc123",
  "params": {"key": "value"},
  "hasMinimumTerm": true,
  "minimumTerm": 1,
  "noticePeriod": 1,
  "priceGuaranteeInMonths": 1,
  "priceGuaranteeType": "NONE",
  "isTimeOfUse": true,
  "contractBindingStart": "WITH_CONTRACT_CONFIRMATION"
}

ProductComponentType

Represents a product component within an offering.

Fields

NameDescription
component(CatalogProductType!)

The product associated with this component.

identifier(ID!)

Unique identifier of the component.

initialQuantity(Int!)

Initial/default quantity for this component.

maximumQuantity(Int!)

Maximum quantity of this component that can be selected.

minimumQuantity(Int!)

Minimum quantity of this component that can be selected.

Example

{
  "identifier": "abc123",
  "minimumQuantity": 1,
  "maximumQuantity": 1,
  "initialQuantity": 1
}

ProductPrice

A price created for a rate group, with the validity period as persisted.

Fields

NameDescription
periodEnd(DateTime)

The end of validity for this price.

periodStart(DateTime!)

The start of validity for this price.

price(Decimal!)

The price per unit.

rateGroup(String!)

The rate group code.

variant(ProductPriceVariant!)

The variant that this price applies to.

Example

{
  "rateGroup": "abc123",
  "periodStart": "2020-01-01T00:00:00.000Z",
  "periodEnd": "2020-01-01T00:00:00.000Z",
  "price": "1.0"
}

ProductPriceVariant

The characteristics and schemes that define a variant of a rate group.

Fields

NameDescription
characteristics(GenericScalar!)

The characteristic values for the variant.

schemes(GenericScalar)

The scheme labels for the variant.

Example

{
  "characteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "schemes": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType
}

ProductRateOverrideConfigurationType

Configuration for Product Rate Override Configuration term.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

indexationOptions(IndexationOptionsType)

The indexation options for the product rate override configuration.

isVariable(Boolean)

Whether the term is variable.

schedules([ProductRateOverrideScheduleType])

The schedules for the product rate override configuration.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "indexationOptions": IndexationOptionsType,
  "schedules": [ProductRateOverrideScheduleType]
}

ProductRateOverrideItemType

Item for Product Rate Override Configuration term.

Fields

NameDescription
pricePerUnit(Decimal)

The price per unit for the product rate override item.

productCode(String)

The product code for the product rate override item.

rateBand(String)

The rate band for the product rate override item.

Example

{
  "productCode": "abc123",
  "rateBand": "abc123",
  "pricePerUnit": "1.0"
}

ProductRateOverrideScheduleType

Schedule for Product Rate Override Configuration term.

Fields

NameDescription
effectiveFrom(DateTime)

The effective from date for the product rate override schedule.

items([ProductRateOverrideItemType])

The items for the product rate override schedule.

Example

{
  "items": [ProductRateOverrideItemType],
  "effectiveFrom": "2020-01-01T00:00:00.000Z"
}

ProductSwitch

Output type of the productSwitch mutation.

Fields

NameDescription
productSwitched(Boolean)

Whether the product switch was successful.

Example

{
  "productSwitched": true
}

PromotionAssignmentScheduleType

Represents a schedule for promotion assignment within a contract.

Fields

NameDescription
discountTargets(JSONString)

A mapping from discount codes to lists of targets. Each target is represented as {'target_type': {'domain': ..., 'type': ...}, 'identifier': ...}.

promotionCode(String)

The promotion code for this schedule.

Example

{
  "promotionCode": "abc123",
  "discountTargets": {"key": "value"}
}

PromotionAssignmentTermType

Represents a promotion assignment term in a contract.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

schedules([PromotionAssignmentScheduleType])

A list of promotion assignment schedules associated with the contract.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "schedules": [PromotionAssignmentScheduleType]
}

PropertyConnection

Paginated list of properties.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([PropertyEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": PropertyEdge,
  "totalCount": 1,
  "edgeCount": 1
}

PropertyEdge

A Relay edge containing a Property and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(PropertyInterface)

The item at the end of the edge

Example

{
  "node": PropertyInterface,
  "cursor": "abc123"
}

Fields

NameDescription
administrativeArea(String)

Top-level administrative subdivision, e.g. US state, AU state/territory, NZ, region, IT region, JP prefecture.

AU: Australia

This must be one of NSW, VIC, QLD, TAS, ACT, SA, NT, WA. For addresses not within these locations, use the value that Australia Post uses, e.g. ACT for the Jervis Bay Territory or WA for Christmas Island.

asString(String)

The entire formatted address represented as a single string, as it would be written on an envelope.

The formatting of this field may vary according to the country of the address (which may not match this Kraken installation's home country). It may also change if we update our address-formatting code or if our understanding of the correct formatting for a given country changes. Avoid parsing individual components of an address out of this field's value; use the other fields on this type instead.

Arguments

showCountry (Boolean)

Whether to include the country. The country will be spelled out in all-caps on the last line, as per Universal Postal Union standards.

showName (Boolean)

Whether to include the name attached to this address.

showPostalCode (Boolean)

Whether to include the postal code attached to this address.

country(String)

ISO 3166-1 alpha-2 code of the country this address belongs to, e.g. AU, GB, NZ.

deliveryPointIdentifier(String)

Identifier used by the local postal service for this address, e.g. AU DPID, GB postcode + Delivery Point Suffix, US Zip-9 + Delivery Point.

This is the value that gets encoded in the barcode printed on the envelope by large-volume bulk mail providers.

dependentLocality(String)

UK dependent localities, or neighbourhoods or boroughs in some other locations.

geographicalId(String)

Identifier for this address in its territory's official address register, e.g. DAR ID in DK, UPRN in GB, G-NAF ID in AU.

locality(String)

City or town portion of an address, e.g. US city, AU suburb/town, NZ suburb and city/town, IT comune, UK post town.

name(String)

A personal name.

organization(String)

The name of a business or organisation.

postalCode(String)

Postal code (ZIP code in the US).

sortingCode(String)

Sorting code, e.g. FR CEDEX code. This field is not used in many countries.

streetAddress(String)

The 'street address' component.

This value can (and often will) contain newline characters when appropriate.

In some cases, data may appear in this field instead of the below fields; e.g. a UK post town name may appear here instead of in the dependent_locality field. This happens when data has been migrated from a legacy format, and that format had insufficient metadata to determine the appropriate field.

If structured_street_address is also set, the value of this field will be a string generated from that value.

structuredStreetAddress(GenericScalar)

The 'street address' component, in a structured format.

This field stores the same value as street_address, but with more detail; for instance, instead of 123 Example Street it might be {'street_number': '123', 'street_name': 'Example', 'street_type': 'Street'}. In many cases this will be blank; we only use this field for Krakens where we need to supply this level of granularity to some third-party service, like a bulk mail provider.

The exact structure of this value depends on the country of the address, which is not necessarily the same as the country this Kraken is configured to serve. For addresses outside of the countries listed below, this field will be left blank.

AU: Australia

The following keys may be present; all are optional. All keys have string values, and their meaning is the same as their aseXML counterparts. (Note that, unlike aseXML, all keys are provided at the top level, rather than being nested.)

  • flat_or_unit_type
  • flat_or_unit_number
  • floor_or_level_type
  • floor_or_level_number
  • building_or_property_name
  • location_descriptor
  • lot_number
  • house_number_1
  • house_number_suffix_1
  • house_number_2
  • house_number_suffix_2
  • street_name
  • street_type
  • street_suffix
  • postal_delivery_type
  • postal_delivery_number_prefix
  • postal_delivery_number_value
  • postal_delivery_number_suffix

JP: Japan

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • chome
  • banchi
  • go
  • edaban
  • kana_building_name
  • kanji_building_name
  • building_number
  • room_number
  • address_code
  • physical_location_identifier
  • kana_company_name
  • kanji_company_name

NZ: New Zealand

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • flat_or_unit_type
  • flat_or_unit_number
  • floor_or_level_type
  • floor_or_level_number
  • property_name
  • building_name
  • house_number_1
  • house_number_suffix_1
  • house_number_2
  • house_number_suffix_2
  • street_prefix
  • street_name
  • street_type
  • street_suffix
  • rural_delivery_number
  • mailtown
  • postal_delivery_type
  • postal_delivery_location
  • postal_delivery_number_prefix
  • postal_delivery_number_value
  • postal_delivery_number_suffix

US: United States

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • primary_number
  • primary_name_prefix_dir
  • primary_name
  • primary_name_suffix
  • primary_name_suffix_dir
  • secondary_name
  • secondary_number

subAdministrativeArea(String)

Second-level administrative subdivision, e.g. US county.

Only populated for addresses in countries where this concept is relevant. For all other countries this field will be blank.

Example

{
  "name": "abc123",
  "organization": "abc123",
  "streetAddress": "abc123",
  "structuredStreetAddress": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "dependentLocality": "abc123",
  "locality": "abc123",
  "administrativeArea": "abc123",
  "subAdministrativeArea": "abc123",
  "postalCode": "abc123",
  "sortingCode": "abc123",
  "country": "abc123",
  "deliveryPointIdentifier": "abc123",
  "geographicalId": "abc123",
  "asString": "abc123"
}

Fields

NameDescription
property(PropertyType!)

The matched property.

score(Decimal!)

A score representing the degree of confidence for a match.

Example

{
  "score": "1.0",
  "property": PropertyType
}

Fields

NameDescription
address(String)

The address of the property, formatted into a single string.

ancestors(PropertyConnection)

Ancestor properties in the specified hierarchy, ordered from root to immediate parent. Returns empty list if the property is not in the hierarchy.

Arguments

after (String)

before (String)

first (Int)

hierarchyName (String)

The name of the hierarchy to query within.

last (Int)

coordinates(CoordinatesType)

Coordinates for the property, useful for displaying the property on a map.

descendants(PropertyConnection)

Descendant properties in the specified hierarchy. Returns empty list if the property is not in the hierarchy.

Arguments

after (String)

before (String)

depth (Int)

Maximum depth of descendants to return. Defaults to 1 (immediate children). Set to null for all descendants.

first (Int)

hierarchyName (String)

The name of the hierarchy to query within.

last (Int)

electricityMalos([MaLo])

All the electricity supply points at this property.

embeddedNetwork(EmbeddedNetworkType)

The embedded network this property belongs to, if any.

gasMalos([MaLo])

All the gas supply points at this property.

id(String)

label(String)

An optional label for the property.

measurements(MeasurementConnection)

Measurements at a property

Arguments

after (String)

before (String)

endAt (DateTime)

Defaults to the far future which will return the most recent readings.

endOn (Date)

Latest date to return measurements for (inclusive).

first (Int)

last (Int)

startAt (DateTime)

Defaults to the far past which will return the oldest readings.

startOn (Date)

Earliest date to return measurements from.

timezone (String)

Timezone to use for grouping. Defaults to Kraken localtime.

utilityFilters ([UtilityFiltersInput])

Filters for each utility being measured.

occupancyPeriods([OccupancyPeriodType])

Time periods during which the property is associated with an account. Useful to display information about house-moves, as performing a move out of a property will set the end date for the occupancy period.

parent(PropertyInterface)

The parent property in the specified hierarchy. Returns null if the property has no parent or is not in the hierarchy.

Arguments

hierarchyName (String)

The name of the hierarchy to query within.

postcode(String)

The postcode of the property.

richAddress(PropertyRichAddressType)

Property rich address.

splitAddress([String])

List of address lines.

Example

{
  "id": "abc123",
  "address": "abc123",
  "richAddress": PropertyRichAddressType,
  "splitAddress": ["abc123"],
  "label": "abc123",
  "occupancyPeriods": [OccupancyPeriodType],
  "coordinates": CoordinatesType,
  "embeddedNetwork": EmbeddedNetworkType,
  "parent": PropertyInterface,
  "descendants": PropertyConnection,
  "ancestors": PropertyConnection,
  "measurements": MeasurementConnection,
  "postcode": "abc123",
  "electricityMalos": [MaLo],
  "gasMalos": [MaLo]
}

ProviderVirtualKeyDetailsType

Details of a public key that can be added to devices for end-to-end authentication or encryption.

E.g. for Tesla the user visits a URL and the name can be used to show what the key is called. https://github.com/teslamotors/vehicle-command#distributing-your-public-key

Fields

NameDescription
virtualKeyName(String!)

Friendly human-readable name for the virtual key.

virtualKeyUri(String!)

URI for the virtual key.

Example

{
  "virtualKeyName": "abc123",
  "virtualKeyUri": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ProvisionalTransactionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ProvisionalTransactionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

ProvisionalTransactionConnectionTypeEdge

A Relay edge containing a ProvisionalTransactionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ProvisionalTransactionType)

The item at the end of the edge

Example

{
  "node": ProvisionalTransactionType,
  "cursor": "abc123"
}

ProvisionalTransactionType

A provisional transaction represents some debit or credit to or from a customer's account which we cannot yet finalise for some reason, but which is still useful to keep a note of, and display to the customer. Provisional transactions are purely to give guidance in the absence of finalised information. We therefore only return provisional transactions that have not been finalised. When a transaction is finalised, it is available through the transactions field.

Fields

NameDescription
amount(Int)

The amount in pence for this provisional transaction. It will be negative for charges, positive for credits.

date(Date)

The date at which the charge should be applied to the account.

id(ID!)

title(String)

A user readable string that indicates what this transaction relates to.

Example

{
  "id": "abc123",
  "title": "abc123",
  "amount": 1,
  "date": "2020-01-01"
}

Fields

NameDescription
cost(Money)

The cost for the charge added during a charging session.

end(DateTime!)

The end time of a charging session.

energyAdded(Energy)

The energy added during a charging session.

location(String!)

Location of the charging session.

operatorImageUrl(String)

URL of the operator image.

start(DateTime!)

The start time of a charging session.

stateOfChargeChange(Decimal)

The change in state of charge during a charging session. The value will be between 0 and 100, if not null.

stateOfChargeFinal(Decimal)

The final state of charge after a charging session. The value will be between 0 and 100, if not null.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z",
  "stateOfChargeChange": "1.0",
  "stateOfChargeFinal": "1.0",
  "energyAdded": Energy,
  "cost": Money,
  "location": "abc123",
  "operatorImageUrl": "abc123"
}

PublishTransactionalMessagingExternalTrigger

Output type of the publishTransactionalMessagingExternalTrigger mutation.

Fields

NameDescription
trigger(Trigger)

The trigger that has been published.

Example

{
  
}

PublishTransactionalMessagingTrigger

Output type of the publishTransactionalMessagingTrigger mutation.

Fields

NameDescription
possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

trigger(Trigger)

The trigger that has been published.

Example

{
  "possibleErrors": [PossibleErrorType]
}

PurchaseVoucher

Output type of the purchaseVoucher mutation.

Fields

NameDescription
voucherPurchase(VoucherPurchaseType)

The voucher purchase created from the mutation.

Example

{
  "voucherPurchase": VoucherPurchaseType
}

PurchaseVouchers

Output type of the purchaseVouchers mutation.

Fields

NameDescription
voucherPurchases([VoucherPurchaseType])

The voucher purchases created from the mutation.

Example

{
  "voucherPurchases": [VoucherPurchaseType]
}

PushNotificationBindingType

Represents a pairing of a single app installation to an account user.

Fields

NameDescription
application(NotifiableApplicationType!)

expiresAt(DateTime!)

id(ID!)

messages(PrintMessageTypeConnection!)

Arguments

after (String)

before (String)

first (Int)

last (Int)

offset (Int)

registeredAt(DateTime!)

token(String!)

user(AccountUserType!)

Example

{
  "id": "abc123",
  "registeredAt": "2020-01-01T00:00:00.000Z",
  "expiresAt": "2020-01-01T00:00:00.000Z",
  "user": AccountUserType,
  "messages": PrintMessageTypeConnection,
  "application": NotifiableApplicationType,
  "token": "abc123"
}

Fields

NameDescription
eventType(String!)

id(ID!)

The ID of the object

message(PushNotificationMessageType)

Push notification message of the push notification event.

occurredAt(DateTime!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "message": PushNotificationMessageType
}

PushNotificationMessageType

Represents a push notification communication.

Fields

NameDescription
createdAt(DateTime!)

The date and time the push notification was created.

id(ID!)

The ID of the push notification.

sentAt(DateTime)

The date and time the push notification was sent.

supportSiteUrl(String)

URL to view the push notification in the support site.

templateCode(String!)

The trigger type code of the push notification.

textBody(String)

The body text of the push notification.

title(String!)

The title of the push notification.

Example

{
  "id": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "sentAt": "2020-01-01T00:00:00.000Z",
  "templateCode": "abc123",
  "title": "abc123",
  "textBody": "abc123",
  "supportSiteUrl": "abc123"
}

QuantityAuxiliaryResultType

An auxiliary result representing a single numeric value.

Fields

NameDescription
agreement(CommonAgreementType)

The agreement the auxiliary result was costed against.

name(String!)

The name of the auxiliary result.

period(AuxiliaryResultPeriodType!)

The period the auxiliary result covers.

unit(AuxiliaryResultUnit)

The unit the value is expressed in. Null if the unit is not a recognised one.

value(Decimal!)

The value of the auxiliary result.

Example

{
  "name": "abc123",
  "period": AuxiliaryResultPeriodType,
  "agreement": CommonAgreementType,
  "value": "1.0",
  "unit": "KILOWATT_HOURS"
}

QuantityType

Graphene type object to represent Quantity(magnitude, unit)

Fields

NameDescription
description(String)

Human-readable description.

magnitude(Float!)

The numeric value of this field.

unit(String!)

Unit of this field.

Example

{
  "magnitude": 1.0,
  "unit": "abc123",
  "description": "abc123"
}

Fields

NameDescription
complexityValue(Int)

The complexity of the query.

Example

{
  "complexityValue": 1
}

Fields

NameDescription
identifier(String)

Unique identifier for the term.

isVariable(Boolean)

Whether this term uses variable rates.

schedules([QuoteBespokeRateScheduleType!])

Rate schedules for this bespoke rate configuration.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "identifier": "abc123",
  "isVariable": true
}

Fields

NameDescription
identifier(String)

Unique identifier for this rate item.

pricePerUnit(Decimal)

Price per unit for this rate item.

rateSpecificationCode(String)

Code identifying the rate specification.

variantProfile(QuoteConfigurationVariantProfileType)

The variant profile for this rate item.

Example

{
  "identifier": "abc123",
  "rateSpecificationCode": "abc123",
  "pricePerUnit": "1.0"
}

Fields

NameDescription
identifier(String)

Unique identifier for this schedule.

items([QuoteBespokeRateItemType!])

Rate items in this schedule.

validFrom(DateTime)

Start of validity for this schedule.

validTo(DateTime)

End of validity for this schedule.

Example

{
  "identifier": "abc123",
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
identifier(String)

Unique identifier for the term.

isVariable(Boolean)

Whether this term uses variable rates.

numberOfDays(Int)

Number of days to pay the bill before debt becomes delinquent.

type(NonEmptyString)

The type of the term.

typeOfDays(String)

Whether days are WORKING or CALENDAR days.

Example

{
  "type": NonEmptyString,
  "identifier": "abc123",
  "isVariable": true,
  "numberOfDays": 1,
  "typeOfDays": "abc123"
}

Fields

NameDescription
costs([QuoteCostType])

The cost for quoting this product.

createdAt(DateTime)

The date and time when the quote component was created.

identifier(ID)

Identifier of the Quote.

productComponentIdentifier(ID)

Identifier of the Product Component.

quotingParamsInputData([QuotingParamType])

The input data used for quoting this product component.

termsAndConditionsS3Urls([TermsAndConditionsS3UrlType])

S3 URLs for terms and conditions linked to this quote component.

Arguments

expireIn (Int)

Expiration time for S3 URLs in seconds. Defaults to 1 hour (3600 seconds).

Example

{
  "identifier": "abc123",
  "productComponentIdentifier": "abc123",
  "costs": [QuoteCostType],
  "quotingParamsInputData": [QuotingParamType],
  "createdAt": "2020-01-01T00:00:00.000Z",
  "termsAndConditionsS3Urls": [TermsAndConditionsS3UrlType]
}

Fields

NameDescription
fieldCode(String)

Field code for this extra detail.

fieldType(String)

Type of the value (STRING, INTEGER, FLOAT, DATETIME).

fieldValue(String)

Value for this extra detail.

Example

{
  "fieldCode": "abc123",
  "fieldValue": "abc123",
  "fieldType": "abc123"
}

Fields

NameDescription
contractEnd(DateTime)

End of the contract period.

contractStart(DateTime)

Start of the contract period.

createdBy(String)

Username of the Support Site user who created this quote configuration.

expiresAt(DateTime)

When this quote configuration expires.

extraDetailsItems([QuoteConfigurationExtraDetailItemType!])

Extra detail items for this quote configuration.

extraQuotingParams(ExtraQuotingParamsType)

Extra quoting parameters including forecast consumption entries.

number(String)

Unique number identifying this quote configuration.

opportunityNumber(String)

Number of the opportunity this quote configuration belongs to.

status(QuoteConfigurationStatus)

Current status of the quote configuration.

terms([QuoteTermInterface!])

Terms included in this quote configuration.

Example

{
  "number": "abc123",
  "createdBy": "abc123",
  "contractStart": "2020-01-01T00:00:00.000Z",
  "contractEnd": "2020-01-01T00:00:00.000Z",
  "expiresAt": "2020-01-01T00:00:00.000Z",
  "opportunityNumber": "abc123",
  "status": "DRAFT",
  "terms": QuoteTermInterface
}

Fields

NameDescription
characteristicValues(JSONString)

Characteristic values for this variant profile.

schemeLabels(JSONString)

Scheme labels for this variant profile.

Example

{
  "characteristicValues": {"key": "value"},
  "schemeLabels": {"key": "value"}
}

Fields

NameDescription
identifier(String)

Unique identifier for the term.

isVariable(Boolean)

Whether this term uses variable rates.

periods([QuoteContractedVolumePeriodType!])

Contracted volume periods.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "identifier": "abc123",
  "isVariable": true
}

Fields

NameDescription
characteristics(GenericScalar)

The market-supply-characteristic scope, as a code-to-value map.

marketName(String)

Market name for this contracted volume period.

maximum(Decimal)

Optional upper bound around the value (e.g. a tolerance cap).

measurementPeriod(String)

The measurement cadence of the quantity (WHOLE_PERIOD, DAILY or HOURLY).

minimum(Decimal)

Optional lower bound around the value (e.g. a take-or-pay floor).

unit(String)

Unit of measurement for the volume.

validFrom(DateTime)

Start of validity for this period.

validTo(DateTime)

End of validity for this period.

value(Decimal)

Volume value for this period.

Example

{
  "value": "1.0",
  "unit": "abc123",
  "marketName": "abc123",
  "measurementPeriod": "abc123",
  "minimum": "1.0",
  "maximum": "1.0",
  "characteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
key(String!)

Name of the cost field.

value(QuoteCostUnionType)

Value of the cost field.

Example

{
  "key": "abc123",
  "value": DecimalType
}

Fields

NameDescription
city(String)

electricityNetworkOperatorId(String)

electricityNetworkOperatorName(String)

electricityNetworkOperatorNumber(String)

gasNetworkOperatorId(String)

gasNetworkOperatorName(String)

gasNetworkOperatorNumber(String)

houseNumber(String)

postcode(String)

street(String)

supplierId(String)

tariffId(String)

Example

{
  "postcode": "abc123",
  "city": "abc123",
  "street": "abc123",
  "houseNumber": "abc123",
  "gasNetworkOperatorNumber": "abc123",
  "gasNetworkOperatorId": "abc123",
  "gasNetworkOperatorName": "abc123",
  "electricityNetworkOperatorNumber": "abc123",
  "electricityNetworkOperatorId": "abc123",
  "electricityNetworkOperatorName": "abc123",
  "supplierId": "abc123",
  "tariffId": "abc123"
}

Fields

NameDescription
identifier(String)

Unique identifier for the term.

isVariable(Boolean)

Whether this term uses variable rates.

schedules([QuoteRateGroupEligibilityScheduleType!])

Rate group eligibility schedules.

timeSeriesSpecificationSchedules([QuoteTimeSeriesSpecificationEligibilityScheduleType!])

Time series specification eligibility schedules.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "identifier": "abc123",
  "isVariable": true
}

Fields

NameDescription
end(DateTime)

End of the effective period (None if open-ended).

start(DateTime)

Start of the effective period.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
effectivePeriod(QuoteRateGroupEligibilityPeriodType)

The period during which this eligibility is effective.

isEligible(Boolean)

Whether this rate group is eligible.

productCode(String)

The product code associated with the rate group.

rateGroupCode(String)

The rate group code.

supplyPointIdentifier(String)

Optional supply point identifier.

Example

{
  "productCode": "abc123",
  "rateGroupCode": "abc123",
  "isEligible": true,
  "supplyPointIdentifier": "abc123"
}

Fields

NameDescription
effectivePeriod(QuoteRateGroupEligibilityPeriodType)

The period during which this eligibility is effective.

isEligible(Boolean)

Whether this time series specification is eligible.

productCode(String)

The product code associated with the time series specification.

supplyPointIdentifier(String)

Optional supply point identifier.

timeSeriesSpecificationCode(String)

The time series specification code.

Example

{
  "productCode": "abc123",
  "timeSeriesSpecificationCode": "abc123",
  "isEligible": true,
  "supplyPointIdentifier": "abc123"
}

Fields

NameDescription
createdAt(DateTime)

The date and time when the quote was created.

createdBy(ActorType)

The Actor who created the Quote.

identifier(ID)

Identifier of the Quote.

productOfferingIdentifier(ID)

The product offering identifier this Quote is related to.

quoteComponents([QuoteComponentType])

Quote components of this quote.

Example

{
  "identifier": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "productOfferingIdentifier": "abc123",
  "quoteComponents": [QuoteComponentType],
  "createdBy": ActorType
}

Fields

NameDescription
offeringComponents([QuotedOfferingParamsType])

Quoting components of this quote.

offeringIdentifier(ID)

Product offering identifier.

productComponents([QuotedProductComponentType])

Product component data including its quoting parameters.

Example

{
  "offeringIdentifier": "abc123",
  "productComponents": [QuotedProductComponentType],
  "offeringComponents": [QuotedOfferingParamsType]
}

Fields

NameDescription
clientParams(QuotedProductClientParams)

The client parameters used to generate the quoted product.

Deprecated

The 'clientParams' field is deprecated.

Use the fields on the `QuotedProduct` type instead.

- Marked as deprecated on 2025-02-11.
- Scheduled for removal on or after 2025-05-11.

id(Int!)

The quoted product ID.

isValidForRetentionProductSwitch(Boolean)

Whether the quoted product is still valid for the (retention) product switch.

monthlyStandingCharge(Decimal!)

Monthly standing charge in €.

netMonthlyStandingCharge(Decimal!)

Net monthly standing charge in €.

product(Product!)

The product associated with the quoted product.

retentionNumberOfValidDays(Int)

Number of days the retention offer for the quoted product is valid for.

retentionOfferGenerationDate(Date)

The date the retention offer was generated and sent to the customer.

totalEstimatedAnnualBill(Decimal)

Total estimated annual bill in €.

unitRateInformation(UnitRateInformation!)

The unit rate information.

wasSelected(Boolean!)

Whether the quoted product was selected by the user.

Example

{
  "id": 1,
  "product": Product,
  "wasSelected": true,
  "clientParams": QuotedProductClientParams,
  "totalEstimatedAnnualBill": "1.0",
  "monthlyStandingCharge": "1.0",
  "netMonthlyStandingCharge": "1.0",
  "unitRateInformation": SimpleProductUnitRateInformation,
  "retentionNumberOfValidDays": 1,
  "retentionOfferGenerationDate": "2020-01-01",
  "isValidForRetentionProductSwitch": true
}

Fields

NameDescription
annualConsumption(Int)

Annual consumption in kWh.

monthlyStandingCharge(Decimal)

Monthly standing charge in €.

netMonthlyStandingCharge(Decimal)

Net monthly standing charge in €.

netUnitRatePerKwh(Decimal)

Net unit rate per kWh in €.

totalEstimatedAnnualBill(Decimal)

Total estimated annual bill in €.

unitRatePerKwh(Decimal)

Unit rate per kWh in €.

Example

{
  "annualConsumption": 1,
  "monthlyStandingCharge": "1.0",
  "netMonthlyStandingCharge": "1.0",
  "unitRatePerKwh": "1.0",
  "netUnitRatePerKwh": "1.0",
  "totalEstimatedAnnualBill": "1.0"
}

Fields

NameDescription
productCode(ID)

Product code.

quotingParams([QuotingParamType])

Quoting parameter definitions for this product.

Example

{
  "productCode": "abc123",
  "quotingParams": [QuotingParamType]
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([QuotedProductEdge!]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": QuotedProductEdge,
  "totalCount": 1,
  "edgeCount": 1
}

QuotedProductEdge

A Relay edge containing a QuotedProduct and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(QuotedProduct!)

The item at the end of the edge

Example

{
  "node": QuotedProduct,
  "cursor": "abc123"
}

QuotedSupplyPointType

Information about a quoted supply point.

Fields

NameDescription
annualConsumption(Int!)

Annual consumption in kWh.

annualNighttimeConsumption(Int)

Annual nighttime consumption in kWh.

networkCharges(NetworkChargesInterface!)

The network charges that will have to be paid for this product. For electricity supply points this will always be ElectricityNetworkCharges, for gas supply points it will always be GasNetworkCharges.

networkOperatorNumber(String!)

The BDEW-assigned ID of the network operator.

quotedProducts(QuotedProductConnection!)

The products that have been quoted for this supply point.

You must specify at least one the first and last arguments.

Arguments

after (String)

before (String)

first (Int)

last (Int)

supplyType(SupplyType!)

The supply type of this supply point.

Example

{
  "supplyType": "ELECTRICITY",
  "annualConsumption": 1,
  "annualNighttimeConsumption": 1,
  "networkOperatorNumber": "abc123",
  "networkCharges": NetworkChargesInterface,
  "quotedProducts": QuotedProductConnection
}

Fields

NameDescription
choices([String])

Choices of the quoting parameter if present.

label(String)

Human-readable label when provided (e.g. product catalog characteristic name).

name(String)

Stable key for the quoting parameter (e.g. characteristic code).

source(String)

Source of the quoting parameter.

type(String)

Type of the quoting parameter.

value(String)

Value of the quoting parameter.

Example

{
  "name": "abc123",
  "label": "abc123",
  "type": "abc123",
  "choices": ["abc123"],
  "source": "abc123",
  "value": "abc123"
}

RangeAuxiliaryResultType

An auxiliary result representing a numeric range.

Fields

NameDescription
agreement(CommonAgreementType)

The agreement the auxiliary result was costed against.

end(Decimal)

The end of the range. Null indicates the range is open-ended.

name(String!)

The name of the auxiliary result.

period(AuxiliaryResultPeriodType!)

The period the auxiliary result covers.

start(Decimal!)

The start of the range.

unit(AuxiliaryResultUnit)

The unit the range bounds are expressed in. Null if the unit is not a recognised one.

Example

{
  "name": "abc123",
  "period": AuxiliaryResultPeriodType,
  "agreement": CommonAgreementType,
  "start": "1.0",
  "end": "1.0",
  "unit": "KILOWATT_HOURS"
}

RateGroupEligibilityConfigurationType

Represents a rate group eligibility term of in a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

schedules([RateGroupEligibilityScheduleType])

A list of rate group eligibility schedules associated with the contract.

timeSeriesSpecificationSchedules([TimeSeriesSpecificationEligibilityScheduleType])

A list of time series specification eligibility schedules associated with the contract.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "schedules": [RateGroupEligibilityScheduleType],
  "timeSeriesSpecificationSchedules": [TimeSeriesSpecificationEligibilityScheduleType]
}

RateGroupEligibilityPeriodType

Represents a period with a start and optional end date.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
end(DateTime)

The end date and time of the period.

start(DateTime)

The start date and time of the period.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

RateGroupEligibilityScheduleType

Represents a schedule for rate group eligibility within a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
effectivePeriod(RateGroupEligibilityPeriodType)

The period during which this eligibility is effective.

isEligible(Boolean)

Indicates if the rate group is eligible.

productCode(String)

The product code associated with the rate group.

rateGroupCode(String)

The rate group code.

supplyPointIdentifier(String)

The external identifier of the supply point this schedule targets. When null, the schedule targets all agreements for the product.

Example

{
  "productCode": "abc123",
  "rateGroupCode": "abc123",
  "supplyPointIdentifier": "abc123",
  "isEligible": true,
  "effectivePeriod": RateGroupEligibilityPeriodType
}

RateGroupPrices

Rate group prices for a product.

Fields

NameDescription
prices([PriceForStream!]!)

The prices for the rate group.

rateGroup(String!)

The rate group code.

Example

{
  "rateGroup": "abc123"
}

ReactivateCollectionProcessRecord

Output type of the reactivateCollectionProcessRecord mutation.

Fields

NameDescription
collectionProcessReactivated(ReactivateCollectionProcessRecordOutputType)

The reactivated collection process record.

Example

{
  
}

ReactivateCollectionProcessRecordOutputType

Output for reactivating a Collection process Record.

Fields

NameDescription
number(String)

The number of the collection process record.

status(CollectionProcessRecordStatusTypes)

The current status of the collection process record.

Example

{
  "number": "abc123",
  "status": "PENDING"
}

Fields

NameDescription
intervalEnd(DateTime)

The exclusive end of this reading's interval.

intervalStart(DateTime)

The inclusive start of this reading's interval.

qualities([ReadingQualityMeta])

A breakdown of this reading's value and raw reading count by quality group.

units(String)

This reading's units.

value(Decimal)

The recorded value for this reading.

Example

{
  "value": "1.0",
  "units": "abc123",
  "intervalStart": "2020-01-01T00:00:00.000Z",
  "intervalEnd": "2020-01-01T00:00:00.000Z",
  "qualities": [ReadingQualityMeta]
}

Fields

NameDescription
count(Int)

The number of raw readings contributing to this quality group.

quality(MeterDataQualities)

The quality of the readings in this group.

value(Decimal)

The aggregated value for readings of this quality. For interval readings this is the sum of kWh; for peak readings this is the maximum demand recorded.

Example

{
  "quality": "ACTUAL",
  "value": "1.0",
  "count": 1
}

Fields

NameDescription
exportReadings(ExportReadingsConnection)

Readings representing outgoing utility flow e.g., solar generation.

Arguments

after (String)

before (String)

first (Int)

last (Int)

importReadings(ImportReadingsConnection)

Readings representing incoming utility flow e.g., usage or consumption..

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "exportReadings": ExportReadingsConnection,
  "importReadings": ImportReadingsConnection
}

RecordActivatedPaymentMethod

Output type of the recordActivatedPaymentMethod mutation.

Fields

NameDescription
paymentMethod(PaymentMethodType)

The stored payment method.

Example

{
  "paymentMethod": PaymentMethodType
}

RecordCancelledPayment

Output type of the recordCancelledPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordChargedBackPayment

Output type of the recordChargedBackPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordDepositAgreementAccepted

Output type of the recordDepositAgreementAccepted mutation.

Fields

NameDescription
isRecorded(Boolean)

Example

{
  "isRecorded": true
}

RecordFailedPayment

Output type of the recordFailedPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordInitiatedPayment

Output type of the recordInitiatedPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordInvalidatedPaymentMethod

Output type of the recordInvalidatedPaymentMethod mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordPendingPayment

Output type of the recordPendingPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

RecordSuccessfulPayment

Output type of the recordSuccessfulPayment mutation.

Fields

NameDescription
noticeBatchIdentifier(String!)

The unique identifier of the notice batch created from the input.

Example

{
  "noticeBatchIdentifier": "abc123"
}

Fields

NameDescription
buttonAction(ActionType!)

The action to perform when the button is pressed.

buttonStyle(ButtonStyle)

The button style.

id(ID)

Unique identifier of the object.

title(String!)

Title text of the button.

typename(String)

The name of the object's type.

variant(ButtonVariance)

Colour style of button eg. filled, outlined, text_only.

Example

{
  "buttonStyle": "PRIMARY",
  "title": "abc123",
  "buttonAction": DeeplinkActionType,
  "id": "abc123",
  "typename": "abc123",
  "variant": "FILLED"
}

RedeemLoyaltyPointsForAccountCredit

Output type of the redeemLoyaltyPointsForAccountCredit mutation.

Fields

NameDescription
pointsRedeemed(Int)

The number of loyalty points that were redeemed.

Example

{
  "pointsRedeemed": 1
}

RedeemReferralClaimCode

Output type of the redeemReferralClaimCode mutation.

Fields

NameDescription
success(Boolean!)

Whether or not the request was successful.

Example

{
  "success": true
}

ReferralClaimCodeType

Referral claim code is a way of claiming promotional benefit coming from the partner-reward referral schemes.

Fields

NameDescription
accountReferral(ReferralType)

Account referral associated with the claim code.

createdAt(DateTime)

Datetime when claim code was generated.

id(Int)

Id of claim code instance.

isValid(Boolean)

Whether the referral claim code is valid and available for use.

referralScheme(ReferralSchemeType)

Referral scheme claim code belongs to.

value(String)

Value of claim code.

Example

{
  "id": 1,
  "value": "abc123",
  "referralScheme": ReferralSchemeType,
  "accountReferral": ReferralType,
  "isValid": true,
  "createdAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([ReferralConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

referringUserTotalPaymentAmount(Int!)

Total payment amount given to the referring account in the smallest unit. of the client's currency.

If you filter the referrals by status, this will only return the total payment amount of referrals with the specified status.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": ReferralConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1,
  "referringUserTotalPaymentAmount": 1
}

ReferralConnectionTypeEdge

A Relay edge containing a ReferralConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(ReferralType)

The item at the end of the edge

Example

{
  "node": ReferralType,
  "cursor": "abc123"
}

ReferralSchemeType

A referral scheme is a way for one account to earn a reward for referring another. This is achieved by the referred account using a url (provided by the referring account) to sign up.

Fields

NameDescription
canBeReferred(Boolean)

Whether the current account is eligible to be referred under this scheme.

code(String)

The unique code for the scheme.

combinedRewardAmount(Int)

The reward amount received by the referrer and the referee combined.

isUsageAtCapacity(Boolean)

True if the the scheme has limit of uses, and if the usage is at capacity.

loyaltyPointsBonus(Int)

The number of loyalty points to be awarded to the referrer in addition to the reward amount.

maxRecurrence(Int)

Max number of times this referral code can be credited to a given account.

referralDisplayUrl(String)

A referral url for display purposes.

referralUrl(String)

A fully qualified url give people to create accounts referred by this scheme.

referredRewardAmount(Int)

The reward amount received by the referred party.

referrerFamilyName(String)

The family name of the person making the referral.

Deprecated

The 'referrerFamilyName' field is deprecated.

Only make use of the referrerGivenName for privacy reasons.

- Marked as deprecated on 2022-11-07.
- Scheduled for removal on or after 2023-01-07.

referrerGivenName(String)

The given name of the person making the referral.

referrerRewardAmount(Int)

The reward amount received by the referrer.

schemeType(String)

Scheme type of the referral scheme.

Example

{
  "referralUrl": "abc123",
  "referralDisplayUrl": "abc123",
  "referrerRewardAmount": 1,
  "referredRewardAmount": 1,
  "combinedRewardAmount": 1,
  "loyaltyPointsBonus": 1,
  "canBeReferred": true,
  "code": "abc123",
  "referrerGivenName": "abc123",
  "referrerFamilyName": "abc123",
  "schemeType": "abc123",
  "maxRecurrence": 1,
  "isUsageAtCapacity": true
}

Fields

NameDescription
business(ReferralSchemeType)

A business scheme type.

domestic(ReferralSchemeType)

A domestic scheme type.

friendsAndFamily(ReferralSchemeType)

A friends and family scheme type.

Deprecated

The 'friendsAndFamily' field is deprecated.

Please use domestic instead.

- Marked as deprecated on 2020-03-05.
- Scheduled for removal on or after 2024-01-01.

Example

{
  "domestic": ReferralSchemeType,
  "business": ReferralSchemeType,
  "friendsAndFamily": ReferralSchemeType
}

ReferralType

Details of an account referral

Fields

NameDescription
code(String)

The referral code.

combinedPaymentAmount(Int)

The payment amount in the smallest unit of the clients currency received by the referrer and the referee combined.

id(ID!)

ledgerId(Int)

The ID of the ledger which the referral is assigned to.

Deprecated

The 'ledgerId' field is deprecated.

Please use 'ledgerNumber' instead. This is in the form of 'L-123456789A'

- Marked as deprecated on 2024-10-22.
- Scheduled for removal on or after 2025-06-25.

ledgerNumber(String)

The number of the ledger which the referral is assigned to.

paymentDate(Date)

The date when the payment was made.

paymentStatus(String)

The status of the payment.

referredUserJoinDate(DateTime)

The date the referred user joined.

referredUserName(String)

The name of the referred user.

referredUserPaymentAmount(Int)

Payment amount given to the referred account in the smallest unit of the client's currency.

referringUserPaymentAmount(Int)

Payment amount given to the referring account in the clients fractional currency unit.

schemeType(ReferralSchemeTypeChoices)

The type of reward scheme.

Example

{
  "paymentDate": "2020-01-01",
  "schemeType": "REFERRAL_REWARD",
  "code": "abc123",
  "referredUserName": "abc123",
  "paymentStatus": "abc123",
  "referredUserJoinDate": "2020-01-01T00:00:00.000Z",
  "referredUserPaymentAmount": 1,
  "referringUserPaymentAmount": 1,
  "combinedPaymentAmount": 1,
  "ledgerId": 1,
  "ledgerNumber": "abc123",
  "id": "abc123"
}

RefreshToken

An opaque token that can be used to renew a Kraken Token.

Fields

NameDescription
expiryDt(DateTime!)

The datetime when the token will expire.

isValid(Boolean)

key(String!)

Example

{
  "expiryDt": "2020-01-01T00:00:00.000Z",
  "key": "abc123",
  "isValid": true
}

Refund

A refund to the customer from the energy supplier.

Fields

NameDescription
accountNumber(String)

Unique identifier of the account the transaction belongs to.

amount(Int)

Gross amount including tax (when payable). Refer to the amounts field for a breakdown of this information.

amounts(TransactionAmountType)

The net, tax and gross amounts for the transaction. Note: for payments and repayments, only the net amount is returned.

balanceCarriedForward(Int)

The customer's resulting balance after this transaction has been applied, in the smallest unit of currency.

billingDocumentIdentifier(ID)

The unique identifier for the most recent billing document linked with the transaction.Note: a transaction may be linked with multiple documents, but this field will only return the identifier for the most recent billing document.

createdAt(DateTime)

The date time when the transaction is created.

hasStatement(Boolean)

Returns True if the transaction is linked with a statement.

id(ID)

Unique identifier for the transaction.

isAccountCharge(Boolean)

Deprecated.

Deprecated

The 'isAccountCharge' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isAccountPayment(Boolean)

Deprecated.

Deprecated

The 'isAccountPayment' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isCredit(Boolean)

Deprecated.

Deprecated

The 'isCredit' field is deprecated.

This information is provided by the __typename introspection query.

- Marked as deprecated on 2020-06-19.
- Scheduled for removal on or after 2022-11-15.

isHeld(Boolean)

Whether the statement this transaction is on has been held. A held statement is not sent to a customer automatically, but is instead marked for manual attention by operations staff. Returns False if a statement is not linked with the transaction.

isIssued(Boolean)

Whether this transaction has been issued on any billing document.Note: Look for the most recently issued transaction instead of looking through all transactions as some accounts may have initial transactions that were not issued.This will return False if the transaction is not associated with any billing documents.

isReversed(Boolean!)

note(String)

Returns the note field value for the transaction, which contains additional info.

postedDate(Date)

Date when the transaction was posted to the account.

reasonCode(String)

Returns the reason.

statementId(ID)

Returns None if a statement is not linked with the transaction.

Deprecated

The 'statementId' field is deprecated.

Use `billingDocumentIdentifier` instead.

- Marked as deprecated on 2023-11-30.
- Scheduled for removal on or after 2024-06-01.

title(String)

Human-readable title describing the transaction.

Example

{
  "id": "abc123",
  "postedDate": "2020-01-01",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "accountNumber": "abc123",
  "amount": 1,
  "amounts": TransactionAmountType,
  "balanceCarriedForward": 1,
  "isCredit": true,
  "isAccountCharge": true,
  "isAccountPayment": true,
  "isHeld": true,
  "isIssued": true,
  "title": "abc123",
  "billingDocumentIdentifier": "abc123",
  "statementId": "abc123",
  "isReversed": true,
  "hasStatement": true,
  "note": "abc123",
  "reasonCode": "abc123"
}

RefundPayment

Output type of the refundPayment mutation.

Fields

NameDescription
repayment(AccountRepaymentType)

The repayment for the requested refund.

Example

{
  "repayment": AccountRepaymentType
}

Fields

NameDescription
amount(Int)

The amount of money requested.

payment(AccountPaymentType)

The payment which is being refunded.

reasonCode(String)

Internal code for the reason the refund is being requested.

requestId(ID)

The ID of the refund request.

status(RepaymentRequestStatus)

The current status of the refund request.

Example

{
  "requestId": "abc123",
  "amount": 1,
  "payment": AccountPaymentType,
  "reasonCode": "abc123",
  "status": "REQUESTED"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([RefundRequestConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": RefundRequestConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

RefundRequestConnectionTypeEdge

A Relay edge containing a RefundRequestConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(RefundPaymentRequestType)

The item at the end of the edge

Example

{
  "node": RefundPaymentRequestType,
  "cursor": "abc123"
}

RefundVoucher

Output type of the refundVoucher mutation.

Fields

NameDescription
voucherPurchase(VoucherPurchaseType)

The voucher purchase that was refunded.

Example

{
  "voucherPurchase": VoucherPurchaseType
}

RegenerateSecretKey

Output type of the regenerateSecretKey mutation.

Fields

NameDescription
key(String!)

The generated key value, which is only ever available once (here).

viewer(AccountUserType)

The currently authenticated user.

Example

{
  "key": "abc123",
  "viewer": AccountUserType
}

RegisterCustomerAsset

Output type of the registerCustomerAsset mutation.

Fields

NameDescription
customerAsset(CustomerAssetType)

The registered customer asset.

Example

{
  "customerAsset": CustomerAssetType
}

RegisterLeadFlowStatusEvent

Output type of the registerLeadFlowStatusEvent mutation.

Fields

NameDescription
flowId(String)

ID of the registered flow status event.

Example

{
  "flowId": "abc123"
}

RegisterOpportunityFlowStatusEvent

Output type of the registerOpportunityFlowStatusEvent mutation.

Fields

NameDescription
flowId(String)

ID of the registered flow status event.

Example

{
  "flowId": "abc123"
}

RegisterPushNotificationBinding

Output type of the registerPushNotificationBinding mutation.

Fields

NameDescription
pushNotificationBinding(PushNotificationBindingType)

Example

{
  "pushNotificationBinding": PushNotificationBindingType
}

RegisterReadingConnectionTypeConnection

This field is a connection type. Connections are used to implement cursor based pagination.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([RegisterReadingConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": RegisterReadingConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

RegisterReadingConnectionTypeEdge

A Relay edge containing a RegisterReadingConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(BaseRegisterReadingType)

The item at the end of the edge

Example

{
  "node": BaseRegisterReadingType,
  "cursor": "abc123"
}

RegistersConnection

Pagination for device registers.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([RegistersEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": RegistersEdge,
  "totalCount": 1,
  "edgeCount": 1
}

RegistersEdge

A Relay edge containing a Registers and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(DeviceRegister)

The item at the end of the edge

Example

{
  "node": DeviceRegister,
  "cursor": "abc123"
}

Fields

NameDescription
frequency(String)

The base unit of frequency at which payments are to be taken.

frequencyMultiplier(Int)

The multiple of the frequency at which payments are taken.

paymentDay(Int)

The day of the month/week at which to take payment.

Example

{
  "paymentDay": 1,
  "frequency": "abc123",
  "frequencyMultiplier": 1
}

Fields

NameDescription
assigneeId(ID)

The id of the user responsible for completing the reminder.

assigneeTeamId(ID)

The id of the team responsible for completing the reminder.

assigneeTeamName(String)

The name of the team responsible for completing the reminder.

assigneeUsername(String)

The username of the user responsible for completing the reminder.

content(String)

Reminder content.

createdAt(DateTime)

The date and time the account reminder was created.

dueAt(DateTime)

When the reminder is due.

id(Int)

The unique ID of the reminder.

isKrakenManaged(Boolean)

If the reminder is managed by Kraken.

params(JSONString)

Additional parameters for the reminder type.

reminderTypeName(String)

The reminder type name.

reopenInkConversation(Boolean)

Reopen ink conversation.

Example

{
  "id": 1,
  "reminderTypeName": "abc123",
  "isKrakenManaged": true,
  "content": "abc123",
  "dueAt": "2020-01-01T00:00:00.000Z",
  "assigneeUsername": "abc123",
  "assigneeId": "abc123",
  "assigneeTeamName": "abc123",
  "assigneeTeamId": "abc123",
  "reopenInkConversation": true,
  "createdAt": "2020-01-01T00:00:00.000Z",
  "params": {"key": "value"}
}

RemoveBankDetailsForLead

Output type of the removeBankDetailsForLead mutation.

Fields

NameDescription
leadNumber(String)

The unique number of the lead.

Example

{
  "leadNumber": "abc123"
}

RemoveCampaignFromAccount

Output type of the removeCampaignFromAccount mutation.

Fields

NameDescription
campaignRemoved(Boolean)

Whether the campaign was successfully removed from the account.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "campaignRemoved": true,
  "possibleErrors": [PossibleErrorType]
}

RemoveCampaignItems

Output type of the removeCampaignItems mutation.

Fields

NameDescription
campaignItems([VoiceCampaignItemType])

Example

{
  
}

RemoveItemsFromRiskList

Output type of the removeItemsFromRiskList mutation.

Fields

NameDescription
riskIdentifiers([RiskListItemType])

List of successfully removed risk identifiers.

Example

{
  
}

RemovePartnerUserFromTeam

Output type of the removePartnerUserFromTeam mutation.

Fields

NameDescription
partnerUser(PartnerUserType)

The partner user that was removed from the team.

Example

{
  
}

RemovePropertyFromHierarchy

Output type of the removePropertyFromHierarchy mutation.

Fields

NameDescription
property(PropertyType)

The property that was removed from the hierarchy.

Example

{
  "property": PropertyType
}

Fields

NameDescription
outcome(String)

The repayment intervention outcome.

reason(String)

The repayment intervention reason.

Example

{
  "outcome": "abc123",
  "reason": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([RepaymentRequestConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": RepaymentRequestConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

RepaymentRequestConnectionTypeEdge

A Relay edge containing a RepaymentRequestConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(RepaymentRequestType)

The item at the end of the edge

Example

{
  "node": RepaymentRequestType,
  "cursor": "abc123"
}

Fields

NameDescription
amount(Int)

The amount of money requested.

instruction(PaymentInstructionType)

The payment instruction, if any, associated with the repayment request.

method(RepaymentMethod)

The method by which the money will be transferred to the customer.

reasonCode(String)

Classifier code for repayment reason.

requestId(String)

The ID of the repayment request.

status(RepaymentRequestStatus)

The current status of the repayment request.

Example

{
  "requestId": "abc123",
  "amount": 1,
  "reasonCode": "abc123",
  "method": "BANK_TRANSFER",
  "instruction": PaymentInstructionType,
  "status": "REQUESTED"
}

ReplacePartnerReferences

Output type of the replacePartnerReferences mutation.

Fields

NameDescription
partner(AffiliateOrganisationType)

The updated partner.

Example

{
  
}

RequestDoubleOptIn

Output type of the requestDoubleOptIn mutation.

Fields

NameDescription
consent(ConsentType)

The consent that was created or updated.

Example

{
  "consent": ConsentType
}

Fields

NameDescription
email(String)

The email that requested a password reset email.

userNumber(String)

The number of the user that requested a password reset email.

Example

{
  "email": "abc123",
  "userNumber": "abc123"
}

RequestPrintedBill

Output type of the requestPrintedBill mutation.

Fields

NameDescription
success(Boolean)

Whether the request was successful.

Example

{
  "success": true
}

Fields

NameDescription
canRequestRefund(Boolean!)

Whether the account can request a refund.

reason(String)

The reason why a refund cannot be requested.

Example

{
  "canRequestRefund": true,
  "reason": "abc123"
}

RequestRepaymentOutputType

Output for creating a repayment request.

Fields

NameDescription
requestId(String)

The ID of the repayment request.

status(RepaymentRequestStatus)

The current status of the repayment request.

Example

{
  "requestId": "abc123",
  "status": "REQUESTED"
}

Fields

NameDescription
contract(Contract)

The contract rescinded.

Example

{
  "contract": Contract
}

ResetPasswordMutationPayload

Output type of the resetPassword mutation.

Fields

NameDescription
clientMutationId(String)

A unique identifier for the client performing the mutation.

Deprecated

The 'clientMutationId' field is deprecated.

This field is a relic of early Relay conventions and is no longer necessary.

- Marked as deprecated on 2026-07-29.
- Scheduled for removal on or after 2027-07-29.

errors([SerializerFieldErrorsType])

Example

{
  "errors": [SerializerFieldErrorsType],
  "clientMutationId": "abc123"
}

Fields

NameDescription
failureCodes([String])

A list of codes of which password validation the new password failed against if applicable. One of: - password_too_short - password_too_common - password_reused - password_matches_current - password_has_too_few_numeric_characters - password_has_too_few_special_characters - password_has_too_few_lowercase_characters - password_has_too_few_uppercase_characters - password_contains_account_number - password_contains_part_of_email_address

Deprecated

The 'failureCodes' field is deprecated.

Please handle the KT-CT-5450 error and inspect the `validationErrors[].code` extension instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

- Marked as deprecated on 2025-04-07.
- Scheduled for removal on or after 2025-10-04.

failureReasons([String])

A list of messages of which password validations the new password failed against if applicable.

Deprecated

The 'failureReasons' field is deprecated.

Please handle the KT-CT-5450 error and inspect the `validationErrors[].message` extension instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

- Marked as deprecated on 2025-04-07.
- Scheduled for removal on or after 2025-10-04.

passwordUpdated(Boolean)

True if the password update was successful, false otherwise.

Deprecated

The 'passwordUpdated' field is deprecated.

Please handle the KT-CT-5450 error instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

- Marked as deprecated on 2025-04-07.
- Scheduled for removal on or after 2025-10-04.

userId(ID!)

The ID of the user whose password was changed.

Example

{
  "userId": "abc123",
  "passwordUpdated": true,
  "failureReasons": ["abc123"],
  "failureCodes": ["abc123"]
}

ResumeCollectionProcess

Output type of the resumeCollectionProcess mutation.

Fields

NameDescription
collectionProcessResumed(ResumeCollectionProcessOutput)

Collection process resume output.

Example

{
  
}

Fields

NameDescription
pauseRecords([CollectionProcessPauseStatusRecord])

Pause records on the collection process.

Example

{
  
}

ResumeDeviceControl

Output type of the resumeControl mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

RetireCustomerAsset

Output type of the retireCustomerAsset mutation.

Fields

NameDescription
customerAsset(CustomerAssetType)

The retired customer asset.

Example

{
  "customerAsset": CustomerAssetType
}

Retry

A step that indicates the previous step encountered a retryable error.

Complete this step to recreate and retry the originally-failed step.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

Example

{
  "id": "abc123"
}

RevokeAgreement

Output type of the revokeAgreement mutation.

Fields

NameDescription
account(AccountType)

Account responsible for the revoked agreement.

Example

{
  "account": AccountType
}

Fields

NameDescription
contract(Contract)

The contract revoked.

Example

{
  "contract": Contract
}

RevokePartnerUserAccess

Output type of the revokePartnerUserAccess mutation.

Fields

NameDescription
partnerUser(RevokePartnerUserAccessType)

The result of the deletion.

Example

{
  
}

RevokePartnerUserAccessType

The result of revoking a partner user access.

Fields

NameDescription
partnerUserNumber(String!)

The number of the revoking partner user access.

Example

{
  "partnerUserNumber": "abc123"
}

RevokeUserAccessFromBusiness

Output type of the revokeUserAccessFromBusiness mutation.

Fields

NameDescription
roleCode(String)

The code of the role revoked from the user.

Example

{
  "roleCode": "abc123"
}

RewardType

        A reward is based on a scheme that an account has applied for in order to be
        eligible for a discount. Examples can include signup, promo, or partner codes that
        were applied to an account.

Fields

NameDescription
code(String)

The referral code.

id(ID!)

ledgerId(Int)

The ID of the ledger which the referral is assigned to.

Deprecated

The 'ledgerId' field is deprecated.

Please use 'ledgerNumber' instead. This is in the form of 'L-123456789A'

- Marked as deprecated on 2024-10-22.
- Scheduled for removal on or after 2025-06-25.

ledgerNumber(String)

The number of the ledger which the referral is assigned to.

paymentDate(Date)

The date when the payment was made.

paymentStatus(ReferralStatusChoices)

The status of the reward payment.

rewardAmount(Int)

Reward amount given to the account in the smallest unit of the clients currency.

schemeType(ReferralSchemeTypeChoices)

The type of reward scheme.

Example

{
  "paymentDate": "2020-01-01",
  "schemeType": "REFERRAL_REWARD",
  "code": "abc123",
  "rewardAmount": 1,
  "paymentStatus": "Pending",
  "ledgerId": 1,
  "ledgerNumber": "abc123",
  "id": "abc123"
}

RichAddressType

A postal address.

This data model is based on the structure used by Google's libaddressinput library—so you can use it, or other libraries that use its data model and reference data, to accept input.

All fields can be blank, except for country which must always be supplied.

If you only need the address in a single string, use the asString property. If you need the address as a list of lines, use the asString property, then use .splitlines() (or your programming language's equivalent) on the resulting value.

Fields

NameDescription
administrativeArea(String)

Top-level administrative subdivision, e.g. US state, AU state/territory, NZ, region, IT region, JP prefecture.

AU: Australia

This must be one of NSW, VIC, QLD, TAS, ACT, SA, NT, WA. For addresses not within these locations, use the value that Australia Post uses, e.g. ACT for the Jervis Bay Territory or WA for Christmas Island.

asString(String)

The entire formatted address represented as a single string, as it would be written on an envelope.

The formatting of this field may vary according to the country of the address (which may not match this Kraken installation's home country). It may also change if we update our address-formatting code or if our understanding of the correct formatting for a given country changes. Avoid parsing individual components of an address out of this field's value; use the other fields on this type instead.

Arguments

showCountry (Boolean)

Whether to include the country. The country will be spelled out in all-caps on the last line, as per Universal Postal Union standards.

showName (Boolean)

Whether to include the name attached to this address.

showPostalCode (Boolean)

Whether to include the postal code attached to this address.

country(String)

ISO 3166-1 alpha-2 code of the country this address belongs to, e.g. AU, GB, NZ.

deliveryPointIdentifier(String)

Identifier used by the local postal service for this address, e.g. AU DPID, GB postcode + Delivery Point Suffix, US Zip-9 + Delivery Point.

This is the value that gets encoded in the barcode printed on the envelope by large-volume bulk mail providers.

dependentLocality(String)

UK dependent localities, or neighbourhoods or boroughs in some other locations.

geographicalId(String)

Identifier for this address in its territory's official address register, e.g. DAR ID in DK, UPRN in GB, G-NAF ID in AU.

locality(String)

City or town portion of an address, e.g. US city, AU suburb/town, NZ suburb and city/town, IT comune, UK post town.

name(String)

A personal name.

organization(String)

The name of a business or organisation.

postalCode(String)

Postal code (ZIP code in the US).

sortingCode(String)

Sorting code, e.g. FR CEDEX code. This field is not used in many countries.

streetAddress(String)

The 'street address' component.

This value can (and often will) contain newline characters when appropriate.

In some cases, data may appear in this field instead of the below fields; e.g. a UK post town name may appear here instead of in the dependent_locality field. This happens when data has been migrated from a legacy format, and that format had insufficient metadata to determine the appropriate field.

If structured_street_address is also set, the value of this field will be a string generated from that value.

structuredStreetAddress(GenericScalar)

The 'street address' component, in a structured format.

This field stores the same value as street_address, but with more detail; for instance, instead of 123 Example Street it might be {'street_number': '123', 'street_name': 'Example', 'street_type': 'Street'}. In many cases this will be blank; we only use this field for Krakens where we need to supply this level of granularity to some third-party service, like a bulk mail provider.

The exact structure of this value depends on the country of the address, which is not necessarily the same as the country this Kraken is configured to serve. For addresses outside of the countries listed below, this field will be left blank.

AU: Australia

The following keys may be present; all are optional. All keys have string values, and their meaning is the same as their aseXML counterparts. (Note that, unlike aseXML, all keys are provided at the top level, rather than being nested.)

  • flat_or_unit_type
  • flat_or_unit_number
  • floor_or_level_type
  • floor_or_level_number
  • building_or_property_name
  • location_descriptor
  • lot_number
  • house_number_1
  • house_number_suffix_1
  • house_number_2
  • house_number_suffix_2
  • street_name
  • street_type
  • street_suffix
  • postal_delivery_type
  • postal_delivery_number_prefix
  • postal_delivery_number_value
  • postal_delivery_number_suffix

JP: Japan

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • chome
  • banchi
  • go
  • edaban
  • kana_building_name
  • kanji_building_name
  • building_number
  • room_number
  • address_code
  • physical_location_identifier
  • kana_company_name
  • kanji_company_name

NZ: New Zealand

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • flat_or_unit_type
  • flat_or_unit_number
  • floor_or_level_type
  • floor_or_level_number
  • property_name
  • building_name
  • house_number_1
  • house_number_suffix_1
  • house_number_2
  • house_number_suffix_2
  • street_prefix
  • street_name
  • street_type
  • street_suffix
  • rural_delivery_number
  • mailtown
  • postal_delivery_type
  • postal_delivery_location
  • postal_delivery_number_prefix
  • postal_delivery_number_value
  • postal_delivery_number_suffix

US: United States

The following keys may be present; all are optional. If keys are empty, they may be omitted from the response entirely.

  • primary_number
  • primary_name_prefix_dir
  • primary_name
  • primary_name_suffix
  • primary_name_suffix_dir
  • secondary_name
  • secondary_number

subAdministrativeArea(String)

Second-level administrative subdivision, e.g. US county.

Only populated for addresses in countries where this concept is relevant. For all other countries this field will be blank.

Example

{
  "name": "abc123",
  "organization": "abc123",
  "streetAddress": "abc123",
  "structuredStreetAddress": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "dependentLocality": "abc123",
  "locality": "abc123",
  "administrativeArea": "abc123",
  "subAdministrativeArea": "abc123",
  "postalCode": "abc123",
  "sortingCode": "abc123",
  "country": "abc123",
  "deliveryPointIdentifier": "abc123",
  "geographicalId": "abc123",
  "asString": "abc123"
}

RiskListItemType

Represents the result of importing/removing risk identifiers into the risk list with detailed information.

Fields

NameDescription
riskIdentifierId(ID)

The unique identifier of the edited risk identifier.

Example

{
  "riskIdentifierId": "abc123"
}

Fields

NameDescription
role(RoleInterface!)

The role that has been assigned.

validFrom(DateTime!)

The timestamp when the role becomes valid.

validTo(DateTime)

The timestamp when the role is no longer valid.

Example

{
  "role": RoleInterface,
  "validFrom": "2020-01-01T00:00:00.000Z",
  "validTo": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
category(String!)

The category of the attribute (LANGUAGE, OPERATIONS_GROUP, SKILL).

friendlyName(String!)

Human-readable name for the attribute.

isActive(Boolean!)

Whether this attribute is currently active and can be used for routing.

ref(String!)

The reference string used to identify this attribute (e.g., SKILL.ENERGY, LANGUAGE.ENGLISH).

subcategory(String)

Optional subcategory (e.g., TEAM, LOCATION).

Example

{
  "ref": "abc123",
  "category": "abc123",
  "subcategory": "abc123",
  "friendlyName": "abc123",
  "isActive": true
}

RunAgreementRollover

Output type of the runAgreementRollover mutation.

Fields

NameDescription
agreementRollover(AgreementRolloverType)

The executed agreement rollover.

Example

{
  "agreementRollover": AgreementRolloverType
}

Fields

NameDescription
eventType(String!)

id(ID!)

The ID of the object

message(SMSMessageType)

SMS message of the SMS event.

occurredAt(DateTime!)

Example

{
  "id": "abc123",
  "eventType": "abc123",
  "occurredAt": "2020-01-01T00:00:00.000Z",
  "message": SMSMessageType
}

SMSMessageType

Represents a SMS communication.

Fields

NameDescription
account(AccountType)

The account found.

attachments([AttachmentType])

Attachments of the message.

id(ID!)

The ID of the SMS.

recipient(String)

SMS recipient.

sender(String)

SMS sender.

sentAt(DateTime)

The date and time the SMS was sent.

textBody(String)

SMS body.

Example

{
  "id": "abc123",
  "sentAt": "2020-01-01T00:00:00.000Z",
  "account": AccountType,
  "sender": "abc123",
  "recipient": "abc123",
  "textBody": "abc123",
  "attachments": [AttachmentType]
}

SalesChannelType

A sales channel.

Fields

NameDescription
code(String)

The sales channel code.

description(String)

The sales channel description.

hierarchicalName(String)

The hierarchical name of the sales channel.

name(String)

The name of the sales channel.

Example

{
  "name": "abc123",
  "code": "abc123",
  "description": "abc123",
  "hierarchicalName": "abc123"
}

Fields

NameDescription
code(String)

The code of this sales funnel.

collections([Collection])

The collections of this sales funnel.

funnelType(FunnelTypeChoices)

The type of this sales funnel.

name(String)

The name of this sales funnel.

rules([SalesFunnelRule])

The rules of this sales funnel.

stages([SalesFunnelStage])

The stages of this sales funnel, in order.

status(FunnelStatusChoices)

The status of this sales funnel.

Example

{
  "code": "abc123",
  "name": "abc123",
  "funnelType": "LEAD",
  "status": "DRAFT"
}

Fields

NameDescription
funnelCode(String!)

The code of the funnel.

productOffering(OfferingType)

The product offering of the rule.

productOfferingIdentifier(String!)

The identifier of the product offering of the rule.

salesChannel(String!)

The code of the sales channel of the rule.

Example

{
  "funnelCode": "abc123",
  "productOfferingIdentifier": "abc123",
  "salesChannel": "abc123"
}

Fields

NameDescription
code(String!)

The per-funnel unique code for this stage.

name(String!)

The human-readable name for this stage.

order(Int)

The order of the stage.

Example

{
  "code": "abc123",
  "name": "abc123",
  "order": 1
}

ScheduleQuoteFollowUp

Output type of the scheduleQuoteFollowUp mutation.

Fields

NameDescription
success(Boolean!)

Whether the message was scheduled successfully.

Example

{
  "success": true
}

Fields

NameDescription
action(String)

Whether the scheduled transaction is a 'charge' or a 'credit'.

ancillaryData(JSONString)

Additional data that is consumed and associated with the scheduled transaction.

displayNote(String)

Optional short note about the scheduled transaction for customer display.

grossAmount(BigInt)

The gross amount of the scheduled transaction.

internalNote(String)

Optional short note about the scheduled transaction for internal use.

ledgerNumber(String)

The ledger the scheduled transaction is for.

metadata(JSONString)

Any extra data that is associated with scheduled transaction.

netAmount(BigInt)

The net amount of the scheduled transaction.

postedAfter(DateTime)

The datetime after which the scheduled transaction can be added to the ledger.

reason(String)

The reason why the scheduled transaction is added to the account.

salesTaxAmount(BigInt)

The tax amount of the scheduled transaction.

salesTaxRate(Decimal)

The tax rate of the scheduled transaction.

Example

{
  "action": "abc123",
  "grossAmount": 1,
  "netAmount": 1,
  "salesTaxAmount": 1,
  "salesTaxRate": "1.0",
  "reason": "abc123",
  "ancillaryData": {"key": "value"},
  "metadata": {"key": "value"},
  "internalNote": "abc123",
  "displayNote": "abc123",
  "postedAfter": "2020-01-01T00:00:00.000Z",
  "ledgerNumber": "abc123"
}

ScreenActionType

An action which calls another backend screen via its screen id.

Fields

NameDescription
allowBack(Boolean!)

Whether to allow returning to the original caller screen.

id(ID)

Unique identifier of the object.

params([BackendScreenParam]!)

Map of the parameters (key-value pairs) to pass to the next backend screen.

screenId(String!)

The ID of the screen to navigate to.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "typeName": "abc123",
  "screenId": "abc123",
  "params": BackendScreenParam,
  "allowBack": true
}

Fields

NameDescription
endDay(Int!)

End day of the season.

endMonth(Int!)

End month of the season.

name(String!)

Season name.

startDay(Int!)

Start day of the season.

startMonth(Int!)

Start month of the season.

Example

{
  "name": "abc123",
  "startDay": 1,
  "startMonth": 1,
  "endDay": 1,
  "endMonth": 1
}

SectionType

A section containing a list of cards or carousel items

Fields

NameDescription
content(SectionContent!)

The content of the section.

id(ID)

Unique identifier of the object.

order(Int!)

The order of the section.

typename(String)

The name of the object's type.

Example

{
  "id": "abc123",
  "typename": "abc123",
  "content": CardComponentType,
  "order": 1
}

Fields

NameDescription
name(String!)

The segment name.

Example

{
  "name": "abc123"
}

SelectChargePointMake

Options for selecting a charge point's make from a list of options.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectChargePointMakeForSmartFlexOnboarding

Output type of the selectChargePointMakeForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
chargePointMake(ChargePointVariantType)

The make of the charge point, e.g. myenergi.

id(ID)

A unique identifier for this list item.

Example

{
  "id": "abc123",
  "chargePointMake": ChargePointVariantType
}

SelectChargePointVariant

Options for selecting a charge point's variant from a list of options.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectChargePointVariantForSmartFlexOnboarding

Output type of the selectChargePointVariantForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
chargePointVariant(ChargePointVariantType)

The model variant of the charge point, e.g. Zappi.

Deprecated

The 'chargePointVariant' field is deprecated.

Please use 'electricChargePointVariant' instead.

- Marked as deprecated on 2026-04-24.
- Scheduled for removal on or after 2026-10-24.

electricChargePointVariant(ElectricChargePointVariantType)

The full data object for the charge point variant.

id(ID)

A unique identifier for this list item.

Example

{
  "id": "abc123",
  "chargePointVariant": ChargePointVariantType,
  "electricChargePointVariant": ElectricChargePointVariantType
}

SelectDeviceType

A type where the user must select the type of device to onboard.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectDeviceTypeForSmartFlexOnboarding

Output type of the selectDeviceTypeForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
id(ID)

A unique identifier for this list item.

label(String)

The device type, e.g. Electric Vehicle.

Example

{
  "id": "abc123",
  "label": "abc123"
}

SelectFromListForSmartFlexOnboarding

Output type of the selectFromListForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


SelectProducts

Output type of the selectProducts mutation.

Fields

NameDescription
success(Boolean!)

Whether we successfully marked the chosen quoted products as selected.

Example

{
  "success": true
}

SelectSessionDevice

A type where the user must select a device from a list of session devices.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

Fields

NameDescription
id(ID)

A unique identifier for this list item.

sessionDevice(SessionDeviceType)

A device associated with the onboarding session.

Example

{
  "id": "abc123",
  "sessionDevice": SessionDeviceType
}

SelectUserVehicle

Options for selecting a user's vehicle from a list of options.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectUserVehicleForSmartFlexOnboarding

Output type of the selectUserVehicleForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
id(ID)

A unique identifier for this list item.

userVehicle(ElectricVehicleType)

The selected electric vehicle when multiple vehicles were available.

Deprecated

The 'userVehicle' field is deprecated.

Please use 'SelectUserVehicleListItem.vehicle' instead.

- Marked as deprecated on 2025-04-10.
- Scheduled for removal on or after 2025-07-10.

vehicle(VehicleInformationType)

A vehicle associated with the user's OEM account.

Example

{
  "id": "abc123",
  "userVehicle": ElectricVehicleType,
  "vehicle": VehicleInformationType
}

SelectVehicleMake

Options for selecting a vehicle's make from a list of options.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectVehicleMakeForSmartFlexOnboarding

Output type of the selectVehicleMakeForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
id(ID)

A unique identifier for this list item.

vehicleMake(ElectricVehicleType)

The make of the electric vehicle make, e.g. Tesla.

Example

{
  "id": "abc123",
  "vehicleMake": ElectricVehicleType
}

SelectVehicleOrChargePoint

A step to prompt users to select between their vehicle or charge point.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

selectedIntegration(SelectIntegrationChoices)

Example

{
  "id": "abc123",
  "selectedIntegration": "ELECTRIC_VEHICLE"
}

SelectVehicleVariant

Options for selecting a vehicle's variant from a list of options.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

options([SmartFlexListItemInterface])

The options the user can select.

selectedOptionId(ID)

The ID of the option that has been selected, if any.

Example

{
  "id": "abc123",
  "options": SmartFlexListItemInterface,
  "selectedOptionId": "abc123"
}

SelectVehicleVariantForSmartFlexOnboarding

Output type of the selectVehicleVariantForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
electricVehicleVariant(ElectricVehicleVariantType)

The model variant of the electric vehicle, e.g. Model Y.

id(ID)

A unique identifier for this list item.

vehicleVariant(ElectricVehicleType)

The model variant of the electric vehicle, e.g. Model Y.

Deprecated

The 'vehicleVariant' field is deprecated.

Please use 'electricVehicleVariant' instead.

- Marked as deprecated on 2026-04-24.
- Scheduled for removal on or after 2026-10-24.

Example

{
  "id": "abc123",
  "vehicleVariant": ElectricVehicleType,
  "electricVehicleVariant": ElectricVehicleVariantType
}

Fields

NameDescription
code(String)

The selected product code.

displayName(String)

The selected product display name.

Example

{
  "code": "abc123",
  "displayName": "abc123"
}

SendAgreementRescissionConfirmation

Output type of the sendAgreementRescissionConfirmation mutation.

Fields

NameDescription
agreementRescission(AgreementRescissionType)

The agreement rescission for which we are sending a message.

Example

{
  
}

SendInkOutboundMessage

Output type of the sendInkOutboundMessage mutation.

Fields

NameDescription
message(InkMessage!)

The Ink message that was enqueued for sending.

Example

{
  "message": InkEmail
}

SendOfferQuoteSummary

Output type of the sendOfferQuoteSummary mutation.

Fields

NameDescription
success(Boolean!)

Whether the triggering of the offer quote summary was successful.

Example

{
  "success": true
}

SendQuoteSummary

Output type of the sendQuoteSummary mutation.

Fields

NameDescription
success(Boolean!)

Whether the triggering of the quote summary was successful.

Example

{
  "success": true
}

SendTrustpilotReviewInvitation

Output type of the sendTrustpilotReviewInvitation mutation.

Fields

NameDescription
referenceNumber(UUID)

The unique reference number of the Trustpilot invite.

sendAt(DateTime)

The datetime at which Trustpilot will send the review invitation.

Deprecated

The 'sendAt' field is deprecated.


This field only echoes back the 'sendAt' value given in the mutation input, so it
carries no information the caller does not already have.


- Marked as deprecated on 2026-08-18.
- Scheduled for removal on or after 2026-09-01.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/1754/

Example

{
  "sendAt": "2020-01-01T00:00:00.000Z",
  "referenceNumber": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

SendVerificationEmail

Output type of the sendVerificationEmail mutation.

Fields

NameDescription
verificationStatus(Boolean)

If the verification email was sent.

Example

{
  "verificationStatus": true
}

Fields

NameDescription
code(String)

message(String)

Example

{
  "message": "abc123",
  "code": "abc123"
}

Fields

NameDescription
errors([ErrorTypeUnion!])

field(String)

Example

{
  "field": "abc123",
  "errors": SerializerErrorType
}

Fields

NameDescription
id(String)

A unique session device identifier.

make(String)

The make (manufacturer) of the device.

model(String)

The model of the device.

name(String)

The name of the device.

Example

{
  "id": "abc123",
  "name": "abc123",
  "make": "abc123",
  "model": "abc123"
}

SetLoyaltyPointsUser

Output type of the setLoyaltyPointsUser mutation.

Fields

NameDescription
newLoyaltyPointsUserId(String)

ID of the new Loyalty Points user.

Example

{
  "newLoyaltyPointsUserId": "abc123"
}

SetOpportunityOutcome

Output type of the setOpportunityOutcome mutation.

Fields

NameDescription
message(String)

Success message for now.

Example

{
  "message": "abc123"
}

SetPaymentPreference

Output type of the setPaymentPreference mutation.

Fields

NameDescription
accountNumber(String)

Number of the account on which the payment preference was set.

Example

{
  "accountNumber": "abc123"
}

SetQuoteConfigurationRatesRequestErrorsOutput

Output for the setQuoteConfigurationRatesRequestErrors mutation.

Fields

NameDescription
quoteConfiguration(QuoteConfigurationType!)

The quote configuration associated with the updated rates request.

Example

{
  
}

SetScheduleCollectionMethod

Output type of the setScheduleCollectionMethod mutation.

Fields

NameDescription
schedule(PaymentScheduleType!)

Updated payment schedule.

Example

{
  "schedule": PaymentScheduleType
}

SetUpDirectDebitInstruction

Output type of the setUpDirectDebitInstruction mutation.

Fields

NameDescription
paymentInstruction(DirectDebitInstructionType)

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "paymentInstruction": DirectDebitInstructionType,
  "possibleErrors": [PossibleErrorType]
}

SetUpDirectDebitInstructionForBusiness

Output type of the setUpDirectDebitInstructionForBusiness mutation.

Fields

NameDescription
paymentInstruction(DirectDebitInstructionType)

The created direct debit instruction.

Example

{
  "paymentInstruction": DirectDebitInstructionType
}

SetUpDirectDebitInstructionFromStoredDetails

Output type of the setUpDirectDebitInstructionFromStoredDetails mutation.

Fields

NameDescription
paymentInstruction(DirectDebitInstructionType)

The payment instruction that was created from stored details.

Example

{
  "paymentInstruction": DirectDebitInstructionType
}

SetVehicleChargingPreferences

Output type of the setVehicleChargePreferences mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

ShareGoodsQuote

Output type of the shareGoodsQuote mutation.

Fields

NameDescription
share(GoodsQuoteShare)

Goods quote shared.

Example

{
  "share": GoodsQuoteShare
}

ShowInputFieldErrorsActionType

An action that instructs the app to display validation errors on input fields.

Fields

NameDescription
errors([InputFieldErrorType]!)

List of field-level validation errors to display.

id(ID)

Unique identifier of the object.

screenId(String)

Optional ID of the form screen these errors apply to.

typeName(String)

The name of the action object's type.

typename(String)

The name of the object's type.

Example

{
  "typeName": "abc123",
  "id": "abc123",
  "typename": "abc123",
  "screenId": "abc123",
  "errors": InputFieldErrorType
}

Fields

NameDescription
grossRateInformation([GrossRateInformation]!)

A list of gross rate information.

latestGrossUnitRateCentsPerKwh(Decimal!)

The latest value of the gross unit rate, in ct/kWh.

netUnitRateCentsPerKwh(Decimal!)

The net unit rate, in ct/kWh.

Example

{
  "netUnitRateCentsPerKwh": "1.0",
  "latestGrossUnitRateCentsPerKwh": "1.0",
  "grossRateInformation": GrossRateInformation
}

SmartFlexChargePoint

Information about a charge point that has been registered with Kraken Flex.

Fields

NameDescription
alerts([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

chargePointPowerOutput(Decimal)

The power output of the charge point in kW.

chargePointVariant(ChargePointVariantModelType)

This contains more detail about the variant of the charge point model.

Deprecated

The 'chargePointVariant' field is deprecated.

Please use fields directly on 'SmartFlexVehicle' instead.

- Marked as deprecated on 2026-04-15.
- Scheduled for removal on or after 2026-10-15.

chargingPreferences(SmartFlexVehicleChargingPreferences)

The user's preferences for charging using this charge point.

chargingSessions(DeviceChargingSessionConnection)

History of charging sessions for a SmartFlex device.

Arguments

after (DateTime)

Earliest time of the charging sessions i.e. the start of the time window. Only sessions that start at or after this datetime are returned. Must be earlier than before.

before (DateTime)

Latest time of the charging sessions i.e. end of the time window. Only sessions that start before this datetime are returned. Must be later than after.

first (Int)

last (Int)

sessionTypes ([ChargingSessionType])

The types of charging sessions to be returned.

deviceType(KrakenFlexDeviceTypes!)

The type of device.

id(ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

integrationDeviceId(String)

The third-party integration device ID.

make(String)

The make of the charge point, e.g. myenergi.

model(String)

The model of the charge point, e.g. Zappi.

name(String)

The user-friendly name for the device.

onboardingWizard(SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferenceSetting(FlexDevicePreferenceSettingInterface)

The preference setting for this device.

preferences(SmartFlexDevicePreferencesInterface)

The device's preference details.

propertyId(String)

The id of the property linked to the device.

provider(ProviderChoices!)

The third-party that enables control of this device.

reAuthenticationState(DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

status(SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

vehicleBatterySize(Decimal)

The battery capacity for the electric vehicle in kWh.

vehicleVariant(ElectricVehicleModelType)

This contains more detail about the variant of the vehicle model.

Deprecated

The 'vehicleVariant' field is deprecated.

Please use fields directly on 'SmartFlexVehicle' instead.

- Marked as deprecated on 2026-04-15.
- Scheduled for removal on or after 2026-10-15.

Example

{
  "id": "abc123",
  "name": "abc123",
  "deviceType": "BATTERIES",
  "provider": "BMW",
  "integrationDeviceId": "abc123",
  "status": SmartFlexDeviceStatusInterface,
  "propertyId": "abc123",
  "alerts": SmartFlexDeviceAlertInterface,
  "onboardingWizard": SmartFlexOnboardingWizard,
  "preferences": SmartFlexDevicePreferencesInterface,
  "preferenceSetting": FlexDevicePreferenceSettingInterface,
  "reAuthenticationState": DeviceReAuthenticationInterface,
  "chargingSessions": DeviceChargingSessionConnection,
  "make": "abc123",
  "model": "abc123",
  "vehicleBatterySize": "1.0",
  "chargePointPowerOutput": "1.0",
  "vehicleVariant": ElectricVehicleModelType,
  "chargePointVariant": ChargePointVariantModelType,
  "chargingPreferences": SmartFlexVehicleChargingPreferences
}

SmartFlexChargePointStatus

The current status of a registered charge point.

Fields

NameDescription
activePower(DecimalReading)

The latest active power reading for the device in kW. A positive value indicates power is being drawn to charge the vehicle's battery; a negative value indicates energy is being discharged from the vehicle's battery.

current(SmartFlexDeviceLifecycleStatus)

The current status of the device.

currentState(SmartFlexDeviceState)

The current state of this SmartFlex device state machine.

isSuspended(Boolean)

Whether control of the device is currently disabled.

stateOfCharge(DecimalReading)

The latest SoC received from the vehicle. It has a value between 0-100.

stateOfChargeLimit(StateOfChargeLimit)

Information about the limits for the SoC.

testDispatchFailureReason(TestDispatchAssessmentFailureReason)

The reason for the most recent failed test dispatch (if any).

Example

{
  "current": "ONBOARDING",
  "isSuspended": true,
  "currentState": "AUTHENTICATION_PENDING",
  "stateOfCharge": DecimalReading,
  "activePower": DecimalReading,
  "stateOfChargeLimit": StateOfChargeLimit,
  "testDispatchFailureReason": "NONE"
}

Fields

NameDescription
cause(SmartFlexChargingErrorCause!)

Possible cause of the charging error.

Example

{
  "cause": "SOC_LIMIT_REACHED"
}

Fields

NameDescription
cost(Money)

The cost for the charge added during a charging session.

dispatches([SmartFlexDispatch])

The charging session dispatch.

end(DateTime!)

The end time of a charging session.

energyAdded(Energy)

The energy added during a charging session.

problems([SmartFlexChargingProblem])

Charging problem(s) encountered during the session due to an error or truncation.

start(DateTime!)

The start time of a charging session.

stateOfChargeChange(Decimal)

The change in state of charge during a charging session. The value will be between 0 and 100, if not null.

stateOfChargeFinal(Decimal)

The final state of charge after a charging session. The value will be between 0 and 100, if not null.

targetType(PreferencesTargetType!)

The target type for a user's preferences.

type(SmartFlexChargingType!)

The type of charge, i.e. SMART or BOOST.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z",
  "stateOfChargeChange": "1.0",
  "stateOfChargeFinal": "1.0",
  "energyAdded": Energy,
  "cost": Money,
  "type": "SMART",
  "targetType": "ABSOLUTE_STATE_OF_CHARGE",
  "dispatches": [SmartFlexDispatch],
  "problems": SmartFlexChargingError
}

Fields

NameDescription
achievableStateOfCharge(Decimal!)

The state of charge (in percent) that was possible, given the truncation.

originalAchievableStateOfCharge(Decimal!)

The state of charge (in percent) that could have been achieved, if not for truncation of the charging session.

truncationCause(SmartFlexChargingTruncationCause!)

The cause for the truncation of a charging session.

Example

{
  "truncationCause": "DISCONNECTED",
  "originalAchievableStateOfCharge": "1.0",
  "achievableStateOfCharge": "1.0"
}

SmartFlexDevice

Information about a device that has been registered for Smart Flex.

Fields

NameDescription
alerts([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

deviceType(KrakenFlexDeviceTypes!)

The type of device.

id(ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

integrationDeviceId(String)

The third-party integration device ID.

name(String)

The user-friendly name for the device.

onboardingWizard(SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferenceSetting(FlexDevicePreferenceSettingInterface)

The preference setting for this device.

preferences(SmartFlexDevicePreferencesInterface)

The device's preference details.

propertyId(String)

The id of the property linked to the device.

provider(ProviderChoices!)

The third-party that enables control of this device.

reAuthenticationState(DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

status(SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

Example

{
  "id": "abc123",
  "name": "abc123",
  "deviceType": "BATTERIES",
  "provider": "BMW",
  "integrationDeviceId": "abc123",
  "status": SmartFlexDeviceStatusInterface,
  "propertyId": "abc123",
  "alerts": SmartFlexDeviceAlertInterface,
  "onboardingWizard": SmartFlexOnboardingWizard,
  "preferences": SmartFlexDevicePreferencesInterface,
  "preferenceSetting": FlexDevicePreferenceSettingInterface,
  "reAuthenticationState": DeviceReAuthenticationInterface
}

SmartFlexDeviceAlert

Information about an alert relevant to a device registered for Smart Flex.

Fields

NameDescription
message(String)

A device alert message.

publishedAt(DateTime)

When a device alert message is published.

Example

{
  "message": "abc123",
  "publishedAt": "2020-01-01T00:00:00.000Z"
}

SmartFlexDevicePreferenceSchedule

A schedule entry for device preferences specifying target values for a specific day and time.

For information about valid value ranges, time constraints, and step increments, query the device's preferenceSettings field which provides bounds and validation rules.

Fields

NameDescription
dayOfWeek(DayOfWeek!)

Day of week schedule applies to.

max(Float)

Maximum value for the schedule. Usage depends on the targetType and mode - e.g. target state of charge for EVs, or cooling set point for heat pumps.For valid bounds and step increments, see the device's preferenceSettings field.

min(Float)

Minimum value for the schedule when applicable. Usage depends on the targetType and mode - e.g. heating set point temperature for heat pumps. May be null for device types that don't require a lower bound. For valid bounds and step increments, see the device's preferenceSettings field.

time(Time!)

Time of day the preference applies.

upperLimit(Float)

Upper limit value for the schedule when applicable.Usage depends on the targetType - e.g., charge level to never be exceeded for V2G EVs.May be null for device types that don't require an upper bound.

Example

{
  "dayOfWeek": "MONDAY",
  "time": "00:00:00.000Z",
  "min": 1.0,
  "max": 1.0,
  "upperLimit": 1.0
}

Fields

NameDescription
gridExport(FlexGridExportStatus!)

The status of the device's grid export capability.

isChargingDurationCapped(FlexIsChargingDurationCapped!)

The status of the device's charging duration cap.

mode(PreferencesModeChoices!)

The device's preference mode.

schedules([SmartFlexDevicePreferenceSchedule])

The schedules of the device's preference.

targetType(PreferencesTargetType!)

The target type of the preference.

unit(PreferencesUnitChoices!)

The unit of the preference schedules' min and max values.

Example

{
  "targetType": "ABSOLUTE_STATE_OF_CHARGE",
  "unit": "CELSIUS",
  "mode": "CHARGE",
  "schedules": [SmartFlexDevicePreferenceSchedule],
  "gridExport": "ENABLED",
  "isChargingDurationCapped": "ENABLED"
}

SmartFlexDeviceStatus

Information about the current status of a device registered for Smart Flex.

Fields

NameDescription
current(SmartFlexDeviceLifecycleStatus)

The current status of the device.

currentState(SmartFlexDeviceState)

The current state of this SmartFlex device state machine.

isSuspended(Boolean)

Whether control of the device is currently disabled.

Example

{
  "current": "ONBOARDING",
  "isSuspended": true,
  "currentState": "AUTHENTICATION_PENDING"
}

Fields

NameDescription
importSupplyPointId(String!)

Import supply point ID.

smartFlexDeviceId(String!)

SmartFlex device ID.

Example

{
  "importSupplyPointId": "abc123",
  "smartFlexDeviceId": "abc123"
}

Fields

NameDescription
end(DateTime!)

The end time of the dispatch.

energyAddedKwh(Decimal)

The energy added in kWh of the dispatch.

start(DateTime!)

The start time of the dispatch.

type(SmartFlexChargingType!)

The type of charge.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z",
  "type": "SMART",
  "energyAddedKwh": "1.0"
}

SmartFlexOnboardingDeviceRegistration

A type that returns True if the device(s) were successfully registered.

Fields

NameDescription
deviceRegistered(Boolean)

Returns true if the device(s) were successfully registered.

id(ID)

A unique identifier for this onboarding step.

Example

{
  "id": "abc123",
  "deviceRegistered": true
}

Fields

NameDescription
backendScreen(BackendScreenType)

A Backend Screen that renders the SmartFlex onboarding wizard.

Arguments

maxVersionSupported (Int)

The maximum version of Backend Screens supported by the client.

completedSteps([SmartFlexOnboardingStepInterface])

The completed steps for all onboarding wizards that are currently in progress. Note: - The last step is the most recent one. - If an onboarding journey is completed, it will not be included in this list.

currentStep(SmartFlexOnboardingStepInterface)

The next step of the SmartFlex onboarding wizard. Returns None if the onboarding journey is completed.

deviceType(KrakenFlexDeviceTypes)

The onboarding wizard's selected device type to be onboarded.

displayName(String)

The onboarding wizard's display name extracted from the wizard's selected device attributes.

id(ID!)

A unique identifier for this SmartFlex onboarding wizard.

isComplete(Boolean!)

Returns true if the onboarding wizard has been completed, false otherwise.

resumable(SmartFlexResumable)

Determines whether the wizard's onboarding journey can be resumed.

Example

{
  "id": "abc123",
  "resumable": SmartFlexResumable,
  "deviceType": "BATTERIES",
  "isComplete": true,
  "displayName": "abc123",
  "backendScreen": ComponentListType,
  "currentStep": SmartFlexOnboardingStepInterface,
  "completedSteps": SmartFlexOnboardingStepInterface
}

Fields

NameDescription
isResumable(Boolean)

A boolean to determine whether the wizard's onboarding journey can be resumed.

resumableReasons([String])

Reasons why a wizard cannot be resumed.

Example

{
  "isResumable": true,
  "resumableReasons": ["abc123"]
}

SmartFlexVehicle

Information about a vehicle that has been registered with Kraken Flex.

Fields

NameDescription
alerts([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

chargePointPowerOutput(Decimal)

The power output of the charge point in kW.

chargePointVariant(ChargePointVariantModelType)

This contains more detail about the variant of the charge point model.

Deprecated

The 'chargePointVariant' field is deprecated.

Please use fields directly on 'SmartFlexVehicle' instead.

- Marked as deprecated on 2026-04-15.
- Scheduled for removal on or after 2026-10-15.

chargingPreferences(SmartFlexVehicleChargingPreferences)

The user's preferences for charging this vehicle.

Deprecated

The 'chargingPreferences' field is deprecated.

Please use 'devices.preferences' instead.

- Marked as deprecated on 2024-11-01.
- Scheduled for removal on or after 2025-05-06.

chargingSessions(DeviceChargingSessionConnection)

History of charging sessions for a SmartFlex device.

Arguments

after (DateTime)

Earliest time of the charging sessions i.e. the start of the time window. Only sessions that start at or after this datetime are returned. Must be earlier than before.

before (DateTime)

Latest time of the charging sessions i.e. end of the time window. Only sessions that start before this datetime are returned. Must be later than after.

first (Int)

last (Int)

sessionTypes ([ChargingSessionType])

The types of charging sessions to be returned.

deviceType(KrakenFlexDeviceTypes!)

The type of device.

id(ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

integrationDeviceId(String)

The third-party integration device ID.

make(String)

The make of the vehicle, e.g. Tesla.

model(String)

The model of the vehicle, e.g. Model 3.

name(String)

The user-friendly name for the device.

onboardingWizard(SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferenceSetting(FlexDevicePreferenceSettingInterface)

The preference setting for this device.

preferences(SmartFlexDevicePreferencesInterface)

The device's preference details.

propertyId(String)

The id of the property linked to the device.

provider(ProviderChoices!)

The third-party that enables control of this device.

reAuthenticationState(DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

status(SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

vehicleBatterySize(Decimal)

The battery capacity for the electric vehicle in kWh.

vehicleVariant(ElectricVehicleModelType)

This contains more detail about the variant of the vehicle model.

Deprecated

The 'vehicleVariant' field is deprecated.

Please use fields directly on 'SmartFlexVehicle' instead.

- Marked as deprecated on 2026-04-15.
- Scheduled for removal on or after 2026-10-15.

Example

{
  "id": "abc123",
  "name": "abc123",
  "deviceType": "BATTERIES",
  "provider": "BMW",
  "integrationDeviceId": "abc123",
  "status": SmartFlexDeviceStatusInterface,
  "propertyId": "abc123",
  "alerts": SmartFlexDeviceAlertInterface,
  "onboardingWizard": SmartFlexOnboardingWizard,
  "preferences": SmartFlexDevicePreferencesInterface,
  "preferenceSetting": FlexDevicePreferenceSettingInterface,
  "reAuthenticationState": DeviceReAuthenticationInterface,
  "chargingSessions": DeviceChargingSessionConnection,
  "make": "abc123",
  "model": "abc123",
  "vehicleBatterySize": "1.0",
  "chargePointPowerOutput": "1.0",
  "vehicleVariant": ElectricVehicleModelType,
  "chargePointVariant": ChargePointVariantModelType,
  "chargingPreferences": SmartFlexVehicleChargingPreferences
}

SmartFlexVehicleChargingPreferences

The user's preferences for charging, e.g. target SoC (State of Charge).

Fields

NameDescription
maximumSoc(Int)

The maximum SoC (percentage).

minimumSoc(Int)

The minimum SoC (percentage).

weekdayTargetSoc(Int!)

The target SoC to achieve on a weekday (percentage).

weekdayTargetTime(Time!)

The time at which the target SoC should be achieved on a weekday.

weekendTargetSoc(Int!)

The target SoC to achieve on a weekend (percentage).

weekendTargetTime(Time!)

The time at which the target SoC should be achieved on a weekend.

Example

{
  "weekdayTargetTime": "00:00:00.000Z",
  "weekdayTargetSoc": 1,
  "weekendTargetTime": "00:00:00.000Z",
  "weekendTargetSoc": 1,
  "minimumSoc": 1,
  "maximumSoc": 1
}

SmartFlexVehicleStatus

The current status of a registered vehicle.

Fields

NameDescription
activePower(DecimalReading)

The latest active power reading for the device in kW. A positive value indicates power is being drawn to charge the vehicle's battery; a negative value indicates energy is being discharged from the vehicle's battery.

current(SmartFlexDeviceLifecycleStatus)

The current status of the device.

currentState(SmartFlexDeviceState)

The current state of this SmartFlex device state machine.

isSuspended(Boolean)

Whether control of the device is currently disabled.

stateOfCharge(DecimalReading)

The latest SoC received from the vehicle. It has a value between 0-100.

stateOfChargeLimit(StateOfChargeLimit)

Information about the limits for the SoC.

testDispatchFailureReason(TestDispatchAssessmentFailureReason)

The reason for the most recent failed test dispatch (if any).

Example

{
  "current": "ONBOARDING",
  "isSuspended": true,
  "currentState": "AUTHENTICATION_PENDING",
  "stateOfCharge": DecimalReading,
  "activePower": DecimalReading,
  "stateOfChargeLimit": StateOfChargeLimit,
  "testDispatchFailureReason": "NONE"
}

SpecialCircumstanceRecordType

Any special circumstances that the user has notified us about, which may entitle them to some specialist services.

Fields

NameDescription
createdAt(DateTime)

The date and time the special circumstance record was created.

id(ID)

internalCode(String)

summary(String)

Example

{
  "id": "abc123",
  "summary": "abc123",
  "internalCode": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z"
}

SpecialCircumstancesType

Information about the special circumstances that relate to a user.

Fields

NameDescription
isSharingConsentGiven(Boolean)

Whether the user has consented for their data to be given to the appropriate industry or regulatory bodies. We typically only ask for this once, so this field can be used to decide whether to ask the user for their initial consent.

records([SpecialCircumstanceRecordUnion])

Example

{
  "isSharingConsentGiven": true,
  "records": SpecialCircumstanceRecordType
}

StartCollectionProcess

Output type of the startCollectionProcess mutation.

Fields

NameDescription
collectionProcessStarted(StartCollectionProcessOutput)

Details of collection process that has been started.

Example

{
  
}

Fields

NameDescription
accountNumber(String)

Account number associated to the collection process.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123",
  "accountNumber": "abc123"
}

StartCustomerVerification

Output type of the startCustomerVerification mutation.

Fields

NameDescription
verificationProcess(VerificationProcess)

The newly created verification process.

Example

{
  "verificationProcess": VerificationProcess
}

StartGroupedCollectionProcess

Output type of the startGroupedCollectionProcess mutation.

Fields

NameDescription
collectionProcessStarted(StartGroupedCollectionProcessOutput)

Details of the collection process that has been started.

Example

{
  
}

Fields

NameDescription
accountNumber(String)

Account number associated to the collection process.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123",
  "accountNumber": "abc123"
}

StartOnSiteJobsAppointmentBookingSession

Output type of the startOnSiteJobsAppointmentBookingSession mutation.

Fields

NameDescription
appointmentBookingSessionId(UUID)

The Kraken booking ID for the appointment booking session.

Example

{
  "appointmentBookingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

StartOnSiteJobsAppointmentBookingSessionForRequest

Output type of the startOnSiteJobsAppointmentBookingSessionForRequest mutation.

Fields

NameDescription
appointmentBookingSessionId(UUID)

The Kraken booking ID for the appointment booking session.

Example

{
  "appointmentBookingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

StartOnSiteJobsAppointmentReschedulingSession

Output type of the startOnSiteJobsAppointmentReschedulingSession mutation.

Fields

NameDescription
appointmentReschedulingSessionId(UUID)

The Kraken ID for the appointment rescheduling session.

Example

{
  "appointmentReschedulingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

StartOnSiteJobsTimeslotPickingSession

Output type of the startOnSiteJobsTimeslotPickingSession mutation.

Fields

NameDescription
appointmentBookingSessionId(UUID)

The Kraken booking ID for the appointment booking session.

Example

{
  "appointmentBookingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

StartReAuthentication

Output type of the startReAuthentication mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for re-authenticating the device with SmartFlex.

Example


StartSmartFlexOnboarding

Output type of the startSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


StartTestChargeForSmartFlexOnboarding

Output type of the startTestChargeForSmartFlexOnboarding mutation.

Fields

NameDescription
wizard(SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Example


Fields

NameDescription
isLimitViolated(Boolean)

Whether or not target SoC exceeds upper SoC limit.

timestamp(String)

Time of the latest SoC limit reading.

upperSocLimit(Int)

Maximum level of charge allowed by the battery relative to its capacity (in percent).

Example

{
  "upperSocLimit": 1,
  "timestamp": "abc123",
  "isLimitViolated": true
}

StatementBillingDocumentConnectionTypeConnection

A statement is a billing document that contains all entries on a ledger during a period of time. A customer can understand how their ledger's balance has changed by looking at each statement in series.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([StatementBillingDocumentConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": StatementBillingDocumentConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

StatementBillingDocumentConnectionTypeEdge

A Relay edge containing a StatementBillingDocumentConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(StatementBillingDocumentType)

The item at the end of the edge

Example

{
  "node": StatementBillingDocumentType,
  "cursor": "abc123"
}

StatementBillingDocumentType

A statement is a billing document that contains all entries on a ledger during a period of time. A customer can understand how their ledger's balance has changed by looking at each statement in series.

Fields

NameDescription
annulledBy(AnnulmentBillingDocumentType)

Billing document that annuls this statement.

documentDebtPosition(BillingDocumentPositionType)

Position of the billing document in the delinquent debt tracking system.

dueDate(Date)

The final date before missing payment is considered overdue.

earliestChargeAt(DateTime)

The earliest charge date of the statement.

endAt(DateTime!)

The end of the statement's period.

firstIssuedAt(DateTime)

The date and time the statement was sent to the customer.

id(Int)

ID for the statement billing document.

identifier(String)

The unique reference of the statement that can be used for identifying the statement externally.

isFinal(Boolean)

Whether this statement is marked as final.

latestChargeAt(DateTime)

The latest charge date of the statement.

paymentDueDate(Date)

The date due for payment for the statement.

Deprecated

The 'paymentDueDate' field is deprecated.

This field name is ambiguous and inconsistently populated. Use `paymentDate` for the date on which payment will be collected. Use `dueDate` for the last date any payment can be made before the bill is considered overdue.

- Marked as deprecated on 2026-06-15.
- Scheduled for removal on or after 2027-08-15.

pdfUrl(String)

URL to the PDF of the statement.

scheduledPaymentDate(Date)

The scheduled date for payment (may be before the due_date).

startAt(DateTime!)

The start of the statement's period.

totalCharges(StatementTotalType)

The total amounts for all charges on the statement.

totalCredits(StatementTotalType)

The total amounts for all credits on the statement.

transactions(BillTransactionConnectionTypeConnection)

Transactions on the statement

Arguments

after (String)

before (String)

first (Int)

last (Int)

orderBy (TransactionsOrderBy)

The order in which to return the transactions.

Example

{
  "id": 1,
  "identifier": "abc123",
  "startAt": "2020-01-01T00:00:00.000Z",
  "endAt": "2020-01-01T00:00:00.000Z",
  "firstIssuedAt": "2020-01-01T00:00:00.000Z",
  "earliestChargeAt": "2020-01-01T00:00:00.000Z",
  "latestChargeAt": "2020-01-01T00:00:00.000Z",
  "dueDate": "2020-01-01",
  "scheduledPaymentDate": "2020-01-01",
  "paymentDueDate": "2020-01-01",
  "isFinal": true,
  "pdfUrl": "abc123",
  "annulledBy": AnnulmentBillingDocumentType,
  "totalCharges": StatementTotalType,
  "totalCredits": StatementTotalType,
  "transactions": BillTransactionConnectionTypeConnection,
  "documentDebtPosition": BillingDocumentPositionType
}

Fields

NameDescription
grossTotal(Int)

The gross total amount for the statement (in minor currency units).

netTotal(Int)

The net total amount for the statement (in minor currency units).

taxTotal(Int)

The total amount of tax on the statement (in minor currency units).

Example

{
  "netTotal": 1,
  "taxTotal": 1,
  "grossTotal": 1
}

Fields

NameDescription
attachments(BillingAttachmentConnectionTypeConnection)

Arguments

after (String)

before (String)

first (Int)

last (Int)

billType(BillTypeEnum)

The type of the bill.

closingBalance(Int)

This field returns the closing balance of an issued statement.

consumptionEndDate(Date)

The last day of consumption that this statement includes.

consumptionStartDate(Date)

The first day of consumption that this statement includes.

fromDate(Date)

The date of the constituent bill covered from. This may differ from the service/consumption period shown on the bill document.

heldStatus(HeldStatus)

Retrieve the held status of a account statement.

id(ID)

The ID of the constituent bill.

isExternalBill(Boolean)

Whether the bill originated in Kraken or externally.

isFinal(Boolean)

Whether this statement is marked as final.

issuedDate(Date)

The date the bill was sent to the customer.

openingBalance(Int)

This field returns the opening balance of a statement.

paymentDueDate(Date)

The date the bill is due to be paid.

reversalsAfterClose(StatementReversalsAfterClose!)

How many charges have been reversed after the close date.

status(AccountStatementStatus)

Current status of the associated statement.

temporaryUrl(String)

Requesting this field generates a temporary URL at which bill is available. This URL will expire after approximately an hour. It is intended for redirection purposes, NOT persistence in any form (e.g. inclusion in emails or the body of a web page). This field can raise an error with errorClass NOT_FOUND if the bill document has not been created/issued yet. This field is deprecated use 'attachments' field instead.

Deprecated

The 'temporaryUrl' field is deprecated.

This field is deprecated. Use the 'attachments' field instead.

- Marked as deprecated on 2024-09-16.
- Scheduled for removal on or after 2025-09-01.

toAddress(String)

Email recipient address.

toDate(Date)

The date of the constituent bill covered to. This may differ from the service/consumption period shown on the bill document.

totalCharges(StatementTotalType)

The total amounts for all charges on the statement.

totalCredits(StatementTotalType)

The total amounts for all credits on the statement.

transactions(TransactionConnectionTypeConnection)

Transactions on the bill.

Arguments

after (String)

before (String)

first (Int)

last (Int)

userId(Int)

Email recipient user ID.

Example

{
  "id": "abc123",
  "billType": "STATEMENT",
  "fromDate": "2020-01-01",
  "toDate": "2020-01-01",
  "temporaryUrl": "abc123",
  "issuedDate": "2020-01-01",
  "attachments": BillingAttachmentConnectionTypeConnection,
  "reversalsAfterClose": "ALL",
  "closingBalance": 1,
  "openingBalance": 1,
  "isExternalBill": true,
  "transactions": TransactionConnectionTypeConnection,
  "userId": 1,
  "toAddress": "abc123",
  "paymentDueDate": "2020-01-01",
  "consumptionStartDate": "2020-01-01",
  "consumptionEndDate": "2020-01-01",
  "isFinal": true,
  "status": "OPEN",
  "heldStatus": HeldStatus,
  "totalCharges": StatementTotalType,
  "totalCredits": StatementTotalType
}

Fields

NameDescription
costExclTax(EstimatedMoneyType)

Monetary cost of the statistic (excluding tax), if applicable.

costInclTax(EstimatedMoneyType)

Monetary cost of the statistic (including tax), if applicable.

description(String)

Description of the statistic for the parent node.

label(String)

Display label of the statistic for the parent node.

type(ReadingStatisticTypeEnum)

The type of statistic being measured for the parent node.

value(Decimal)

Consumption / generation value of the statistic, if applicable.

Example

{
  "type": "STANDING_CHARGE_COST",
  "label": "abc123",
  "description": "abc123",
  "costExclTax": EstimatedMoneyType,
  "costInclTax": EstimatedMoneyType,
  "value": "1.0"
}

StopAutomatedPayments

Output type of the stopAutomatedPayments mutation.

Fields

NameDescription
accountNumber(String)

Number of the account for which automated payments were stopped.

Example

{
  "accountNumber": "abc123"
}

StoreBankDetailsForLead

Output type of the storeBankDetailsForLead mutation.

Fields

NameDescription
paymentMethodReference(String)

Reference of the mandate generated for the lead.

Example

{
  "paymentMethodReference": "abc123"
}

StoreDirectDebitPaymentMethodDetails

Output type of the storeDirectDebitPaymentMethodDetails mutation.

Fields

NameDescription
storedPaymentMethodDetailsReference(String)

Example

{
  "storedPaymentMethodDetailsReference": "abc123"
}

StorePaymentInstruction

Output type of the storePaymentInstruction mutation.

Fields

NameDescription
paymentInstruction(PaymentInstructionType)

The stored payment instruction.

Example

{
  "paymentInstruction": PaymentInstructionType
}

StreetRegistryConnection

Connection type for street registry entries in Germany.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([StreetRegistryEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": StreetRegistryEdge,
  "totalCount": 1,
  "edgeCount": 1
}

StreetRegistryEdge

A Relay edge containing a StreetRegistry and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(StreetRegistryType)

The item at the end of the edge

Example

{
  "node": StreetRegistryType,
  "cursor": "abc123"
}

StreetRegistryType

A street registry entry mapping streets to municipalities and network operators.

Fields

NameDescription
city(String!)

The city or town name.

electricityNetworkOperator(NetworkOperatorType)

The electricity network operator for this street.

gasNetworkOperator(NetworkOperatorType)

The gas network operator for this street (if applicable).

id(ID!)

The unique identifier of the street registry entry.

municipality(MunicipalityType!)

The municipality to which this street belongs.

postalCode(String!)

The postal code of the street.

streetName(String!)

The name of the street.

streetNumberFrom(String)

The starting street number of the range (if applicable).

streetNumberTo(String)

The ending street number of the range (if applicable).

validFrom(Date!)

The date from which this street registry entry is valid.

validTo(Date)

The date until which this street registry entry is valid (if applicable).

Example

{
  "id": "abc123",
  "streetName": "abc123",
  "streetNumberFrom": "abc123",
  "streetNumberTo": "abc123",
  "postalCode": "abc123",
  "city": "abc123",
  "municipality": MunicipalityType,
  "electricityNetworkOperator": NetworkOperatorType,
  "gasNetworkOperator": NetworkOperatorType,
  "validFrom": "2020-01-01",
  "validTo": "2020-01-01"
}

Fields

NameDescription
characteristic(CharacteristicType)

The product characteristic.

stringValue(String!)

The string value of the characteristic.

value(String)

A string representation of a characteristic value, for convenience.

Example

{
  "value": "abc123",
  "characteristic": CharacteristicType,
  "stringValue": "abc123"
}

StringType

Graphene type object to represent string values

Fields

NameDescription
stringValue(String!)

Value of this field.

Example

{
  "stringValue": "abc123"
}

SubmitAllowedRepayment

Output type of the submitAllowedRepayment mutation.

Fields

NameDescription
repaymentId(ID)

The repayment ID.

repaymentStatus(RepaymentRequestStatus)

The current status of the repayment request.

Example

{
  "repaymentId": "abc123",
  "repaymentStatus": "REQUESTED"
}

SubmitCustomerFeedback

Output type of the submitCustomerFeedback mutation.

Fields

NameDescription
customerFeedback(CustomerFeedbackType)

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "customerFeedback": CustomerFeedbackType,
  "possibleErrors": [PossibleErrorType]
}

SubmitRepaymentRequest

Output type of the submitRepaymentRequest mutation.

Fields

NameDescription
repaymentRequest(RequestRepaymentOutputType)

The newly created repayment request.

Example

{
  "repaymentRequest": RequestRepaymentOutputType
}

SupplementaryLedgerType

Ledgers provide the foundation of Kraken’s bookkeeping functionality. Similar to a bank account, they allow us to keep track of financial activity on a particular Kraken account.

Fields

NameDescription
currentBalance(Int)

The current final balance of the ledger in pence.

id(ID)

Deprecated

The 'ledgerId' field is deprecated.

Please use 'ledgerNumber' instead. This is in the form of 'L-123456789A'

- Marked as deprecated on 2024-10-22.
- Scheduled for removal on or after 2025-06-25.

ledgerType(String)

name(String)

The display name of the ledger.

number(String)

The canonical name of the ledger.

paymentAdequacy(PaymentAdequacyDetailsType)

Example

{
  "id": "abc123",
  "name": "abc123",
  "ledgerType": "abc123",
  "number": "abc123",
  "currentBalance": 1,
  "paymentAdequacy": PaymentAdequacyDetailsType
}

Fields

NameDescription
brandId(Int)

supplierId(Int)

supplierName(String)

supplierNumber(String)

Example

{
  "brandId": 1,
  "supplierId": 1,
  "supplierName": "abc123",
  "supplierNumber": "abc123"
}

SupplyOrServiceCharge

Supporting information for a customer charge resulting from a supply or service agreement

Fields

NameDescription
agreements(AgreementConnection)

Agreements which were charged

Arguments

after (String)

before (String)

first (Int)

last (Int)

id(ID!)

The ID of the charge.

period(Period!)

The period that was charged.

Example

{
  "id": "abc123",
  "period": Period,
  "agreements": AgreementConnection
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([SupplyPointConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": SupplyPointConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

SupplyPointConnectionTypeEdge

A Relay edge containing a SupplyPointConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(SupplyPointType)

The item at the end of the edge

Example

{
  "node": SupplyPointType,
  "cursor": "abc123"
}

Fields

NameDescription
externalIdentifier(String)

Supply point external identifier.

marketName(String)

Supply point market name.

requestedSupplyStartDate(Date)

Requested supply start date.

selectedProduct(SelectedProductType)

The selected product information for this supply point or None if no product is selected.

Example

{
  "externalIdentifier": "abc123",
  "marketName": "abc123",
  "requestedSupplyStartDate": "2020-01-01",
  "selectedProduct": SelectedProductType
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([SupplyPointInterfaceEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": SupplyPointInterfaceEdge,
  "totalCount": 1,
  "edgeCount": 1
}

SupplyPointInterfaceEdge

A Relay edge containing a SupplyPointInterface and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(CommonSupplyPointInterface)

The item at the end of the edge

Example

{
  "node": CommonSupplyPointInterface,
  "cursor": "abc123"
}

SupplyPointTaxAdjustmentType

Represents a tax adjustment for a specific supply point.

Fields

NameDescription
adjustmentType(String)

The type of tax adjustment (e.g., EXEMPTION, REDUCTION).

effectiveFrom(DateTime)

When this adjustment becomes effective.

effectiveTo(DateTime)

When this adjustment ends (null if open-ended).

qualifyingUsage(Decimal)

The proportion of usage that qualifies for the adjustment (0-1).

supplyPointId(ID)

The ID of the supply point.

taxCategory(String)

The tax category for this adjustment.

taxSubcategory(String)

The tax subcategory for this adjustment.

Example

{
  "supplyPointId": "abc123",
  "taxCategory": "abc123",
  "taxSubcategory": "abc123",
  "qualifyingUsage": "1.0",
  "adjustmentType": "abc123",
  "effectiveFrom": "2020-01-01T00:00:00.000Z",
  "effectiveTo": "2020-01-01T00:00:00.000Z"
}

SupplyPointType

Represents a SupplyPoint.

Fields

NameDescription
devices(DevicesConnection)

Get list of devices under a supply point.

Arguments

after (String)

before (String)

deviceIdentifiers ([String])

The ids of the devices to get. If not provided, all devices for the supply point will be returned.

first (Int)

last (Int)

externalIdentifier(String)

The external identifier of the supply point.

id(ID!)

The ID of the supply point.

marketName(String!)

The market this supply point belongs to.

property(PropertyType)

The supply point's property.

readings(Readings)

Get readings from a readable device e.g., a supply point, device, or register.

Arguments

endAt (DateTime!)

The exclusive end of the time period as an isoformatted string.

readingType (ReadingTypes!)

Get readings of only this type.

startAt (DateTime!)

The inclusive start of the time period as an isoformatted string.

timeGranularity (TimeGranularities)

Time buckets to group readings into.

timezone (String)

The timezone in which to return readings.

units ([Units])

Optional filter to return readings only for specific list of units or unit (e.g., KILOWATTHOURS, METERSCUBED, LITER, etc.).

Example

{
  "id": "abc123",
  "marketName": "abc123",
  "externalIdentifier": "abc123",
  "readings": Readings,
  "property": PropertyType,
  "devices": DevicesConnection
}

SupplyProductTagType

A product tag.

Fields

NameDescription
code(String)

Tag code.

displayName(String)

Tag display name.

Example

{
  "code": "abc123",
  "displayName": "abc123"
}

SupplyProductType

GraphQL type for a supply product.

Fields

NameDescription
availabilityStatus(ProductAvailability)

The product availability status.

availableFrom(DateTime)

The date and time the product is available from.

availableTo(DateTime)

The date and time the product is available to.

brandCode(String)

The brand code of the product.

code(String)

The product code.

description(String)

The product description.

displayName(String)

The product description.

endsAt(DateTime)

The date the product ends.

fullName(String)

The product title.

id(ID!)

The product ID.

isHidden(Boolean)

Whether the product is hidden.

marketName(String)

The name of the market the product belongs to.

notes(String)

The product notes.

params(JSONString)

The product parameters.

rates([ApplicableRateType!]!)

Rates applicable to the product.

tags([SupplyProductTagType!]!)

Tags associated with the product.

term(Int)

The product term in months.

termsAndConditions([TermsAndConditionsType!]!)

Terms and conditions for this market supply product.

termsAndConditionsTypes([TermsAndConditionsType!]!)

Deprecated alias of 'termsAndConditions'.

Deprecated

The 'termsAndConditionsTypes' field is deprecated.

This field returned the incorrect terms and conditions. Please use 'termsAndConditions' instead.

- Marked as deprecated on 2026-07-14.
- Scheduled for removal on or after 2026-09-14.

termsContractType(String)

The product contract type.

Example

{
  "id": "abc123",
  "brandCode": "abc123",
  "marketName": "abc123",
  "code": "abc123",
  "notes": "abc123",
  "fullName": "abc123",
  "displayName": "abc123",
  "description": "abc123",
  "availableFrom": "2020-01-01T00:00:00.000Z",
  "availableTo": "2020-01-01T00:00:00.000Z",
  "isHidden": true,
  "term": 1,
  "endsAt": "2020-01-01T00:00:00.000Z",
  "availabilityStatus": "EVERYONE",
  "termsContractType": "abc123",
  "termsAndConditions": TermsAndConditionsType,
  "termsAndConditionsTypes": TermsAndConditionsType,
  "params": {"key": "value"},
  "tags": SupplyProductTagType
}

SuspendDeviceControl

Output type of the suspendControl mutation.

Fields

NameDescription
krakenflexDevice(KrakenFlexDeviceType)

Example

{
  "krakenflexDevice": KrakenFlexDeviceType
}

SwitchAccountToVariablePaymentSchedule

Output type of the switchAccountToVariablePaymentSchedule mutation.

Fields

NameDescription
schedule(PaymentScheduleType!)

New payment schedule.

Example

{
  "schedule": PaymentScheduleType
}

TagType

Represents a tag used for classifying offerings and products.

Fields

NameDescription
code(String!)

Unique tag code.

displayName(String!)

Display name of the tag.

Example

{
  "code": "abc123",
  "displayName": "abc123"
}

Fields

NameDescription
electricityTariffs([Product])

gasTariffs([Product])

Example

{
  "electricityTariffs": [Product],
  "gasTariffs": [Product]
}

Fields

NameDescription
error(String)

The error message if the task failed.

result(JSONString)

The result of the task.

status(TaskStatusEnum)

The status of the task.

Example

{
  "status": "STARTED",
  "result": {"key": "value"},
  "error": "abc123"
}

TaxAdjustmentConfigurationType

Represents a tax adjustment configuration term in a contract.

This term stores tax adjustment details for supply points associated with the contract.

Fields

NameDescription
adjustments([SupplyPointTaxAdjustmentType])

List of supply point tax adjustments.

description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "adjustments": [SupplyPointTaxAdjustmentType]
}

Fields

NameDescription
id(ID!)

The ID of the operations team.

name(String!)

The name of the operations team.

ref(String!)

The team reference for routing (e.g., 'OPERATIONSGROUP.TEAM.TEAMA').

Example

{
  "id": "abc123",
  "name": "abc123",
  "ref": "abc123"
}

Fields

NameDescription
name(String!)

The name of the team group (e.g., 'GROUP_A').

ref(String!)

The team group reference for routing (e.g., 'OPERATIONSGROUP.GROUP.GROUPA').

Example

{
  "name": "abc123",
  "ref": "abc123"
}

Fields

NameDescription
friendlyName(String!)

The human-readable location name (e.g., 'London').

ref(String!)

The location reference for routing (e.g., 'OPERATIONS_GROUP.LOCATION.London').

Example

{
  "ref": "abc123",
  "friendlyName": "abc123"
}

TemporarySpecialCircumstanceRecordType

Any special circumstances that the user has notified us about, which may entitle them to some specialist services. These circumstances have an end date, after which they will not longer apply. Having young children is an example of this in the UK.

Fields

NameDescription
createdAt(DateTime)

The date and time the special circumstance record was created.

expiryDate(Date)

id(ID)

internalCode(String)

summary(String)

Example

{
  "id": "abc123",
  "summary": "abc123",
  "internalCode": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "expiryDate": "2020-01-01"
}

TermTemplateComponentType

Represents a contract term template component within an offering.

Fields

NameDescription
component(TermTemplateType!)

The contract term template associated with this component.

identifier(ID!)

Unique identifier of the component.

initialQuantity(Int!)

Initial/default quantity for this component.

maximumQuantity(Int!)

Maximum quantity of this component that can be selected.

minimumQuantity(Int!)

Minimum quantity of this component that can be selected.

Example

{
  "identifier": "abc123",
  "minimumQuantity": 1,
  "maximumQuantity": 1,
  "initialQuantity": 1
}

TermTemplateType

Represents a contract term template in the catalog.

Fields

NameDescription
description(String!)

The description of this contract term template.

name(String!)

The name of this contract term template.

templateData(JSONString!)

The data associated with this contract term template.

termType(String!)

The type of contract term.

Example

{
  "termType": "abc123",
  "templateData": {"key": "value"},
  "name": "abc123",
  "description": "abc123"
}

TerminalError

A step that indicates the onboarding journey has encountered an error that cannot be resolved within the current onboarding flow.

This step cannot be completed.

Fields

NameDescription
errors([TerminalErrorType]!)

List of errors that cannot be resolved within the current onboarding journey.

id(ID)

A unique identifier for this onboarding step.

Example

{
  "id": "abc123",
  "errors": TerminalErrorType
}

TerminalErrorType

A type that returns a terminal error which is an error that cannot be resolved by the onboarding journey.

Fields

NameDescription
description(String)

Description of the terminal error.

errorCode(String!)

Reference to the terminal error.

Example

{
  "errorCode": "abc123",
  "description": "abc123"
}

TerminateAgreement

Output type of the terminateAgreement mutation.

Fields

NameDescription
agreement(CommonAgreementType)

The created agreement.

possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

Example

{
  "agreement": CommonAgreementType,
  "possibleErrors": [PossibleErrorType]
}

Fields

NameDescription
contract(Contract)

The contract terminated.

Example

{
  "contract": Contract
}

TerminateCreditTransferPermission

Output type of the terminateCreditTransferPermission mutation.

Fields

NameDescription
validTo(DateTime)

Datetime when the credit transfer permission ends.

Example

{
  "validTo": "2020-01-01T00:00:00.000Z"
}

TerminationFeeType

Represents the termination term of a contract.

Fields

NameDescription
amount(Decimal)

The amount of the termination fee.

description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

feeType(TerminationFeeTypeEnum)

The type of termination fee.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

marketName(NonEmptyString)

The market associated with the termination fee.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "amount": "1.0",
  "feeType": "FLAT",
  "marketName": NonEmptyString
}

TermsAndConditionsConnectionTypeConnection

Pagination for terms and conditions.

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([TermsAndConditionsConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": TermsAndConditionsConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

TermsAndConditionsConnectionTypeEdge

A Relay edge containing a TermsAndConditionsConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(TermsAndConditionsType)

The item at the end of the edge

Example

{
  "node": TermsAndConditionsType,
  "cursor": "abc123"
}

Fields

NameDescription
name(String)

The display name of the terms and conditions.

s3Url(String)

The S3 URL to the terms and conditions file.

Example

{
  "name": "abc123",
  "s3Url": "abc123"
}

Fields

NameDescription
brandCode(String)

effectiveFrom(DateTime)

html(String)

The html of the terms and conditions document rendered as a JSON string.

markdown(String)

The markdown text of the terms and conditions.

name(String)

pdfUrl(String)

version(String)

Example

{
  "name": "abc123",
  "pdfUrl": "abc123",
  "brandCode": "abc123",
  "markdown": "abc123",
  "html": "abc123",
  "version": "abc123",
  "effectiveFrom": "2020-01-01T00:00:00.000Z"
}

TeslaModifyScopes

A step which indicates that the Tesla permission scopes need to be granted by the user in order to register their vehicle.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

modifyScopesUri(String)

Returns the URI to update the permission scopes.

redirectUri(String)

The redirect URI to return to after updating the permission scopes.

Example

{
  "id": "abc123",
  "modifyScopesUri": "abc123",
  "redirectUri": "abc123"
}

TeslaRegistrationFailed

A step which indicates that the Tesla registration failed and the user must re-grant permission scopes to register their vehicle.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

modifyScopesSelected(Boolean)

Returns:- true if user wants to update permissions scopes.- false if user wants to retry the OAuth journey.- null if user has not made a decision.

Example

{
  "id": "abc123",
  "modifyScopesSelected": true
}

TeslaSetupVirtualKey

A step which indicates that the user must add the given URI as a virtual key in their Tesla account.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

key(String)

The name of the key to add.

uri(String)

The URI to add as a virtual key in the user's Tesla account.

Example

{
  "id": "abc123",
  "key": "abc123",
  "uri": "abc123"
}

TestCharge

A step which indicates if we're able to test charge the user's vehicle(s).

Fields

NameDescription
error(TestChargeError)

Returns the error raised from a failed test charge.

id(ID)

A unique identifier for this onboarding step.

isReady(Boolean)

Returns true if the device is ready for a test charge.

isStarted(Boolean)

Returns true if the test charge has started.

status(TestDispatchStatus)

Returns the dispatch status of test charge.

Deprecated

The 'status' field is deprecated.

Please use 'isStarted' and 'error' instead.

- Marked as deprecated on 2024-12-12.
- Scheduled for removal on or after 2025-02-12.

Example

{
  "id": "abc123",
  "error": TestChargeError,
  "isReady": true,
  "status": "TRIGGERED",
  "isStarted": true
}

TestChargeError

Errors can be of two kinds (assuming the user is querying this type with message, reasons, errorType, and descriptions fields):

  1. If we were unable to start a test charge, the response will be: { "message": "TestChargeRefused", "reasons": [Returns a list of values from `TestChargeRefusalReason`], "errorType": "UNABLE_TO_INITIATE_TEST_CHARGE", "descriptions": [Returns a list of descriptions for the refusal reasons] }

    Where descriptions can be: - DEVICE_LIVE: "device is already live" - DEVICE_ONBOARDING_IN_PROGRESS: "test dispatch already in progress" - DEVICE_RETIRED: "device is retired" - DEVICE_SUSPENDED: "device is suspended" - DEVICE_DISCONNECTED: "device is disconnected" - DEVICE_ALREADY_CHARGING: "device is already charging" - DEVICE_AWAY_FROM_HOME: "device is away from home" - DEVICE_NO_LOCATION_CONFIGURED: "device has no location configured" - DEVICE_LOCATION_UNABLE_TO_IDENTIFY: "unable to identify device location" - DEVICE_LOCATION_MISSING: "device location is missing"

  2. If an error occurred during a test charge, the response will be: { "message": "Test dispatch failed", "reasons": [Returns a list of values from `TestDispatchAssessmentFailureReason`], "errorType": "UNABLE_TO_COMPLETE_TEST_CHARGE", "descriptions": [Returns a list of descriptions for the refusal reasons] }

    Where descriptions can be: - ASSESSMENTS_FAILED: "Both power-based and charge status-based assessments failed" - NOT_AT_HOME: "Device location not at home" - UNKNOWN: "Unknown failure" - UNABLE_TO_COMMUNICATE: "Unable to communicate with device" - DEVICE_DISCONNECTED: "Device disconnected" - SOC_LIMIT_REACHED: "State of charge limit reached" - ERROR: "Could not fetch the test charge failure reason" - NONE: "No failure reason"

Fields

NameDescription
descriptions([String])

A list of error descriptions for a failed test charge attempt.

errorType(TestChargeErrorType)

The type of test charge error.

message(String)

A human readable error message.

reasons([String])

A list of reasons for a failed test charge attempt.

refusalReasons([TestChargeRefusalReason])

A list of refusal reasons from the failed test charge attempt.

Deprecated

The 'refusalReasons' field is deprecated.

Please use `errorType` and `reasons` instead.

- Marked as deprecated on 2025-01-07.
- Scheduled for removal on or after 2025-01-29.

Example

{
  "message": "abc123",
  "refusalReasons": "DEVICE_LIVE",
  "errorType": "UNABLE_TO_INITIATE_TEST_CHARGE",
  "reasons": ["abc123"],
  "descriptions": ["abc123"]
}

TextType

A block of text.

Fields

NameDescription
id(ID)

Unique identifier of the object.

textAlignment(Alignment)

The text alignment.

textStyle(TextStyleV1)

The text style, i.e. header, body.

typename(String)

The name of the object's type.

value(String!)

The text content.

Example

{
  "value": "abc123",
  "textStyle": "TITLE1",
  "textAlignment": "START",
  "id": "abc123",
  "typename": "abc123"
}

ThirdPartyCompleteDeviceRegistration

Output type of the thirdPartyCompleteDeviceRegistration mutation.

Fields

NameDescription
success(ThirdPartyCompleteDeviceRegistrationType)

The response showing account validity and optional tariff information.

Example

{
  
}

Fields

NameDescription
isAccountValid(Boolean!)

If the account is valid.

isTariffSwitchInProgress(Boolean!)

If a switch to the required tariff is in progress.

tariff(ThirdPartyTariffsType)

The tariff the account is on, if the switch is complete.

Example

{
  "isAccountValid": true,
  "isTariffSwitchInProgress": true
}

ThirdPartyOrganizationType

Type for the third party organization.

Fields

NameDescription
name(String!)

The name of the third party.

permissions([ThirdPartyPermission])

Holds information about the permissions of the current viewer.

Example

{
  "name": "abc123"
}

ThirdPartyPermission

Holds information about a specific permission.

Fields

NameDescription
permission(String)

The short name of the permission.

Example

{
  "permission": "abc123"
}

Fields

NameDescription
daysOfWeek([String]!)

Day(s) of the week of the tariff interval.

endTime(String!)

Local 24hr end time of the tariff interval (format hh:mm).

startTime(String!)

Local 24hr start time of the tariff interval (format hh:mm).

tariffType(String!)

The type of tariff this is (e.g. peak or offPeak).

Example

{
  "startTime": "abc123",
  "endTime": "abc123",
  "daysOfWeek": "abc123",
  "tariffType": "abc123"
}

Fields

NameDescription
currency(String!)

Currency according to the ISO 4217 standard.

price(Decimal!)

Price per kWh in the given currency.

type(String!)

The type of tariff this is (e.g. peak or offPeak).

Example

{
  "currency": "abc123",
  "price": "1.0",
  "type": "abc123"
}

Fields

NameDescription
tariffIntervals([ThirdPartyTariffIntervalType]!)

Tariff intervals of the charging location.

tariffs([ThirdPartyTariffType]!)

Tariff rates of the charging location.

Example

{
  
}

TimeOfUseOverrideType

Represents a time-of-use override to be applied in a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true
}

Fields

NameDescription
rates([TimeOfUseTimeslotUnitRate]!)

The time of use unit rates.

Example


Fields

NameDescription
name(String!)

Name of the time of use scheme.

timeslots([TimeSlotWithActivationRuleType!]!)

List of timeslots in the scheme.

timezone(String)

Timezone of the time of use scheme.

Example

{
  "name": "abc123",
  "timezone": "abc123",
  "timeslots": TimeSlotWithActivationRuleType
}

Fields

NameDescription
activeFromTime(Time!)

The time from which the timeslot is active.

activeToTime(Time!)

The time until which the timeslot is active.

Example

{
  "activeFromTime": "00:00:00.000Z",
  "activeToTime": "00:00:00.000Z"
}

Fields

NameDescription
grossRateInformation([GrossRateInformation]!)

A list of gross rate information.

latestGrossUnitRateCentsPerKwh(Decimal!)

The latest value of the gross unit rate, in ct/kWh.

netUnitRateCentsPerKwh(Decimal!)

The net unit rate, in ct/kWh.

timeslotActivationRules([TimeOfUseTimeslotActivationRule]!)

Activation rules that describe the timeslot within which this rate applies.

timeslotName(String!)

The name of the timeslot for this unit rate.

Example

{
  "timeslotName": "abc123",
  "timeslotActivationRules": TimeOfUseTimeslotActivationRule,
  "netUnitRateCentsPerKwh": "1.0",
  "latestGrossUnitRateCentsPerKwh": "1.0",
  "grossRateInformation": GrossRateInformation
}

TimeSeriesSpecificationEligibilityScheduleType

Represents a schedule for time series specification eligibility within a contract.

Note: This type is a stub, and will be fleshed out in the future.

Fields

NameDescription
effectivePeriod(RateGroupEligibilityPeriodType)

The period during which this eligibility is effective.

isEligible(Boolean)

Indicates if the time series specification is eligible.

productCode(String)

The product code associated with the time series specification.

supplyPointIdentifier(String)

The external identifier of the supply point this schedule targets. When null, the schedule targets all agreements for the product.

timeSeriesSpecificationCode(String)

The time series specification code.

Example

{
  "productCode": "abc123",
  "timeSeriesSpecificationCode": "abc123",
  "supplyPointIdentifier": "abc123",
  "isEligible": true,
  "effectivePeriod": RateGroupEligibilityPeriodType
}

Fields

NameDescription
activeFrom(Time!)

Active from time.

activeTo(Time!)

Active to time.

holidays(Boolean!)

Indicates applies on holidays or not.

saturdays(Boolean!)

Indicates applies on Saturdays or not.

season(SeasonType!)

Season the rule applies to.

sundays(Boolean!)

Indicates applies on Sundays or not.

timeslot(String!)

Timeslot name.

weekdays(Boolean!)

Indicates applies on weekdays or not.

weekends(Boolean!)

Indicates applies on weekends or not.

workdays(Boolean!)

Indicates applies on workdays or not.

Example

{
  "timeslot": "abc123",
  "activeFrom": "00:00:00.000Z",
  "activeTo": "00:00:00.000Z",
  "weekdays": true,
  "weekends": true,
  "saturdays": true,
  "sundays": true,
  "workdays": true,
  "holidays": true,
  "season": SeasonType
}

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

targetMarketConfiguration([TrancheTargetMarketConfigurationType])

The target market configurations for this tranche.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "targetMarketConfiguration": [TrancheTargetMarketConfigurationType]
}

Fields

NameDescription
calculationPeriodFrequency(CalculationPeriodFrequency)

The frequency at which the calculation period is assessed.

marketName(String)

The name of the market this target configuration applies to.

useConsumptionForRate(Boolean)

Whether actual consumption should be used in the rate calculation.

useResidualVolumeForRate(Boolean)

Whether residual volume should be used in the rate calculation.

Example

{
  "marketName": "abc123",
  "calculationPeriodFrequency": "MONTHLY",
  "useConsumptionForRate": true,
  "useResidualVolumeForRate": true
}

Fields

NameDescription
amount(Decimal)

The residual fee amount for this market.

marketName(String)

The name of the market this residual fee configuration applies to.

unit(String)

The unit for the residual fee amount (e.g. '£/MWh').

Example

{
  "marketName": "abc123",
  "unit": "abc123",
  "amount": "1.0"
}

Fields

NameDescription
description(NonEmptyString)

The description of the term.

displayName(NonEmptyString)

The display name of the term.

identifier(NonEmptyString)

The identifier of the term.

isVariable(Boolean)

Whether the term is variable.

markets([TrancheTargetResidualFeeMarketType])

The per-market residual fees.

type(NonEmptyString)

The type of the term.

Example

{
  "type": NonEmptyString,
  "displayName": NonEmptyString,
  "description": NonEmptyString,
  "identifier": NonEmptyString,
  "isVariable": true,
  "markets": [TrancheTargetResidualFeeMarketType]
}

Fields

NameDescription
gross(Int)

The gross amount (in minor currency units).

net(Int)

The net amount (in minor currency units).

tax(Int)

The amount of tax (in minor currency units).

Example

{
  "net": 1,
  "tax": 1,
  "gross": 1
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([TransactionConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": TransactionConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

TransactionConnectionTypeEdge

A Relay edge containing a TransactionConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(TransactionType)

The item at the end of the edge

Example

{
  "node": TransactionType,
  "cursor": "abc123"
}

TransferLeadOpportunities

Output type of the transferLeadOpportunities mutation.

Fields

NameDescription
opportunitiesTransferred(Int)

Number of opportunities transferred.

Example

{
  "opportunitiesTransferred": 1
}

TransferLedgerBalance

Output type of the transferLedgerBalance mutation.

Fields

NameDescription
balanceTransfer(AccountBalanceTransferType)

Balance transfer details.

Example

{
  
}

TransferLoyaltyPointsBetweenUsers

Output type of the transferLoyaltyPointsBetweenUsers mutation.

Fields

NameDescription
pointsTransferred(Int)

The number of loyalty points that were transferred.

Example

{
  "pointsTransferred": 1
}

Fields

NameDescription
accounts(AccountConnectionTypeConnection!)

The accounts related to this trigger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

accountsLinkedAt(DateTime)

The datetime that account linking was completed for this trigger. If null, the accounts field will be empty because linking hasn't occurred yet.

createdAt(DateTime!)

The date/time that the trigger was created.

id(String!)

The ID of the trigger.

messages(MessageConnection!)

The messages created in response to this trigger.

Arguments

after (String)

before (String)

first (Int)

last (Int)

processingStatus(TriggerProcessingStatus!)

The current processing status of this trigger.

triggerTypeCode(String!)

The trigger type code for this trigger.

Example

{
  "id": "abc123",
  "triggerTypeCode": "abc123",
  "createdAt": "2020-01-01T00:00:00.000Z",
  "accountsLinkedAt": "2020-01-01T00:00:00.000Z",
  "accounts": AccountConnectionTypeConnection,
  "processingStatus": "UNPROCESSED"
}

TriggerCollectionProcessMessage

Output type of the triggerCollectionProcessMessage mutation.

Fields

NameDescription
triggerResult(TriggerCollectionProcessMessageOutput)

Details of the triggered communication.

Example

{
  
}

Fields

NameDescription
fuguTriggerId(String)

The unique identifier of the triggered communication.

Example

{
  "fuguTriggerId": "abc123"
}

TriggerPostUploadOperations

Output type of the triggerPostUploadOperations mutation.

Fields

NameDescription
operationsTriggered(Boolean)

Example

{
  "operationsTriggered": true
}

TriggerStandalonePaymentRequest

Output type of the triggerStandalonePaymentRequest mutation.

Fields

NameDescription
paymentNotification(PaymentNotification)

Payment notification trigerred for standalone payment request.

Example

{
  "paymentNotification": PaymentNotification
}

UnenrollAccountFromLoyaltyProgram

Output type of the unenrollAccountFromLoyaltyProgram mutation.

Fields

NameDescription
outcome(UnenrollAccountFromLoyaltyProgramOutcome)

Outcome of the loyalty points campaign enrollment.

Example

{
  
}

Fields

NameDescription
hasUnenrolled(Boolean)

Indicates whether the account has been unenrolled from the loyalty points campaign.

Example

{
  "hasUnenrolled": true
}

UnsupportedCombination

A step that indicates the selected device is not compatible with the users existing devices.

This step cannot be completed and the user must select different device options to continue.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

Example

{
  "id": "abc123"
}

UpdateAPIException

Output type of the updateApiException mutation.

Fields

NameDescription
apiException(APIExceptionType)

The updated APIException.

Example

{
  
}

UpdateAPIExceptionNote

Output type of the updateApiExceptionNote mutation.

Fields

NameDescription
apiException(APIExceptionType)

The updates APIExceptionNote.

Example

{
  
}

UpdateAccountBillingAddress

Output type of the updateAccountBillingAddress mutation.

Fields

NameDescription
account(AccountType)

The updated account.

Example

{
  "account": AccountType
}

UpdateAccountBillingEmail

Output type of the updateAccountBillingEmail mutation.

Fields

NameDescription
account(AccountInterface)

Account that was changed.

Example

{
  "account": AccountInterface
}

UpdateAccountBillingName

Output type of the updateAccountBillingName mutation.

Fields

NameDescription
account(AccountInterface)

Account that was changed.

Example

{
  "account": AccountInterface
}

UpdateAccountConsents

Output type of the updateAccountConsents mutation.

Fields

NameDescription
consents([ConsentType!]!)

Consents linked to this account.

Example

{
  "consents": ConsentType
}

UpdateAccountReference

Output type of the updateAccountReference mutation.

Fields

NameDescription
accountReference(AccountReferenceType)

Example

{
  "accountReference": AccountReferenceType
}

UpdateAccountReferralStatus

Output type of the updateAccountReferralStatus mutation.

Fields

NameDescription
accountReferral(ReferralType)

The updated account referral instance.

Example

{
  "accountReferral": ReferralType
}

UpdateAccountUserCommsPreferencesMutationPayload

Output type of the updateCommsPreferences mutation.

Fields

NameDescription
clientMutationId(String)

A unique identifier for the client performing the mutation.

commsPreferences(AccountUserCommsPreferences)

emailFormat(String)

errors([ErrorType])

A list of validation errors.

fontSizeMultiplier(Float)

isOptedInMeterReadingConfirmations(Boolean)

isOptedInToClientMessages(Boolean)

isOptedInToOfferMessages(Boolean)

isOptedInToRecommendedMessages(Boolean)

isOptedInToSmsMessages(Boolean)

isOptedInToThirdPartyMessages(Boolean)

isOptedInToUpdateMessages(Boolean)

isUsingInvertedEmailColours(Boolean)

preferredHoldMusic(String)

Example

{
  "commsPreferences": AccountUserCommsPreferences,
  "clientMutationId": "abc123",
  "isOptedInToClientMessages": true,
  "isOptedInToOfferMessages": true,
  "isOptedInToRecommendedMessages": true,
  "isOptedInToUpdateMessages": true,
  "isOptedInToThirdPartyMessages": true,
  "isOptedInToSmsMessages": true,
  "isOptedInMeterReadingConfirmations": true,
  "isUsingInvertedEmailColours": true,
  "fontSizeMultiplier": 1.0,
  "emailFormat": "abc123",
  "preferredHoldMusic": "abc123",
  "errors": [ErrorType]
}

UpdateAccountUserConsents

Output type of the updateAccountUserConsents mutation.

Fields

NameDescription
accountUserConsents(AccountUserConsents)

All the consents for an account user.

Example

{
  "accountUserConsents": AccountUserConsents
}

UpdateAccountUserMutationPayload

Output type of the updateUserDetails mutation.

Fields

NameDescription
clientMutationId(String)

A unique identifier for the client performing the mutation.

dateOfBirth(Date)

The user's date of birth.

email(String)

The user's email address.

errors([ErrorType])

A list of validation errors.

familyName(String)

The user's family name.

givenName(String)

The user's given name.

landline(String)

The user's landline number.

mobile(String)

The user's mobile number.

pronouns(String)

The user's pronouns.

Example

{
  "errors": [ErrorType],
  "clientMutationId": "abc123",
  "givenName": "abc123",
  "familyName": "abc123",
  "email": "abc123",
  "mobile": "abc123",
  "dateOfBirth": "2020-01-01",
  "landline": "abc123",
  "pronouns": "abc123"
}

UpdateActivePurchase

Output type of the updateActivePurchase mutation.

Fields

NameDescription
goodsPurchase(GoodsPurchase)

Goods purchase updated.

Example

{
  "goodsPurchase": GoodsPurchase
}

Output type of the updateAffiliateLink mutation.

Fields

NameDescription
affiliateLink(AffiliateLinkType)

The updated affiliate link.

Example

{
  
}

UpdateAffiliateOrganisation

Output type of the updateAffiliateOrganisation mutation.

Fields

NameDescription
affiliateOrganisation(AffiliateOrganisationType)

The updated affiliate organisation.

Example

{
  
}

UpdateAgentAuxiliaryStatus

Output type of the updateAgentAuxiliaryStatus mutation.

Fields

NameDescription
success(Boolean)

Whether the auxiliary status was successfully updated.

Example

{
  "success": true
}

UpdateAgreementPeriod

Output type of the updateAgreementPeriod mutation.

Fields

NameDescription
account(AccountType)

Account responsible for the update agreement.

Example

{
  "account": AccountType
}

UpdateAgreementRescission

Output type of the updateAgreementRescission mutation.

Fields

NameDescription
agreementRescission(AgreementRescissionType)

The updated agreement rescission instance.

Example

{
  
}

UpdateAgreementRollover

Output type of the updateAgreementRollover mutation.

Fields

NameDescription
agreementRollover(AgreementRolloverType)

The update agreement rollover.

Example

{
  "agreementRollover": AgreementRolloverType
}

UpdateAutoTopUpAmount

Output type of the updateAutoTopUpAmount mutation.

Fields

NameDescription
schedule(PaymentScheduleType)

The new schedule created.

Example

{
  "schedule": PaymentScheduleType
}

UpdateBusiness

Output type of the updateBusiness mutation.

Fields

NameDescription
business(BusinessType)

The updated business.

Example

{
  "business": BusinessType
}

UpdateCampaignAccountExpiryDate

Output type of the updateCampaignAccountExpiryDate mutation.

Fields

NameDescription
campaignAccount(AccountCampaignType)

The campaign account with the updated expiry date.

Example

{
  "campaignAccount": AccountCampaignType
}

UpdateCollectionProcessRecordLatestStep

Output type of the updateCollectionProcessRecordLatestStep mutation.

Fields

NameDescription
updatedCollectionProcessRecord(UpdateCollectionProcessRecordLatestStepOutputType)

The updated collection process record.

Example

{
  
}

Fields

NameDescription
latestStep(CollectionProcessStepType)

The updated latest step of the collection process record.

number(String)

The number of the collection process record.

Example

{
  "number": "abc123"
}

UpdateCollectionProcessRecordToActive

Output type of the updateCollectionProcessRecordToActive mutation.

Fields

NameDescription
collectionProcessActivated(UpdateCollectionProcessRecordToActiveOutputType)

Whether the collection process was successfully updated.

Example

{
  
}

UpdateCollectionProcessRecordToActiveOutputType

Output for updating a Collection process Record to Active.

Fields

NameDescription
number(String)

The number of the collection process record.

status(CollectionProcessRecordStatusTypes)

The current status of the collection process record.

Example

{
  "number": "abc123",
  "status": "PENDING"
}

UpdateCollectionProcessRecordToComplete

Output type of the updateCollectionProcessRecordToComplete mutation.

Fields

NameDescription
collectionProcessComplete(UpdateCollectionProcessRecordToCompleteOutputType)

Whether the collection process was successfully updated.

Example

{
  
}

UpdateCollectionProcessRecordToCompleteOutputType

Output for updating a Collection process Record to Complete.

Fields

NameDescription
number(String)

The number of the collection process record.

status(CollectionProcessRecordStatusTypes)

The current status of the repayment request.

Example

{
  "number": "abc123",
  "status": "PENDING"
}

UpdateCommsDeliveryPreference

Output type of the updateCommsDeliveryPreference mutation.

Fields

NameDescription
account(AccountInterface)

Example

{
  "account": AccountInterface
}

UpdateDCAProceeding

Output type of the updateDcaProceeding mutation.

Fields

NameDescription
dcaProceedingUpdateStatus(DCAProceedingUpdateStatus)

Whether the update has been applied.

Example

{
  
}

UpdateDocumentAccessibilityPreference

Output type of the updateDocumentAccessibilityPreference mutation.

Fields

NameDescription
account(AccountType)

Account that was changed.

Example

{
  "account": AccountType
}

UpdateKnowledgeDatabaseArticleFromText

Output type of the updateKnowledgeDatabaseArticleFromText mutation.

Fields

NameDescription
articleId(Int)

The ID of the updated article.

Example

{
  "articleId": 1
}

UpdateLeadDetails

Output type of the updateLeadDetails mutation.

Fields

NameDescription
updatedLeadData(JSONString)

Arguments passed.

Example

{
  "updatedLeadData": {"key": "value"}
}

UpdateLeadStage

Output type of the updateLeadStage mutation.

Fields

NameDescription
updatedLeadData(JSONString)

Arguments passed.

Example

{
  "updatedLeadData": {"key": "value"}
}

UpdateMessageTags

Output type of the updateMessageTags mutation.

Fields

NameDescription
tags([InkTag!]!)

Confirmed tags.

Example

{
  
}

UpdateMetadata

Output type of the updateMetadata mutation.

Fields

NameDescription
metadata(Metadata)

Example

{
  "metadata": Metadata
}

UpdateNotesOnOpportunity

Output type of the updateNotesOnOpportunity mutation.

Fields

NameDescription
opportunityNumber(String)

The number of the opportunity.

Example

{
  "opportunityNumber": "abc123"
}

UpdateOfferGroupOnOpportunity

Output type of the updateOfferGroupOnOpportunity mutation.

Fields

NameDescription
opportunityNumber(String)

The number of the opportunity.

Example

{
  "opportunityNumber": "abc123"
}

UpdateOnSiteJobsAppointment

Output type of the updateOnSiteJobsAppointment mutation.

Fields

NameDescription
onSiteJobsAppointment(OnSiteJobsAppointmentType)

The Appointment that was updated.

Example

{
  
}

UpdateOnSiteJobsRequest

Output type of the updateOnSiteJobsRequest mutation.

Fields

NameDescription
onSiteJobsRequest(OnSiteJobsRequestType)

The updated request.

Example

{
  
}

UpdateOpportunityAssignment

Output type of the updateOpportunityAssignment mutation.

Fields

NameDescription
updatedOpportunityData(JSONString)

Arguments passed.

Example

{
  "updatedOpportunityData": {"key": "value"}
}

UpdateOpportunityDetails

Output type of the updateOpportunityDetails mutation.

Fields

NameDescription
updatedData(JSONString)

Arguments updated.

Example

{
  "updatedData": {"key": "value"}
}

UpdateOpportunityExtraDetails

Output type of the updateOpportunityExtraDetails mutation.

Fields

NameDescription
extraDetails(JSONString)

The opportunity's extra details to be added or updated.

Example

{
  "extraDetails": {"key": "value"}
}

UpdateOpportunityStage

Output type of the updateOpportunityStage mutation.

Fields

NameDescription
message(String)

Placeholder success message for now.

Example

{
  "message": "abc123"
}

UpdateOptionsLanguagePreference

Output type of the updateOptionsLanguagePreference mutation.

Fields

NameDescription
optionsLanguagePreference(OptionsLanguagePreferenceChoices)

The selected language preference.

Example

{
  "optionsLanguagePreference": "ENGLISH"
}

UpdatePassword

Output type of the updatePassword mutation.

Fields

NameDescription
viewer(AccountUserType)

The currently authenticated user.

This field requires the Authorization header to be set.

Example

{
  "viewer": AccountUserType
}

UpdatePaymentSchedulePaymentAmount

Output type of the updatePaymentSchedulePaymentAmount mutation.

Fields

NameDescription
paymentSchedule(PaymentScheduleType)

The payment schedule that is being updated.

Example

{
  "paymentSchedule": PaymentScheduleType
}

UpdatePaymentSchedulePaymentDay

Output type of the updatePaymentSchedulePaymentDay mutation.

Fields

NameDescription
paymentSchedule(PaymentScheduleType)

The payment schedule that is being updated.

Example

{
  "paymentSchedule": PaymentScheduleType
}

UpdatePortfolioOperationsTeam

Output type of the updatePortfolioOperationsTeam mutation.

Fields

NameDescription
portfolio(PortfolioType)

The updated portfolio.

Example

{
  "portfolio": PortfolioType
}

UpdateProductPricesOutput

Rate group prices for a product.

Fields

NameDescription
prices([RateGroupPrices!]!)

The rate group prices.

Example

{
  
}

UpdatePropertyAddress

Output type of the updatePropertyAddress mutation.

Fields

NameDescription
property(PropertyType)

The property whose address was updated.

Example

{
  "property": PropertyType
}

UpdateQuoteConfigurationOutput

Output for the updateQuoteConfiguration mutation.

Fields

NameDescription
quoteConfiguration(QuoteConfigurationType!)

The updated quote configuration.

Example

{
  
}

UpdateSiteworksRequest

Output type of the updateSiteworksRequest mutation.

Fields

NameDescription
siteworksRequest(CoreSiteworksRequestType)

The siteworks request after the update.

Example

{
  
}

UpdateUserMutation

Output type of the updateUser mutation.

Fields

NameDescription
possibleErrors([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

Please use the 'possibleErrors' query or the 'X-Kraken-Possible-Errors' header instead.

- Marked as deprecated on 2025-01-31.
- Scheduled for removal on or after 2025-03-01.

viewer(AccountUserType)

Example

{
  "viewer": AccountUserType,
  "possibleErrors": [PossibleErrorType]
}

UploadPostRequest

Information that should be used in the POST request to the S3 API.

For more details please see this.

Fields

NameDescription
fields(JSONString!)

key(String!)

url(String!)

Example

{
  "url": "abc123",
  "fields": {"key": "value"},
  "key": "abc123"
}

Fields

NameDescription
location(String)

Present for completed dispatches, otherwise null. The only relevant value is AT_HOME if present.

source(String)

Present for planned dispatches, otherwise null. Value can be smart-charge, test-charge or bump-charge.

Example

{
  "source": "abc123",
  "location": "abc123"
}

Fields

NameDescription
delta(Decimal)

Energy in kWh (import has a negative value).

deltaKwh(Int)

This field has been replaced by delta.

Deprecated

The 'deltaKwh' field is deprecated.

`delta` has replaced `deltaKwh` for increased precision.

- Marked as deprecated on 2024-04-19.
- Scheduled for removal on or after 2025-01-01.

end(DateTime!)

The end time of the dispatch.

endDt(String)

This field has been replaced by end.

Deprecated

The 'endDt' field is deprecated.

`end` has replaced `end_dt` for improved typing.

- Marked as deprecated on 2024-04-19.
- Scheduled for removal on or after 2025-01-01.

meta(UpsideDispatchMetaType)

start(DateTime!)

The start time of the dispatch.

startDt(String)

This field has been replaced by start.

Deprecated

The 'startDt' field is deprecated.

`start` has replaced `start_dt` for improved typing.

- Marked as deprecated on 2024-04-19.
- Scheduled for removal on or after 2025-01-01.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z",
  "startDt": "abc123",
  "endDt": "abc123",
  "deltaKwh": 1,
  "delta": "1.0",
  "meta": UpsideDispatchMetaType
}

UserActionReason

A type that returns a user action that needs to be completed for the device to be successfully registered.

Fields

NameDescription
description(String)

Description of the required user action.

uri(String)

An optional uri that, if provided, can navigate the user to where they can resolve this required action.

userAction(String)

Reference key to the required user action.

Example

{
  "userAction": "abc123",
  "description": "abc123",
  "uri": "abc123"
}

UserActionRequired

A type that returns user actions that need to be completed for the device to be successfully registered

Fields

NameDescription
errors([OnboardingError])

Errors raised while attempting to complete this step.

id(ID)

A unique identifier for this onboarding step.

userActions([UserActionReason])

List of actions the user must resolve in order for the device to be registered.

Example

{
  "id": "abc123",
  "userActions": [UserActionReason],
  "errors": [OnboardingError]
}

UserInputRequired

A type that returns user inputs that need to be provided for the device to be successfully registered

Fields

NameDescription
error(UserInputRequiredError)

An error describing which user inputs failed validation, if any.

id(ID)

A unique identifier for this onboarding step.

userInputs([UserInputType])

A list of requested inputs for a user to provide in order for the onboarding journey to continue.

Example

{
  "id": "abc123",
  "userInputs": [UserInputType],
  "error": UserInputRequiredError
}

Fields

NameDescription
message(String)

A human readable error message.

Example

{
  "message": "abc123"
}

Fields

NameDescription
description(String)

Human friendly description of the requested input.

isRequired(Boolean)

True if the requested user input is required.

isValidated(Boolean)

True if the submitted user input has been successfully validated.

isVerified(Boolean)

Verification against the device happens after validation is successful. False means the input must be corrected.

key(String)

Identifier for the requested user input.

regex(String)

An optional regex pattern used to validate the user input. Uses Python re module syntax (evaluated with re.fullmatch). None if no pattern validation is applied.

value(String)

The value that has been submitted for this input. Can be a string, integer, or boolean.

Example

{
  "key": "abc123",
  "description": "abc123",
  "value": "abc123",
  "isRequired": true,
  "isValidated": true,
  "regex": "abc123",
  "isVerified": true
}

UserManagedPayment

Represents the preference of the user to pay himself, instead of get charged.

Fields

NameDescription
forPaymentsAfter(String)

The start time of the payment preference.

Example

{
  "forPaymentsAfter": "abc123"
}

Fields

NameDescription
code(String!)

The unique code of the role.

description(String!)

The description of the role.

name(String!)

The unique displayable name of the role.

permissionCodes([String]!)

The permissions associated with the role.

Example

{
  "code": "abc123",
  "name": "abc123",
  "description": "abc123",
  "permissionCodes": "abc123"
}

ValidateAddress

Output type of the validateAddress mutation.

Fields

NameDescription
cleanedDescriptor(AddressFieldDescriptorType)

The address field descriptor with cleaned/normalised values and per-field validation errors populated. Each field's errors list is empty when valid. Returned on both success and failure.

isValid(Boolean!)

Whether the address passed all validation checks.

Example

{
  "isValid": true,
  "cleanedDescriptor": AddressFieldDescriptorType
}

ValidateEmail

Output type of the validateEmail mutation.

Fields

NameDescription
isValid(Boolean)

Whether the email is valid or not.

Example

{
  "isValid": true
}

ValidateMfaDevice

Output type of the validateMfaDevice mutation.

Fields

NameDescription
deviceIsValid(Boolean)

Flag to indicate if the device has been verified, so it can be used for MFA.

Example

{
  "deviceIsValid": true
}

ValidatePhone

Output type of the validatePhone mutation.

Fields

NameDescription
isValid(Boolean)

Whether the phone number is valid or not.

Example

{
  "isValid": true
}

ValidityPeriod

Represents a validity period defined by specific start and end date times.

Fields

NameDescription
end(DateTime)

The end date and time of the period. Null indicates an open-ended period.

start(DateTime)

The start date and time of the period.

Example

{
  "start": "2020-01-01T00:00:00.000Z",
  "end": "2020-01-01T00:00:00.000Z"
}

VariantProfile

Object representing a variant profile.

Fields

NameDescription
characteristicValues(JSONString!)

The characteristic values for the variant.

Deprecated

The 'characteristicValues' field is deprecated.

Please use 'characteristics' instead.

- Marked as deprecated on 2026-07-17.
- Scheduled for removal on or after 2026-07-31.

characteristics(GenericScalar!)

The characteristic values for the variant.

schemeLabels(JSONString)

The scheme labels for the variant.

Deprecated

The 'schemeLabels' field is deprecated.

Please use 'schemes' instead.

- Marked as deprecated on 2026-07-17.
- Scheduled for removal on or after 2026-07-31.

schemes(GenericScalar)

The scheme labels for the variant.

Example

{
  "characteristicValues": {"key": "value"},
  "schemeLabels": {"key": "value"},
  "characteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
  "schemes": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType
}

VaryContractTermsOutput

Output type for varying contract terms.

Fields

NameDescription
contract(Contract)

The contract with the varied terms.

Example

{
  "contract": Contract
}

Fields

NameDescription
maximumSocPercentage(Int)

The maximum state of charge (soc) %, if available.

minimumSocPercentage(Int)

The minimum state of charge (soc) %, if available.

weekdayTargetSoc(Int)

weekdayTargetTime(String)

weekendTargetSoc(Int)

weekendTargetTime(String)

Example

{
  "weekdayTargetTime": "abc123",
  "weekdayTargetSoc": 1,
  "weekendTargetTime": "abc123",
  "weekendTargetSoc": 1,
  "minimumSocPercentage": 1,
  "maximumSocPercentage": 1
}

Fields

NameDescription
brand(String)

displayName(String)

The (user chosen) display name of the vehicle, if available.

model(String)

The model name of the vehicle, if available (e.g. i3s 120).

vin(String)

year(Int)

The year of the vehicle model, if available.

Example

{
  "vin": "abc123",
  "brand": "abc123",
  "model": "abc123",
  "year": 1,
  "displayName": "abc123"
}

Fields

NameDescription
status(String)

Verification process status.

type(String)

Verification type.

userNumber(String)

Customer with pending verification.

Example

{
  "userNumber": "abc123",
  "status": "abc123",
  "type": "abc123"
}

VerifyCustomer

Output type of the verifyCustomer mutation.

Fields

NameDescription
user(AccountUserType)

The currently authenticated user.

Example

{
  "user": AccountUserType
}

VerifyEmail

Output type of the verifyEmail mutation.

Fields

NameDescription
isVerified(Boolean)

Whether the email is verified.

Example

{
  "isVerified": true
}

VerifyIdentity

Output type of the verifyIdentity mutation.

Fields

NameDescription
token(String!)

An expiring token that can be used to request to update the user's email address.

Example

{
  "token": "abc123"
}

VoiceCampaignConnectionTypeConnection

Paginator of Voice Campaigns

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([VoiceCampaignConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": VoiceCampaignConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

VoiceCampaignConnectionTypeEdge

A Relay edge containing a VoiceCampaignConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(VoiceCampaignType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([VoiceCampaignItemConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": VoiceCampaignItemConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

VoiceCampaignItemConnectionTypeEdge

A Relay edge containing a VoiceCampaignItemConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(VoiceCampaignItemType)

The item at the end of the edge

Example

{
  "cursor": "abc123"
}

Fields

NameDescription
accountId(ID)

The account ID associated with the item.

If the phone number for the item is not set, the account ID will be used to determine the phone number to call.

callWindowEnd(DateTime)

Together with call_window_start, this determines the time window in which the item should be called. Specified as ISO 8601 format.

callWindowStart(DateTime)

Together with call_window_end, this determines the time window in which the item should be called. Specified as ISO 8601 format.

id(ID)

The ID of the campaign item.

metadata(JSONString)

Metadata about the item.

This enables items to be filtered based on additional information such as location. It is a dictionary of key-value pairs, with both keys and values being strings.

phoneNumber(String)

The phone number of the campaign item.

This is used to determine the phone number to call when the item is processed. If it is not set, the account ID will be used instead to call the phone number associated with the account.

status(CampaignItemStatus!)

The status of the campaign item that determines what actions can be taken on it.

"UNASSIGNED":  An item that is ready to be assigned to an agent
"ASSIGNED":    An item that is assigned to an agent and ready to contact
"IN_PROGRESS": An item where a call is currently in progress
"COMPLETE":    An item has been contacted, and does not need to be re-contacted
"REMOVED":     An item that was removed without being contacted

Example

{
  "id": "abc123",
  "phoneNumber": "abc123",
  "status": "UNASSIGNED",
  "callWindowStart": "2020-01-01T00:00:00.000Z",
  "callWindowEnd": "2020-01-01T00:00:00.000Z",
  "accountId": "abc123",
  "metadata": {"key": "value"}
}

Fields

NameDescription
campaignItems(VoiceCampaignItemConnectionTypeConnection)

The items that are part of the campaign.

These are the items that contain information about what phone numbers or accounts to call while this campaign is active.

Arguments

after (String)

before (String)

first (Int)

last (Int)

campaignType(TypeOfVoiceCampaign)

The type of campaign, e.g. preview or predictive.

customOutboundPhoneNumber(String)

If appropriate, a custom number to use as the caller id for calls from this campaign.

description(String)

Additional information to describe the purpose of the campaign.

id(ID)

The ID of the campaign.

name(String!)

The name of the campaign.

This is used to identify the campaign in the system, and must be unique.

preventDuplicateRecords(Boolean)

Flag to indicate whether not to create a duplicate record when uploading campaign items that already exist for a given account number and/or phone number

status(CampaignStatus)

The status of the campaign.

Indicates whether calls can be made for items in the campaign or not.

tags(CallTagConnectionTypeConnection)

The call tags that can be used within this campaign.

Arguments

after (String)

before (String)

first (Int)

last (Int)

Example

{
  "id": "abc123",
  "name": "abc123",
  "description": "abc123",
  "customOutboundPhoneNumber": "abc123",
  "status": "ACTIVE",
  "campaignType": "PREVIEW",
  "preventDuplicateRecords": true
}

Fields

NameDescription
edgeCount(Int!)

Number of nodes in the edge.

edges([VoucherPurchaseConnectionTypeEdge]!)

Contains the nodes in this connection.

pageInfo(PageInfo!)

Pagination data for this connection.

totalCount(Int!)

Total number of nodes.

Example

{
  "pageInfo": PageInfo,
  "edges": VoucherPurchaseConnectionTypeEdge,
  "totalCount": 1,
  "edgeCount": 1
}

VoucherPurchaseConnectionTypeEdge

A Relay edge containing a VoucherPurchaseConnectionType and its cursor.

Fields

NameDescription
cursor(String!)

A cursor for use in pagination

node(VoucherPurchaseType)

The item at the end of the edge

Example

{
  "node": VoucherPurchaseType,
  "cursor": "abc123"
}

Fields

NameDescription
availableFrom(Date)

When the voucher becomes available to be redeemed.

balance(Int)

The current balance left in the voucher.

charge(AccountChargeType)

The amount charged for the voucher.

chargeBalanceTransfer(AccountBalanceTransferType)

A balance transfer for the voucher charge, if any.

clientParams(JSONString)

Additional metadata from client sources stored against the voucher. This data is not structural and won't be relied on by Kraken internally.

displayName(String)

Display name for the voucher purchase.

id(ID)

The purchase ID.

payment(AccountPaymentType)

The payment associated with the voucher purchase, if any.

purchasedAt(DateTime)

When the purchase was performed.

redemptions([VoucherRedemptionType])

Fetch the redemptions for this voucher.

refundedAt(DateTime)

When the voucher was refunded, if it was refunded.

voucherValue(Int)

The value of the voucher in cents.

Example

{
  "id": "abc123",
  "charge": AccountChargeType,
  "payment": AccountPaymentType,
  "displayName": "abc123",
  "clientParams": {"key": "value"},
  "purchasedAt": "2020-01-01T00:00:00.000Z",
  "voucherValue": 1,
  "availableFrom": "2020-01-01",
  "balance": 1,
  "redemptions": [VoucherRedemptionType],
  "refundedAt": "2020-01-01T00:00:00.000Z"
}

Fields

NameDescription
claimedAt(DateTime)

When the redemption was claimed.

credit(AccountCreditType)

The amount credited for the voucher redemption.

id(ID)

The redemption ID.

isReversed(Boolean)

Whether the redemption has been reversed.

Example

{
  "id": "abc123",
  "credit": AccountCreditType,
  "claimedAt": "2020-01-01T00:00:00.000Z",
  "isReversed": true
}

Fields

NameDescription
redeemableInFuture(Int)

The balance from vouchers that will be redeemable in future.

redeemableToday(Int)

The balance from vouchers that can be redeemable today.

Example

{
  "redeemableToday": 1,
  "redeemableInFuture": 1
}

WaitForLiveIntegration

Indicates a step where the integration is pending activation.

Progress to the next onboarding step is blocked until the integration becomes active.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

isLive(Boolean)

Returns true if the device integration is supported by us, false otherwise.

Example

{
  "id": "abc123",
  "isLive": true
}

WaitForTransition

A generic step that can be used to hold an onboarding wizard until the device has transitioned from one onboarding state to another.

Generally, this step should be completed via a KF AMI event handler after the device has been registered and transitioned to the desired state.

Fields

NameDescription
id(ID)

A unique identifier for this onboarding step.

Example

{
  "id": "abc123"
}

Fields

NameDescription
deviceId(String)

Serial number.

marketSupplyPointId(String)

Meter point reference.

readingFrequencyType(ReadingFrequencyType)

The frequency of the reading.

Example

{
  "marketSupplyPointId": "abc123",
  "deviceId": "abc123",
  "readingFrequencyType": "RAW_INTERVAL"
}

Fields

NameDescription
body(String!)

Whatsapp text message body.

Example

{
  "body": "abc123"
}

WithdrawDunning

Output type of the withdrawDunning mutation.

Fields

NameDescription
withdrawSuccessful(Boolean)

Whether the dunning process was withdrawn successfully.

Example

{
  "withdrawSuccessful": true
}

Fields

NameDescription
identifier(String!)

The identifier of the work schedule (also known as the 'slug').

isOpen(Boolean!)

Whether the work schedule is currently open.

isPublicHoliday(Boolean!)

Whether today is a public holiday, according to the work schedule.

name(String!)

Name of the work schedule.

openOrClosedReason(WorkScheduleOpenOrClosedReason!)

The reason the Work Schedule is open or closed.

Example

{
  "identifier": "abc123",
  "name": "abc123",
  "isOpen": true,
  "isPublicHoliday": true,
  "openOrClosedReason": "CLOSED_DUE_TO_PUBLIC_HOLIDAY"
}