Objects
Objects in GraphQL represent the resources you can access. An object can contain a list of fields, which are specifically typed.
API Site
APIBrownoutEdge
A Relay edge containing a APIBrownout and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(APIBrownout) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}APIExceptionConnectionTypeEdge
A Relay edge containing a APIExceptionConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(APIExceptionType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}AcceptGoodsQuote
The possible errors that can be raised are:
- KT-CT-8223: Unauthorized.
- KT-CT-8201: Received an invalid quoteId.
- KT-CT-8224: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
goodsPurchase(GoodsPurchase) | Goods purchase created. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"goodsPurchase": GoodsPurchase
}AcceptOfferForQuoting
Accept a quoting offer in an offer group.
The possible errors that can be raised are:
- KT-CT-12402: Unable to accept offer.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
offer(OfferType) | Accepted quoting offer. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"offer": OfferType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountApplicationType) | The item at the end of the edge |
Example
{
"node": AccountApplicationType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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"
}AccountCampaignConnectionTypeConnection
Paginator of Account Campaigns
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountCampaignType) | The item at the end of the edge |
Example
{
"node": AccountCampaignType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountType) | The item at the end of the edge |
Example
{
"node": AccountType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
data(JSONString!) | |
updatedAt(DateTime!) |
Example
{
"data": {"key": "value"},
"updatedAt": "2020-01-01T00:00:00.000Z"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountEvent) | The item at the end of the edge |
Example
{
"node": EmailEventType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountFileAttachment) | The item at the end of the edge |
Example
{
"node": AccountFileAttachment,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountPaymentType) | The item at the end of the edge |
Example
{
"node": AccountPaymentType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
amount(BigInt!) | Amount of payment in the currency's minor unit |
id(ID!) | |
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. |
Example
{
"id": "abc123",
"amount": 1,
"paymentDate": "2020-01-01",
"reference": "abc123",
"transactionType": "DD_FIRST_COLLECTION",
"status": "SCHEDULED",
"paymentInstruction": PaymentInstructionType,
"surchargeAmount": 1
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Reminder) | The item at the end of the edge |
Example
{
"node": Reminder,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AccountRepaymentType) | The item at the end of the edge |
Example
{
"node": AccountRepaymentType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
amount(BigInt!) | Amount of payment in the currency's minor unit |
id(ID!) | |
paymentDate(Date!) | The date this payment is scheduled to be debited |
status(AccountRepaymentStatusOptions) | The current status of the repayment. |
Example
{
"id": "abc123",
"amount": 1,
"paymentDate": "2020-01-01",
"status": "REQUESTED"
}AccountType
The account object can be one of several attached to a Portfolio (which usually has an AccountUser which is used to authenticate access to the Portfolio's accounts). Typically a person has a single account attached to a portfolio and properties on the same account will appear on the same bill. Where separate bills are desired, multiple accounts are created and added to the same portfolio of accounts.
Fields
| Name | Description |
|---|---|
accountType(AccountTypeChoices) | The type of account. |
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 |
agreements(AgreementConnectionTypeConnection) | A list of agreements that belong to an account. |
annualStatements(AnnualStatementConnectionTypeConnection) | Fetch annual statements for the account. |
applications(AccountApplicationConnectionTypeConnection) | Applications by this account to become our customer. More recent applications will be listed first. Arguments
The account application status. |
assistanceAgreements([AssistanceAgreementType]) | Assistance agreements for account. |
balance(Int!) | The current account balance. Arguments
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
The unique identifier of the bill.
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.
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) | Override Field to add additional attributes and extend description with possible_errors |
billingAddressLine2(String) | Override Field to add additional attributes and extend description with possible_errors |
billingAddressLine3(String) | Override Field to add additional attributes and extend description with possible_errors |
billingAddressLine4(String) | Override Field to add additional attributes and extend description with possible_errors |
billingAddressLine5(String) | Override Field to add additional attributes and extend description with possible_errors |
billingAddressPostcode(String) | Override Field to add additional attributes and extend description with possible_errors |
billingCountryCode(String) | Override Field to add additional attributes and extend description with possible_errors |
billingDeliveryPointIdentifier(String) | Override Field to add additional attributes and extend description with possible_errors |
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. |
bills(BillConnectionTypeConnection) | Fetch issued bills (invoices/statements) for the account. Arguments
Optional date representing the beginning of the search results. This date value is inclusive.
Include bills without PDFs.
Include held statements within the results.
Include pre-Kraken / historical statements within the results.
Include open statements. This flag needs to be used along with includeBillsWithoutPDF=false otherwise results will prove unexpected.
Optional date representing the beginning of the search results based on issued date. This date value is inclusive.
Optional date representing the end of the search results based on issued date. This date value is exclusive.
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.
Only include bills emailed to the current user's email.
The order in which to return the bills.
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. |
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. |
complaints(ComplaintConnectionTypeConnection) | The complaints associated with an account. |
consents([ConsentType!]!) | Consents linked to this account. |
contributionAgreements([ContributionAgreementType]) | Contribution agreements for account. |
createdAt(DateTime) | The datetime that the account was originally created. |
debtCollectionProceedings([DebtCollectionProceedingType]) | Debt collection proceedings for account. |
directDebitInstructions(DirectDebitInstructionConnectionTypeConnection) | The direct debit instructions of the account Arguments
Filter the direct debit instructions by status |
documentAccessibility(DocumentAccessibilityChoices) | The document accessibility preference of the account. |
eligibleRewardJourneys([String]) | A list of reward journeys that the viewer on the account is eligible for. |
events(AccountEventConnectionTypeConnection) | The account events that were recorded for the account. Arguments
Filter the account events by their type.
|
fileAttachments([AccountFileAttachment]) | Files attached to this account. |
hasActiveAssessedAgreement(Boolean!) | Whether the account has an active assessed agreement. |
hasActiveDebtCollectionProceeding(Boolean!) | True if there is an active debt collection proceeding for this account. False otherwise. |
hasActiveDunningProcess(Boolean!) | Whether the account has an active dunning process. |
hasActiveSocialAgreement(Boolean!) | Whether the account has an active social agreement. |
hasActiveWatersureAgreement(Boolean!) | Whether the account has an active WaterSure agreement. |
hasCompletedUpcomingAnnualBilling(Boolean) | Whether upcoming annual billing has run for this account. |
id(ID!) | |
isInHardship(Boolean) | True if there is an active Hardship Agreement for this account. False otherwise. |
isLatestPaymentScheduleFromAnnualBilling(Boolean!) | Whether the latest payment schedule for the account is from an annual billing run. |
isMeasured(Boolean) | Whether the current active agreements of the account is measured or unmeasured. Null if no active agreements. |
isOnPccDunningJourney(Boolean!) | Whether the account is on a PCC dunning journey. |
isOnSteppedTariff(Boolean!) | Whether the account is on a Rising Block Tariff (stepped rates) for both fresh and waste water. |
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. |
marketSupplyAgreements(AgreementConnection) | Retrieve all market supply agreements under this account. Note that when |
maximumRefund(MaximumRefundType) | The maximum amount a customer is allowed to request as a refund and the reason why that's the maximum amount. Arguments
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. |
paginatedPaymentForecast(PaymentForecastConnectionTypeConnection) | Paginated payment forecasts for an account. Starts from today's date (inclusive). The interface supports Arguments
The end date to retrieve forecasts for. This end date is inclusive.
The ledger to return payment forecasts from. Defaults to the main ledger when no ID is passed.
The number of the ledger to return payment forecasts from. Defaults to the main ledger when no number is passed. |
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. Arguments
The end date to retrieve forecasts for. This end date is inclusive.
The ledger to return payment forecasts from. Defaults to the main ledger when no ID is passed.
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
Filter the payment instructions by status. |
paymentPlans(PaymentPlanConnectionTypeConnection) | The payment plans that have been created for this account. |
paymentSchedules(PaymentScheduleConnectionTypeConnection) | The schedules that describe how we would expect to take payments for an account on a given month. Arguments
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.
The ledger id to return the payment schedules from.
The ledger number to return the payment schedules from.
The ledger to return transactions from.
|
payments(AccountPaymentConnectionTypeConnection) | The payments made into an account from a payment instruction. Arguments
Whether to include payment promises (of any kind: made, broken or fulfilled) or not. The default is to include them.
The id of the ledger to return payments from.
WARNING: Will be mandatory in future versions The number of the ledger to return payments from.
Filter for payments that were taken for a particular reason.
|
portfolio(PortfolioType) | The portfolio this account is linked to. |
potentialSwitchToMeasured(PotentialTariffSwitchType!) | Information about a potential tariff switch to measured billing. |
preferredLanguageForComms(String) | The language that the account preferred for communications. |
properties([PropertyType]) | Properties linked to the account now and in the future. Arguments
Returns properties that have an effective period that ends at or after the given activeFrom datetime. |
provisionalTransactions(ProvisionalTransactionConnectionTypeConnection) | |
references([AccountReferenceType]) | Account references linked to this account. |
referrals(ReferralConnectionTypeConnection) | The referrals created by this account. Arguments
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. |
repayments(AccountRepaymentConnectionTypeConnection) | The repayments that have been requested for this account. Arguments
Only return repayments whose status matches one of these statuses. |
requestRefundEligibility(RequestRefundEligibilityType) | Details about the eligibility status for requesting a refund. Arguments
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
Optional date representing the beginning of the postedDate range filter. This date value is inclusive.
In a multi-ledger scenario, include all ledgers' transactions if
The ledger to return transactions from.
The number of the ledger to return transactions from.
The order in which to return the transactions.
Optional date representing the end of the postedDate range filter. This date value is exclusive.
Include only these specific transaction types in the result.
Exclude these specific transaction types from the result. |
urn(String) | Unique reference number from a 3rd party enrolment. |
users([AccountUserType!]!) |
Example
{
"id": "abc123",
"number": "abc123",
"status": "PENDING",
"paymentSchedules": PaymentScheduleConnectionTypeConnection,
"users": AccountUserType,
"complaints": ComplaintConnectionTypeConnection,
"brand": "abc123",
"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,
"portfolio": PortfolioType,
"ledgers": [LedgerType],
"metadata": [Metadata],
"canRequestRefund": true,
"requestRefundEligibility": RequestRefundEligibilityType,
"payments": AccountPaymentConnectionTypeConnection,
"repayments": AccountRepaymentConnectionTypeConnection,
"paymentPlans": PaymentPlanConnectionTypeConnection,
"paymentForecast": [PaymentForecastType],
"paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
"referrals": ReferralConnectionTypeConnection,
"referralsCreated": 1,
"rewards": [RewardType],
"activeReferralSchemes": ReferralSchemeTypes,
"transactions": TransactionConnectionTypeConnection,
"provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
"annualStatements": AnnualStatementConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"billingOptions": BillingOptionsType,
"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,
"properties": [PropertyType],
"marketSupplyAgreements": AgreementConnection,
"canModifyPayments": CanModifyPaymentsType,
"agreements": AgreementConnectionTypeConnection,
"isLatestPaymentScheduleFromAnnualBilling": true,
"isMeasured": true,
"hasActiveDunningProcess": true,
"hasActiveDebtCollectionProceeding": true,
"hasActiveSocialAgreement": true,
"hasActiveWatersureAgreement": true,
"hasActiveAssessedAgreement": true,
"hasCompletedUpcomingAnnualBilling": true,
"potentialSwitchToMeasured": PotentialTariffSwitchType,
"eligibleRewardJourneys": ["abc123"],
"isOnPccDunningJourney": true,
"isOnSteppedTariff": true
}AccountUserCommsPreferences
Information about the preferences set up for a user.
Fields
| Name | Description |
|---|---|
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
}AccountUserCommsPreferencesType
Details of comms preferences set up for a user.
Fields
| Name | Description |
|---|---|
isOptedInToCompanySurvey(Boolean) | Whether user has opted to receive company surveys. |
isOptedInToMarketing(Boolean) | Whether user has opted to receive generic marketing. |
isOptedInToPlumbingOffer(Boolean) | Whether the user has opted to receive messages offering plumbing discounts or other services (home serve) not directly related to the services the client provides. |
isOptedInToRegulatorySurvey(Boolean) | Whether user has opted to receive regulatory surveys. |
isOptedInToSms(Boolean) | Whether the user has opted to receive SMS messages. |
isOptedInToWhatsapp(Boolean) | Whether the user has opted to receive WhatsApp messages. |
Example
{
"isOptedInToMarketing": true,
"isOptedInToPlumbingOffer": true,
"isOptedInToCompanySurvey": true,
"isOptedInToRegulatorySurvey": true,
"isOptedInToSms": true,
"isOptedInToWhatsapp": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
consents([ConsentType!]!) | Consents linked to this user. |
Example
{
"consents": ConsentType
}Fields
| Name | Description |
|---|---|
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
}AccountUserNameType
Names of an account user.
Fields
| Name | Description |
|---|---|
familyName(String) | The family name. |
givenName(String) | The given name. |
id(ID!) | The user ID. |
Example
{
"familyName": "abc123",
"givenName": "abc123",
"id": "abc123"
}AccountUserPermission
Holds information about a specific permission.
Fields
| Name | Description |
|---|---|
permission(String) | The short name of the permission |
Example
{
"permission": "abc123"
}AccountUserRoleType
The role a user has in association with one account.
Fields
| Name | Description |
|---|---|
account(AccountType!) | |
id(ID!) | |
role(RoleString) | The account role. |
user(AccountUserType!) |
Example
{
"id": "abc123",
"user": AccountUserType,
"account": AccountType,
"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
| Name | Description |
|---|---|
accountUserRoles([AccountUserRoleType]) | List of roles a user has for each account they're linked to. Arguments
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
Optionally filter the user's accounts to only return those linked to portfolios on the specified brands.
Optionally exclude accounts with any of the given account types.
Optionally exclude accounts that have never had an agreement.
Optionally restrict user accounts to only return those with the specified account numbers.
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. |
commsPreferences(AccountUserCommsPreferencesType) | Details of comms preferences set up for a user. |
consents([ConsentType!]!) | Consents linked to this user. |
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. |
email(String!) | |
familyName(String!) | |
firstName(String) | We recommend you use preferredName or fullName instead of this field. Deprecated The 'firstName' field is deprecated. |
fullName(String) | The user's full name. |
givenName(String!) | |
hasFamilyIssues(Boolean) | Whether there are family issues. |
hasRestrictedAccess(Boolean) | Whether the user has restricted access to the consumer-site. |
hasSetPassword(Boolean) | Whether the user has set a password. |
id(ID!) | |
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. |
isPsrRenewalDue(Boolean) | Whether PSR record of user is due for renewal. |
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. |
lastLogin(DateTime) | Datetime of last time the user logged in. |
lastName(String) | We recommend you use preferredName or fullName instead of this field. Deprecated The 'lastName' field is deprecated. |
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. |
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. |
portfolioIds([ID]) | List of portfolio ids that the user is linked to via their portfolio roles. Arguments
Optionally filter the user's portfolios to only return those linked to specified brands.
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. |
portfolios(PortfolioConnectionTypeConnection) | List of portfolios that the user is linked to via their portfolio roles. Arguments
Optionally filter the user's portfolios to only return those linked to specified brands.
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) | Information about the special circumstances that relate to a user. |
title(String) |
Example
{
"id": "abc123",
"number": "abc123",
"accounts": AccountInterface,
"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],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"isActive": true,
"address": RichAddressType,
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"portfolios": PortfolioConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"details": [AccountUserDetailType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"lastLogin": "2020-01-01T00:00:00.000Z",
"hasSetPassword": true,
"commsPreferences": AccountUserCommsPreferencesType,
"isPsrRenewalDue": true,
"hasRestrictedAccess": true
}AddCampaignToAccount
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-7427: No campaign found with given slug.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
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. |
Example
{
"possibleErrors": [PossibleErrorType],
"campaignAdded": true
}AddJourneyCompletionReward
Mutation to add a journey completion reward for a user.
The possible errors that can be raised are:
- KT-CT-6723: Unauthorized.
- KT-CT-6710: Unable to create referral.
- KT-CT-6712: Invalid reference.
- KT-CT-6728: This referral scheme's usage is at capacity.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
accountReferral(ReferralType) | The created account referral instance. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"accountReferral": ReferralType
}AddProperty
Add a property to an account.
The possible errors that can be raised are:
- KT-CT-6623: Unauthorized.
- KT-CT-6629: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
property(PropertyType) | The property that was added to the account. |
Example
{
"possibleErrors": [PossibleErrorType],
"property": PropertyType
}AddUserToAccount
Mutation to add a user to an account.
The possible errors that can be raised are:
- KT-CT-4121: Invalid phone number.
- KT-CT-4122: Invalid email.
- KT-CT-6723: Unauthorized.
- KT-CT-4111: Unable to use given email address.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
user(AccountUserType) | The user that was added to the account. |
Example
{
"possibleErrors": [PossibleErrorType],
"user": AccountUserType
}Fields
| Name | Description |
|---|---|
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"
}Agreement
An agreement for a water supply point.
Fields
| Name | Description |
|---|---|
agreedFrom(DateTime) | The datetime the agreement was entered. |
agreedTo(DateTime) | The datetime the agreement was terminated. |
id(Int) | The ID of the agreement. |
isRevoked(Boolean) | Whether the agreement is revoked. |
productRates(ProductRateConnectionTypeConnection) | The product rates applicable from this agreement, at the time of the request. |
supplyPoint(SupplyPointNode) | The water supply point (fresh or waste) linked to the agreement. |
validFrom(DateTime) | The start datetime of the agreement. |
validTo(DateTime) | The end datetime of the agreement. |
Example
{
"id": 1,
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"agreedFrom": "2020-01-01T00:00:00.000Z",
"agreedTo": "2020-01-01T00:00:00.000Z",
"isRevoked": true,
"supplyPoint": FreshWaterSupplyPointType,
"productRates": ProductRateConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
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
}AgreementConnectionTypeConnection
Connection type for agreements
Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([AgreementConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": AgreementConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}AgreementConnectionTypeEdge
A Relay edge containing a AgreementConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Agreement) | The item at the end of the edge |
Example
{
"node": Agreement,
"cursor": "abc123"
}AgreementEdge
A Relay edge containing a Agreement and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(CommonAgreementType) | The item at the end of the edge |
Example
{
"node": CommonAgreementType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
amount(Int!) | The amount of the allocation (in minor currency units), unsigned. |
fulfilment(FulfilmentType!) | The fulfilment that is allocated. |
Example
{
"amount": 1,
"fulfilment": FulfilmentType
}AlreadyLinkedError
Returned when an account already has a LINE account linked to it.
Fields
| Name | Description |
|---|---|
type(LineLinkErrorType!) | The type of error that occurred. |
Example
{
"type": "NO_MATCHING_LINE_LINK"
}AmendPayment
The possible errors that can be raised are:
- KT-CT-3924: Unauthorized.
- KT-CT-4123: Unauthorized.
- KT-CT-3970: The account cannot amend payments.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
payment(AccountPaymentType) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"payment": AccountPaymentType
}AnimationType
A media element containing an animation, such as a Lottie.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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.
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
| Name | Description |
|---|---|
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"
}AppSessionConnectionTypeEdge
A Relay edge containing a AppSessionConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AppSessionType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}AppointmentSlotConnectionTypeConnection
Connection type for appointment slots
Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([AppointmentSlotConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": AppointmentSlotConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}AppointmentSlotConnectionTypeEdge
A Relay edge containing a AppointmentSlotConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(AppointmentSlotType) | The item at the end of the edge |
Example
{
"node": AppointmentSlotType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
endAt(String) | End time of the appointment slot. |
startAt(String) | Start time of the appointment slot. |
Example
{
"startAt": "abc123",
"endAt": "abc123"
}AssistanceAgreementType
A single Assistance Agreement.
Fields
| Name | Description |
|---|---|
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"
}AttachmentType
Represents a file to attach to a communication
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
clientId(String) | The client ID of the application. |
name(String) | The name of the application. |
Example
{
"name": "abc123",
"clientId": "abc123"
}BackendScreenEvent
Returns an Action to perform, e.g. a screen to load.
BackendScreenEvents are specific types of Action which trigger a mutation in the Kraken backend. They return an action (any type), such as a ScreenActionType (which is then used to load the next screen). Any action registered in the registry should really be an "event" with some side-effect in the backend.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-8002: No event found.
- KT-CT-8003: Event has no execute function.
- KT-CT-8004: Error executing event in the backend.
- KT-CT-8007: Incorrect or missing parameters for backend screen event.
- KT-GB-9310: Account ineligible for joining Octoplus.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
action(ActionType) | An action to perform. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"action": DeeplinkActionType
}BackendScreenEventActionType
An action which triggers some event in the Kraken backend.
Fields
| Name | Description |
|---|---|
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.
Example
{
"key": "abc123",
"value": "abc123"
}Fields
| Name | Description |
|---|---|
areValid(Boolean!) | Indicates whether the provided bank details are valid. |
message(String) | Provides additional information about validation result. |
Example
{
"areValid": true,
"message": "abc123"
}BillCharge
A charge to the customer from the energy retailer.
Fields
| Name | Description |
|---|---|
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. |
id(ID) | The unique identifier for the transaction. |
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",
"consumption": Consumption
}BillConnectionTypeConnection
This field is a connection type. Connections are used to implement cursor based pagination.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
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"
}BillPayment
A payment from the customer to the energy supplier.
Fields
| Name | Description |
|---|---|
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. |
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"
}BillRefund
A refund to the customer from the energy supplier.
Fields
| Name | Description |
|---|---|
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. |
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"
}BillRepresentationConnectionTypeConnection
A connection that can provide links to the representations of a bill.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(BillRepresentationType) | The item at the end of the edge |
Example
{
"node": BillRepresentationType,
"cursor": "abc123"
}BillRepresentationType
representations are associated with a bill files and can be used to provide additional information to the customer.
Fields
| Name | Description |
|---|---|
code(String) | The type of representation. |
filename(String) | The name of the file. |
temporaryUrl(String) | The |
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"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(BillTransactionType) | The item at the end of the edge |
Example
{
"node": BillTransactionType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([BillingAddressConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": BillingAddressConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}BillingAddressConnectionTypeEdge
A Relay edge containing a BillingAddressConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(String) | The item at the end of the edge |
Example
{
"node": "abc123",
"cursor": "abc123"
}BillingAttachmentConnectionTypeConnection
A connection that can provide links to the attachments of the bill.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
filename(String) | The name of the file. |
temporaryUrl(String) | The |
temporaryUrlExpiresAt(DateTime) | The expiry datetime field of the temporary URL. |
Example
{
"temporaryUrl": "abc123",
"temporaryUrlExpiresAt": "2020-01-01T00:00:00.000Z",
"filename": "abc123"
}Fields
| Name | Description |
|---|---|
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
}BillingOptionsType
Information about an account's billing schedule.
Fields
| Name | Description |
|---|---|
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"
}BlackholeEmailAccountType
Details of an account of an account user updating their blackhole email.
Fields
| Name | Description |
|---|---|
accountUserNames([AccountUserNameType]) | The names of each active account user associated with the account. Arguments
Optionally restrict to only return those with the specified family name. |
address(String) | The billing address. |
isBusinessAccount(Boolean!) | Whether the account is a business account. |
isPortfolioLeadAccount(Boolean!) | Whether the account is a portfolio lead account. |
number(String) | The account number. |
Example
{
"number": "abc123",
"address": "abc123",
"accountUserNames": [AccountUserNameType],
"isBusinessAccount": true,
"isPortfolioLeadAccount": true
}BlackholeEmailAccountUserType
Details of an account user updating their blackhole email.
Fields
| Name | Description |
|---|---|
accounts([BlackholeEmailAccountType]) | List of accounts that the user is linked to either via portfolio role or account role. Arguments
Optionally restrict user accounts to only return those with the specified account numbers. |
email(String) | The user's email address obfuscated. |
familyName(String!) | Family name. |
fullName(String!) | Full name. |
givenName(String!) | Given name. |
hasDateOfBirth(Boolean!) | Whether the user has a date of birth. |
hasMobileNumber(Boolean!) | Whether the user has a mobile number. |
hasSetPassword(Boolean!) | Whether the user has set a password. |
userId(ID!) | The user ID. |
Example
{
"email": "abc123",
"fullName": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"hasSetPassword": true,
"userId": "abc123",
"hasMobileNumber": true,
"hasDateOfBirth": true,
"accounts": [BlackholeEmailAccountType]
}Fields
| Name | Description |
|---|---|
key(String!) | The key of the business detail. |
value(String) | The value of the business detail. |
Example
{
"key": "abc123",
"value": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
billingAddress(RichAddressType) | The billing address of the business. |
businessType(BusinessTypeOptions) | The company type of a business account. |
details([BusinessDetailType]) | The details of the business. |
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:
Deprecated The 'linkedAccountNumber' field is deprecated. |
linkedAccountNumbers([ID]!) | Account numbers linked to this business. |
name(String!) | The business' name |
number(String!) | The business' number |
paymentMethods(PaymentInstructionConnectionTypeConnection) | List payment instructions owned by this business. |
sectors([BusinessSectorString!]!) | The sectors the business operates in. |
segmentName(String) | The segment this business is assigned to |
Example
{
"id": "abc123",
"name": "abc123",
"number": "abc123",
"businessType": "SOLE_TRADER",
"sectors": BusinessSectorString,
"details": [BusinessDetailType],
"billingAddress": RichAddressType,
"legalAddress": RichAddressType,
"linkedAccountNumber": "abc123",
"linkedAccountNumbers": "abc123",
"segmentName": "abc123",
"paymentMethods": PaymentInstructionConnectionTypeConnection
}CallTagConnectionTypeEdge
A Relay edge containing a CallTagConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(CallTagType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
}CancelRepaymentRequest
Cancel a repayment or refund request.
The possible errors that can be raised are:
- KT-CT-4231: Unauthorized.
- KT-CT-3930: The repayment or refund request does not exist.
- KT-CT-3931: This repayment or refund request cannot be cancelled.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
repaymentRequest(CancelRepaymentRequestOutputType) | The cancelled repayment/refund request. |
Example
{
"possibleErrors": [PossibleErrorType],
"repaymentRequest": CancelRepaymentRequestOutputType
}CancelRepaymentRequestOutputType
Output from cancelling a repayment or refund request.
Fields
| Name | Description |
|---|---|
requestId(String) | The ID of the cancelled request. |
status(RepaymentRequestStatus) | The current status of the cancelled request. |
Example
{
"requestId": "abc123",
"status": "REQUESTED"
}CardComponentType
A card containing a list of items
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
}Charge
A charge to the customer.
Fields
| Name | Description |
|---|---|
accountNumber(String) | Unique identifier of the account the transaction belongs to. |
amount(Int) | Gross amount including tax (when payable). Refer to the Deprecated The 'amount' field is deprecated. |
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. |
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. |
isAccountPayment(Boolean) | Deprecated. Deprecated The 'isAccountPayment' field is deprecated. |
isCredit(Boolean) | Deprecated. Deprecated The 'isCredit' field is deprecated. |
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. |
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
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ChargesBreakdownType) | The item at the end of the edge |
Example
{
"node": ChargesBreakdownType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
}Fields
| Name | Description |
|---|---|
marketSpId(Int) | The market supply point ID for the charging configuration. |
Example
{
"marketSpId": 1
}Fields
| Name | Description |
|---|---|
paramsList([ChargingConfigurationParamsType]) | Override Field to add additional attributes and extend description with possible_errors |
Example
{
"paramsList": [ChargingConfigurationParamsType]
}ClaimJourneyCompletionReward
Mutation to claim a journey completion reward for a user.
The possible errors that can be raised are:
- KT-CT-6723: Unauthorized.
- KT-GB-12801: Ineligible for reward journey.
- KT-GB-12802: Reward claim failed.
- KT-GB-12803: Invalid reward journey code.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
rewardCode(String!) | The code of the reward that was given to the user. |
Example
{
"possibleErrors": [PossibleErrorType],
"rewardCode": "abc123"
}CloseActionType
Closes the screen.
Fields
| Name | Description |
|---|---|
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"
}CollectPayment
The possible errors that can be raised are:
- KT-CT-3932: Invalid data.
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-3821: Received neither ledger ID nor ledger number.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
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. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"payment": AccountPaymentType
}Fields
| Name | Description |
|---|---|
attachments(BillingAttachmentConnectionTypeConnection) | |
billType(BillTypeEnum) | The type of the bill. |
constituents(ConstituentConnection) | Constituents of the bill. |
fromDate(Date) | The date of the bill is covered from. |
id(ID) | The ID of the bill. |
issuedDate(Date) | The date the bill was sent to the customer. |
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. |
toDate(Date) | The date of the bill is covered to. |
Example
{
"id": "abc123",
"billType": "STATEMENT",
"fromDate": "2020-01-01",
"toDate": "2020-01-01",
"temporaryUrl": "abc123",
"issuedDate": "2020-01-01",
"attachments": BillingAttachmentConnectionTypeConnection,
"constituents": ConstituentConnection
}Fields
| Name | Description |
|---|---|
fieldSpecificRateLimits(FieldSpecificRateLimitInformationConnectionTypeConnection!) | Information about the current state of the rate limiting for rate limited fields at the time of the request. |
pointsAllowanceRateLimit(PointsAllowanceRateLimitInformation) | Information about points-allowance rate limit for viewer. |
Example
{
"pointsAllowanceRateLimit": PointsAllowanceRateLimitInformation,
"fieldSpecificRateLimits": FieldSpecificRateLimitInformationConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
agreedAt(DateTime) | |
agreedFrom(DateTime) | The datetime the agreement was entered. |
agreedTo(DateTime) | The datetime the agreement was terminated. |
id(ID!) | |
isActive(Boolean) | Whether the agreement is currently active. |
isRevoked(Boolean) | Whether the agreement is revoked. |
product(SupplyProductType) | The product associated with the agreement. |
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",
"supplyPoint": SupplyPointType,
"product": SupplyProductType,
"isActive": true,
"agreedFrom": "2020-01-01T00:00:00.000Z",
"agreedTo": "2020-01-01T00:00:00.000Z",
"isRevoked": true
}ComplaintConnectionTypeConnection
Paginator of Complaint type.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ComplaintContactType) | The item at the end of the edge |
Example
{
"node": ComplaintContactType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
assigneeId(ID) | Complaint Assignee. |
contacts(ComplaintContactConnectionTypeConnection) | Complaint contacts. |
creationDate(Date) | Complaint creation date. |
id(ID!) | |
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"
}CompleteStandalonePayment
Completes an initiated standalone payment.
The possible errors that can be raised are:
- KT-CT-3822: Unauthorized.
- KT-CT-3823: Unauthorized.
- KT-CT-3974: Unauthorized.
- KT-CT-3975: Unable to complete standalone payment.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
payment(CompleteStandalonePaymentOutput) | The completed standalone payment. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"payment": CompleteStandalonePaymentOutput
}CompleteStandalonePaymentOutput
Result of the complete standalone payment operation.
Fields
| Name | Description |
|---|---|
status(PaymentIntentCompletionStatus!) | The status of the standalone payment. |
Example
{
"status": "CLEARED"
}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
| Name | Description |
|---|---|
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. |
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
Confirm a requested consent.
This mutation will update the value of the consent associated with the provided token to ACCEPTED.
The possible errors that can be raised are:
- KT-CT-9016: Consent management not enabled.
- KT-CT-9020: Invalid consent expiring token.
- KT-CT-9021: Consent expiring token not found.
- KT-CT-9022: Consent for given token already accepted.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
consent(ConsentType) | The consent that was created or updated. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"consent": ConsentType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ConstituentInterface) | The item at the end of the edge |
Example
{
"node": ConstituentInterface,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ConsumptionBreakdownType) | The item at the end of the edge |
Example
{
"node": ConsumptionBreakdownType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
charges(ChargesBreakdownConnectionTypeConnection) | Charges grouped per displayed period. |
marketName(String) | Name of the market the charges are for. |
Example
{
"marketName": "abc123",
"charges": ChargesBreakdownConnectionTypeConnection
}Contract
A legally binding relationship agreed with a subject (e.g. an account).
Fields
| Name | Description |
|---|---|
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. |
party(ContractParty) | The party (Account or Business) that entered into this contract |
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",
"lifecycle": ContractVersion,
"terms": TermInterface
}ContractVersion
Represents a version of a contract with its effective date.
Fields
| Name | Description |
|---|---|
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"
}ContributionAgreementType
A single Contribution Agreement.
Fields
| Name | Description |
|---|---|
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. |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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",
"agreement": ContributionAgreementType,
"fulfilledAt": "2020-01-01T00:00:00.000Z",
"periodFrom": "2020-01-01T00:00:00.000Z",
"periodTo": "2020-01-01T00:00:00.000Z"
}ContributionSchemeType
A single Contribution Scheme.
Fields
| Name | Description |
|---|---|
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
}Example
{
"latitude": 1.0,
"longitude": 1.0
}CoreSiteworksAppointmentType
An appointment linked to a request
Fields
| Name | Description |
|---|---|
appointmentDate(Date!) | |
createdAt(DateTime!) | |
externalReference(String) | The external reference provided by the vendor/contractor for the appointment. |
id(UUID!) | |
jobType(String) | |
status(OnSiteJobsAppointmentStatus) | The current status of the appointment. |
timeSlotEnd(Time) | |
timeSlotStart(Time) |
Example
{
"id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"jobType": "abc123",
"appointmentDate": "2020-01-01",
"timeSlotStart": "00:00:00.000Z",
"timeSlotEnd": "00:00:00.000Z",
"createdAt": "2020-01-01T00:00:00.000Z",
"status": "PENDING",
"externalReference": "abc123"
}CoreSiteworksRequestConnectionTypeEdge
A Relay edge containing a CoreSiteworksRequestConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(CoreSiteworksRequestType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}CreateAccountPaymentSchedule
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-3815: No active payment schedule found for this account.
- KT-CT-3822: Unauthorized.
- KT-CT-3923: Unauthorized.
- KT-CT-3941: Invalid data.
- KT-CT-3942: An unexpected error occurred.
- KT-CT-3947: An unexpected error occurred.
- KT-CT-3960: Invalid value for payment day.
- KT-CT-3961: Cannot update plan-associated payment schedule.
- KT-CT-3962: No new value provided to update payment schedule.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
schedule(PaymentScheduleType!) | New payment schedule. |
Example
{
"possibleErrors": [PossibleErrorType],
"schedule": PaymentScheduleType
}CreateAccountReference
Create an account reference.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-8310: Invalid data.
- KT-CT-8311: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
accountReference(AccountReferenceType) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"accountReference": AccountReferenceType
}CreateComplaint
The possible errors that can be raised are:
- KT-CT-10801: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
complaint(ComplaintType) | The complaint that has been created. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"complaint": ComplaintType
}CreateContributionAgreement
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-9601: Invalid data.
- KT-CT-9602: Unable to create contribution agreement.
- KT-CT-9605: Contribution amount cannot be 0 or negative.
- KT-CT-9606: Scheme is not accepting contributions at this time.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
contributionAgreement(ContributionAgreementType) | The created contribution agreement. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"contributionAgreement": ContributionAgreementType
}CreateCreditTransferPermission
Mutation to create a credit transfer permission.
The possible errors that can be raised are:
- KT-CT-3822: Unauthorized.
- KT-CT-3827: The ledger is not valid.
- KT-CT-3828: At least one of the provided ledgers must be a credit storage ledger.
- KT-CT-3829: The credit transfer permission already exists.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
validFrom(DateTime) | Datetime when the credit transfer permission is valid. |
Example
{
"possibleErrors": [PossibleErrorType],
"validFrom": "2020-01-01T00:00:00.000Z"
}CreateCustomerFeedback
The possible errors that can be raised are:
- KT-CT-5516: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
customerFeedback(CustomerFeedbackType) | The created customer feedback object. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"customerFeedback": CustomerFeedbackType
}CreateDirectDebitInstructionAndSchedule
Creates a direct debit instruction and a payment schedule for a given account.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-CT-3947: An unexpected error occurred.
- KT-CT-3948: Could not set up direct debit instruction.
- KT-GB-3930: Invalid data.
- KT-CT-3964: Could not create payment schedule on ledger with future payment schedules.
- KT-CT-3965: Payments list is empty. Unable to create payments for payment schedule.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentInstruction(PaymentInstructionType!) | The payment instruction. |
paymentSchedule(PaymentScheduleType!) | The payment schedule. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentInstruction": PaymentInstructionType,
"paymentSchedule": PaymentScheduleType
}CreateDirectDebitPaymentSchedule
Creates a direct debit payment schedule for a given account.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-GB-3931: Invalid data for payment schedule input.
- KT-CT-3964: Could not create payment schedule on ledger with future payment schedules.
- KT-CT-3965: Payments list is empty. Unable to create payments for payment schedule.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentSchedule(PaymentScheduleType!) | The payment schedule. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentSchedule": PaymentScheduleType
}CreateGoodsPurchase
The possible errors that can be raised are:
- KT-CT-8206: Invalid data.
- KT-CT-1131: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
goodsPurchase(GoodsPurchase) | Goods purchase created. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"goodsPurchase": GoodsPurchase
}CreateGoodsQuote
The possible errors that can be raised are:
- KT-CT-8202: Invalid data.
- KT-CT-8205: Unable to create quote.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
goodsQuote(GoodsQuote) | Goods quote created for the customer. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"goodsQuote": GoodsQuote
}CreateGoodsQuoteWithoutAccount
The possible errors that can be raised are:
- KT-CT-8202: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
goodsQuote(GoodsQuote) | Goods quote created for the customer. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"goodsQuote": GoodsQuote
}CreateMfaDevice
Create a multi-factor authentication (MFA) device for user.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-CT-1151: MFA device not found.
- KT-CT-1153: Unable to create MFA device.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
deviceEmail(String) | Email address to send the MFA code by default. |
devicePhone(String) | Phone number to send the MFA code by default. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
totpSecret(String) | Secret to setup Time-based One-Time Passwords (TOTP) in your authenticator or password manager manually. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceEmail": "abc123",
"devicePhone": "abc123",
"totpSecret": "abc123"
}CreateNewAgreementFromProductSwitchProcess
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-4924: Unauthorized.
- KT-CT-1509: Unable to create agreement.
- KT-CT-1507: Agreement product switch date is not within the acceptable range.
- KT-CT-1510: Product switch process not found.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
agreement(CommonAgreementType) | The new agreement created. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"agreement": CommonAgreementType
}CreateOfferGroupForQuoting
Create a quoting offer group.
The possible errors that can be raised are:
- KT-CT-12401: Unable to create offer group.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
offerGroup(OfferGroupType) | Quoting offer group. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"offerGroup": OfferGroupType
}CreateReferral
Use a referral code to create a referral and trigger a referral reward. This is for customers to refer other customers so it only works with friend referrals and not partner referrals. This will try to find a user with given referral code as their personal referral code. If found, it will create an AccountReferral instance for the given account number.
The possible errors that can be raised are:
- KT-CT-6723: Unauthorized.
- KT-CT-6710: Unable to create referral.
- KT-CT-6711: Accounts may not self-refer.
- KT-CT-6713: Referring and referred account brands do not match.
- KT-CT-6712: Invalid reference.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
referredAccountRewardAmount(Int) | The reward amount to be issued to the referred account, in smallest currency subunits. |
Example
{
"possibleErrors": [PossibleErrorType],
"referredAccountRewardAmount": 1
}CreateServiceOrder
The possible errors that can be raised are:
- KT-GB-4237: Unauthorized.
- KT-GB-4238: Service order cannot be created as the property does not have an external reference identifier.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
serviceOrder(ServiceOrderType) | The service order that was created. |
Example
{
"possibleErrors": [PossibleErrorType],
"serviceOrder": ServiceOrderType
}CreateVacantProperty
The possible errors that can be raised are:
- KT-CT-6629: Invalid data.
- KT-CT-6630: Property already exists.
- KT-CT-6631: External property reference already exists.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
accountNumber(String!) | The account number associated with the property. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
propertyId(String!) | The new vacant property id. |
Example
{
"possibleErrors": [PossibleErrorType],
"propertyId": "abc123",
"accountNumber": "abc123"
}Credit
A credit to the customer from the energy retailer.
Fields
| Name | Description |
|---|---|
accountNumber(String) | Unique identifier of the account the transaction belongs to. |
amount(Int) | Gross amount including tax (when payable). Refer to the Deprecated The 'amount' field is deprecated. |
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. |
isAccountPayment(Boolean) | Deprecated. Deprecated The 'isAccountPayment' field is deprecated. |
isCredit(Boolean) | Deprecated. Deprecated The 'isCredit' field is deprecated. |
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. |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
fromSourceLedgers([CreditTransferPermissionFromSourceLedgerType]) | Permissions for credit transfers when the ledger is the target. |
toTargetLedgers([CreditTransferPermissionToTargetLedgerType]) | Permissions for credit transfers when the ledger is the source. |
Example
{
"fromSourceLedgers": [CreditTransferPermissionFromSourceLedgerType],
"toTargetLedgers": [CreditTransferPermissionToTargetLedgerType]
}CustomerFeedbackFormConnectionTypeConnection
Paginator of Customer Feedback Form.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(CustomerFeedbackFormType) | The item at the end of the edge |
Example
{
"node": CustomerFeedbackFormType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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"
}Dashboard
A list of components which comprise a dashboard screen.
Fields
| Name | Description |
|---|---|
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"
}DecimalType
Graphene type object to represent float values
Fields
| Name | Description |
|---|---|
decimalValue(Decimal!) | Value of this field. |
Example
{
"decimalValue": "1.0"
}DeeplinkActionType
An action which navigates to the URL of another backend screen.
Fields
| Name | Description |
|---|---|
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"
}DeleteMfaDevice
Delete a multi-factor authentication (MFA) device for the authenticated user.
The possible errors that can be raised are:
- KT-CT-1150: MFA device not found.
- KT-CT-1154: Unable to delete MFA device.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
deviceDeleted(Boolean) | Flag to indicate if the MFA device has been successfully deleted. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceDeleted": true
}DeletePushNotificationBinding
The possible errors that can be raised are:
- KT-CT-5411: Invalid token or no push notification binding found for the given account user.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
status(DeletePushNotificationBindingOutput) |
Example
{
"possibleErrors": [PossibleErrorType],
"status": "SUCCESSFUL"
}Fields
| Name | Description |
|---|---|
deviceIdentifier(String) | The id of the device. |
readings(Readings) | Get readings from a readable device e.g., a supply point, device, or register. Arguments
The exclusive end of the time period as an isoformatted string.
Get readings of only this type.
The inclusive start of the time period as an isoformatted string.
Time buckets to group readings into.
The timezone in which to return readings. |
registers(RegistersConnection) | The registers associated with this device. |
Example
{
"readings": Readings,
"deviceIdentifier": "abc123",
"registers": RegistersConnection
}Fields
| Name | Description |
|---|---|
readings(Readings) | Get readings from a readable device e.g., a supply point, device, or register. Arguments
The exclusive end of the time period as an isoformatted string.
Get readings of only this type.
The inclusive start of the time period as an isoformatted string.
Time buckets to group readings into.
The timezone in which to return readings. |
registerIdentifier(String) | The id of the register. |
Example
{
"readings": Readings,
"registerIdentifier": "abc123"
}DevicesConnection
Pagination for devices.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Device) | The item at the end of the edge |
Example
{
"node": Device,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
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",
"sortCode": "abc123",
"iban": "abc123",
"accountHolder": "abc123",
"instructionType": "abc123",
"cardPaymentNetwork": "abc123",
"cardExpiryMonth": 1,
"cardExpiryYear": 1,
"lastFourDigitsOfAccountNumber": "abc123",
"maskedAccountIdentifier": "abc123",
"maskedIban": "abc123",
"owners": [PaymentInstructionOwnerType]
}Fields
| Name | Description |
|---|---|
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) | Override Field to add additional attributes and extend description with possible_errors |
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"
}EmailAttachmentType
Represents a file to attach to a email message.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
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",
"toNumber": "abc123",
"fromNumber": "abc123",
"channel": "abc123",
"sender": "abc123",
"recipient": "abc123"
}Fields
| Name | Description |
|---|---|
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) | Override Field to add additional attributes and extend description with possible_errors |
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
| Name | Description |
|---|---|
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"
}EndContributionAgreement
The possible errors that can be raised are:
- KT-CT-9603: Unable to find contribution agreement.
- KT-CT-4123: Unauthorized.
- KT-CT-9604: Unable to end contribution agreement.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
contributionAgreement(ContributionAgreementType) | The created contribution agreement. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"contributionAgreement": ContributionAgreementType
}EnergyMixDataType
Energy mix data can include the latest carbon intensity index in a region.
Fields
| Name | Description |
|---|---|
carbonIntensityIndex(String) | Current carbon intensity index. |
Example
{
"carbonIntensityIndex": "abc123"
}EnrollAccountInLoyaltyProgram
Enroll an account into the loyalty program.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-9213: ineligible loyalty points enrollment.
- KT-CT-9210: Unhandled Loyalty Points exception.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
outcome(EnrollAccountInLoyaltyProgramOutcome) | Outcome of the loyalty points campaign enrollment. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"outcome": EnrollAccountInLoyaltyProgramOutcome
}Fields
| Name | Description |
|---|---|
hasEnrolled(Boolean) | Whether or not this account has been enrolled in the loyalty points campaign. |
Example
{
"hasEnrolled": true
}EnrollmentCancelled
Enrollment was successfully cancelled.
Fields
| Name | Description |
|---|---|
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
}Fields
| Name | Description |
|---|---|
field(String!) | |
messages([String!]!) |
Example
{
"field": "abc123",
"messages": "abc123"
}Fields
| Name | Description |
|---|---|
costCurrency(String!) | Monetary currency of the statistic in ISO-4217 format. |
estimatedAmount(Decimal!) | |
pricePerUnit(PricePerUnit) | Net price per unit of the statistic if applicable. |
Example
{
"estimatedAmount": "1.0",
"costCurrency": "abc123",
"pricePerUnit": PricePerUnit
}EstimatedReadingType
Estimated reading for a meter.
Fields
| Name | Description |
|---|---|
estimateOn(Date!) | Date to estimate reading on. |
estimatedValue(Decimal!) | Estimated usage value of water in cubic metres. |
Example
{
"estimateOn": "2020-01-01",
"estimatedValue": "1.0"
}ExchangeMeter
Exchange the meters on a property.
The possible errors that can be raised are:
- KT-GB-11001: Could not validate meter.
- KT-GB-11002: Unable to exchange meter.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
meter(WaterMeterType) | The newly installed meter. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"meter": WaterMeterType
}ExportReadingsConnection
Pagination for readings representing outgoing utility flow e.g., solar generation.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Reading) | The item at the end of the edge |
Example
{
"node": Reading,
"cursor": "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
| Name | Description |
|---|---|
salesRecordIdentifier(String) | The unique identifier for the sales record. |
Example
{
"salesRecordIdentifier": "abc123"
}Fields
| Name | Description |
|---|---|
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"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(FieldSpecificRateLimitInformation) | The item at the end of the edge |
Example
{
"node": FieldSpecificRateLimitInformation,
"cursor": "abc123"
}FloatType
Graphene type object to represent float values
Fields
| Name | Description |
|---|---|
floatValue(Float!) | Value of this field. |
Example
{
"floatValue": 1.0
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
content(JSONString) | |
errors([SerializerFieldErrorsType]) | |
id(Int) |
Example
{
"id": 1,
"content": {"key": "value"},
"errors": [SerializerFieldErrorsType]
}FractionSizeType
A fractional measurement.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
areaCode(String!) | A client-defined classifier to segment supply points for billing purposes. |
id(ID!) | |
inset(InsetType) | Inset for the supply point. |
linkedServices([LinkedServiceType!]) | All active linked services for the supply point. |
pipeSize(Int) | Size of the physical pipe of the supply point. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
propertyType(FreshWaterSupplyPointPropertyType) | Type of property that the supply point is on |
rateableValue(Int) | An assessment of the annual rental value of a property between 1967 and 1990. Required for the billing of unmetered properties. |
spid(String) | A unique identifier for every commercial fresh and waste water supply point in the UK. |
wholesalerCode(FreshWaterSupplyPointWholesalerCode!) |
Example
{
"id": "abc123",
"propertyType": "NONE",
"spid": "abc123",
"wholesalerCode": "AFFINITY",
"areaCode": "abc123",
"rateableValue": 1,
"pipeSize": 1,
"possibleErrors": [PossibleErrorType],
"inset": InsetType,
"linkedServices": [LinkedServiceType]
}FulfilmentType
Represents an amount of money that can be used to fulfil an obligation.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(FundingSourceAmountType) | The item at the end of the edge |
Example
{
"node": FundingSourceAmountType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
}GasFiltersOutput
Filter measurements by gas parameters.
Fields
| Name | Description |
|---|---|
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"
}GenericBackendScreen
A generic backend screen that can be used to define any type of screen.
Fields
| Name | Description |
|---|---|
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
Get the client secret needed to create a new payment instruction using an embedded form.
The possible errors that can be raised are:
- KT-CT-4177: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
secretKey(String) |
Example
{
"possibleErrors": [PossibleErrorType],
"secretKey": "abc123"
}GetEmbeddedSecretForNewPaymentInstructionWithoutAccount
Get the client secret needed to create a new stored payment instruction using an embedded form.
This mutation is specifically for saving payment methods for future use, without immediately creating a payment instruction tied to a specific ledger or account.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
secretKey(String) | The client secret needed to create a new stored payment instruction. |
Example
{
"possibleErrors": [PossibleErrorType],
"secretKey": "abc123"
}GetHostedUrlForNewPaymentInstruction
Get external URL where the user can set up a payment instruction.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
url(String) | URL at which payment instruction can be set up. |
Example
{
"possibleErrors": [PossibleErrorType],
"url": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(GoodsProduct) | The item at the end of the edge |
Example
{
"node": GoodsProduct,
"cursor": "abc123"
}Example
{
"code": "abc123",
"internalName": "abc123"
}Fields
| Name | Description |
|---|---|
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. |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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"
}Fields
| Name | Description |
|---|---|
email(String!) | The user's email address obfuscated. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"email": "abc123"
}HardshipAgreementType
Represents a Hardship Agreement for a particular Account.
Fields
| Name | Description |
|---|---|
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"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Reading) | The item at the end of the edge |
Example
{
"node": Reading,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
paymentAmount(Int) | The initial payment estimate for the given account. |
paymentFrequency(PaymentFrequencyOptions) | The frequency of the payment schedule. |
paymentFrequencyMultiplier(Int) | The multiplier for the payment frequency. |
Example
{
"paymentAmount": 1,
"paymentFrequency": "Weekly",
"paymentFrequencyMultiplier": 1
}Fields
| Name | Description |
|---|---|
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"
}InitiateHostedStandalonePayment
Market-level override of the InitiateHostedStandalonePayment mutation to remove the CANACCESSCUSTOMER_QUERIES from the required permissions and allow us to restrict access to this mutation, e.g. if a user is in bad debt.
TODO: Remove this once the Core team modifies the core mutation and gets rid of the CANACCESSCUSTOMER_QUERIES permission on it.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-3943: Invalid ledger.
- KT-CT-3957: No collection method provided.
- KT-CT-3958: Provide either ledger ID or ledger number.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
payment(InitiateHostedStandalonePaymentOutput) | The details required to refer to and complete a hosted payment. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"payment": InitiateHostedStandalonePaymentOutput
}InitiateHostedStandalonePaymentOutput
Tokens required to collect and retrieve a standalone payment.
Fields
| Name | Description |
|---|---|
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
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-4619: Quote with given code not found.
- KT-CT-4624: Unable to accept the given product code.
- KT-CT-4924: Unauthorized.
- KT-CT-4626: No product selected for the given quote code.
- KT-CT-4719: No supply point found for identifier provided.
- KT-CT-1509: Unable to create agreement.
- KT-CT-1507: Agreement product switch date is not within the acceptable range.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
productCode(String!) | The selected product for a specific product switch. |
switchDate(Date!) | The date at which the product switch becomes effective. |
Example
{
"possibleErrors": [PossibleErrorType],
"productCode": "abc123",
"switchDate": "2020-01-01"
}InitiateStandalonePayment
Market-level override of the InitiateStandalonePayment mutation to remove the CANACCESSCUSTOMER_QUERIES from the required permissions and allow us to restrict access to this mutation, e.g. if a user is in bad debt.
TODO: Remove this once the Core team modifies the core mutation and gets rid of the CANACCESSCUSTOMER_QUERIES permission on it.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-4177: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-3943: Invalid ledger.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
payment(InitiateStandalonePaymentOutput) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"payment": InitiateStandalonePaymentOutput
}InitiateStandalonePaymentOutput
Tokens required to collect and retrieve a standalone payment.
Fields
| Name | Description |
|---|---|
retrievalToken(String!) | The retrieval token for this standalone payment. |
secretToken(String!) | The secret used to collect the payment. |
Example
{
"retrievalToken": "abc123",
"secretToken": "abc123"
}Fields
| Name | Description |
|---|---|
all([InkContactChannelIdentity!]!) | All contacts for this conversation. |
default(InkContactChannelIdentity) | The default contact for this conversation. |
Example
{
"default": InkContactChannelIdentity,
"all": InkContactChannelIdentity
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
id(ID!) | |
status(InkConversationStatus!) | The status of the conversation. |
Example
{
"id": "abc123",
"status": "OPEN",
"contactChannelIdentities": InkContactChannelIdentities,
"accountUsers": [AccountUserType],
"events": InkConversationEventsConnection
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(InkConversationEvent!) | The item at the end of the edge |
Example
{
"node": InkNewMessage,
"cursor": "abc123"
}InkEmail
This type wraps around the Message type for emails.
Fields
| Name | Description |
|---|---|
attachments([InkMessageAttachment!]!) | Attachments on the message. |
cc([String!]!) | CC recipients on the message. |
contactChannelIdentity(InkContactChannelIdentity!) | The contact channel identity. |
delivery(InkMessageDelivery!) | The delivery status of the message. |
direction(InkMessageDirection!) | The direction of the email. |
displayContent(String!) | The content of the message. |
fromHandle(String!) | From email address. |
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
}InkGenericMessage
This message type is used for messages that belong to contact channels without a more granular message type.
Fields
| Name | Description |
|---|---|
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"
}InkLine
This type wraps around the Message type for LINE message.
Fields
| Name | Description |
|---|---|
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
}InkLiveChatConversation
Ink live chat
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
status(InkMessageDeliveryStatus!) | Message delivery status. |
Example
{
"status": "PENDING"
}InkNewMessage
This types is used for both the message-received and message-sent conversation events.
Fields
| Name | Description |
|---|---|
message(InkMessage!) | The message. |
occurredAt(DateTime!) | The time the conversation event occurred. |
Example
{
"occurredAt": "2020-01-01T00:00:00.000Z",
"message": InkEmail
}InkPost
This type wraps around the Message type for Post.
Fields
| Name | Description |
|---|---|
contactChannelIdentity(InkContactChannelIdentity!) | The contact channel identity. |
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
}InkSMS
This type wraps around the Message type for SMS.
Fields
| Name | Description |
|---|---|
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
}InkTwilioWhatsApp
This type wraps around the Message type for a Twilio WhatsApp message.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
}InsertUserPSRRecords
Insert special circumstance priority services for the user. This mutation replaces all the active PSR records with the given input. Make sure to include all existing PSR records for the user if you do not intend to deactivate any records.
The possible errors that can be raised are:
- KT-GB-5415: The requested PSR record type is not valid.
- KT-GB-5411: Failed to update special circumstance record.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
records([SpecialCircumstanceRecordType]) | List of special circumstance records for the user. |
Example
{
"possibleErrors": [PossibleErrorType],
"records": [SpecialCircumstanceRecordType]
}Fields
| Name | Description |
|---|---|
id(ID!) | |
name(String!) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
reference(String!) |
Example
{
"id": "abc123",
"reference": "abc123",
"name": "abc123",
"possibleErrors": [PossibleErrorType]
}InstallMeter
Install a meter on an unmetered property.
The possible errors that can be raised are:
- KT-GB-11001: Could not validate meter.
- KT-GB-11003: Unable to install meter.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
meter(WaterMeterType) | The newly installed meter. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"meter": WaterMeterType
}IntegerType
Graphene type object to represent integer values
Fields
| Name | Description |
|---|---|
integerValue(Int!) | Value of this field. |
Example
{
"integerValue": 1
}Fields
| Name | Description |
|---|---|
accumulation(Decimal) | Deprecated The 'accumulation' field is deprecated. |
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
Market-level override of the InvalidatePaymentInstruction mutation to remove the CANACCESSCUSTOMER_QUERIES from the required permissions and allow us to restrict access to this mutation, e.g. if a user is in bad debt.
TODO: Remove this once the Core team modifies the core mutation and gets rid of the CANACCESSCUSTOMER_QUERIES permission on it.
The possible errors that can be raised are:
- KT-CT-3926: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
instruction(InvalidatePaymentInstructionOutput) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"instruction": InvalidatePaymentInstructionOutput
}InvalidatePaymentInstructionOutput
Output for invalidating an arbitrary payment instruction.
Fields
| Name | Description |
|---|---|
id(Int) |
Example
{
"id": 1
}InvalidatePreSignedToken
Invalidate a previously issued expiring/pre-signed token.
This mutation can be used to invalidate the token itself.
To invalidate tokens issued to a particular user, use InvalidatePreSignedTokensForUser mutation.
The possible errors that can be raised are:
- KT-CT-1129: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
token(PreSignedToken) |
Example
{
"possibleErrors": [PossibleErrorType],
"token": PreSignedToken
}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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
annulledBy(AnnulmentBillingDocumentType) | Billing document that annuls this invoice. |
documentDebtPosition(BillingDocumentPositionType) | Position of the billing document in the delinquent debt tracking system. |
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. |
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. |
pdfUrl(String) | URL to the PDF of the Invoice. |
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
The order in which to return the transactions. |
Example
{
"id": 1,
"firstIssued": "2020-01-01T00:00:00.000Z",
"pdfUrl": "abc123",
"annulledBy": AnnulmentBillingDocumentType,
"number": "abc123",
"invoicedAmount": 1,
"totalCharges": InvoiceTotalType,
"totalCredits": InvoiceTotalType,
"transactions": BillTransactionConnectionTypeConnection,
"documentDebtPosition": BillingDocumentPositionType,
"paymentDueDate": "2020-01-01"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
attachments(BillingAttachmentConnectionTypeConnection) | |
billType(BillTypeEnum) | The type of the bill. |
fromDate(Date) | The date of the bill is covered from. |
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. |
issuedDate(Date) | The date the bill was sent to the customer. |
representations(BillRepresentationConnectionTypeConnection) | |
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. |
toDate(Date) | The date of the bill is covered to. |
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 ledger. Arguments
The order in which to return the transactions.
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,
"identifier": "abc123",
"grossAmount": 1,
"isAnnulled": true,
"totalCharges": InvoiceTotalType,
"totalCredits": InvoiceTotalType,
"totalPayments": 1,
"transactions": BillTransactionConnectionTypeConnection,
"representations": BillRepresentationConnectionTypeConnection
}ItemProfileType
Represents the characteristics and configuration of an ordered item.
Fields
| Name | Description |
|---|---|
characteristics(JSONString) | The characteristic values for this item profile. |
Example
{
"characteristics": {"key": "value"}
}JoinSupplierAcceptTermsAndConditions
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-4501: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
success(Boolean) | Indicator that the mutation has completed successfully. |
Example
{
"possibleErrors": [PossibleErrorType],
"success": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(JoinSupplierProcessType) | The item at the end of the edge |
Example
{
"node": JoinSupplierProcessType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
affiliateLink(AffiliateLinkType) | Affiliate link for the join supplier journey. |
note(String) | The note associated with this join supplier process data. |
requestedAt(DateTime!) | When the journey was requested. |
salesChannel(String) | Sales channel. |
salesSubchannel(String) | Sales subchannel. |
supplyPointContexts([SupplyPointContextDataInterface]) | The supply point context data. |
Example
{
"requestedAt": "2020-01-01T00:00:00.000Z",
"salesChannel": "abc123",
"salesSubchannel": "abc123",
"supplyPointContexts": SupplyPointContextDataInterface,
"note": "abc123"
}JoinSupplierProcessType
Represents a Join Supplier process.
Fields
| Name | Description |
|---|---|
currentProcessData(JoinSupplierProcessDataType) | The current process data associated with the Join Supplier process. |
id(ID) | The ID or the primary key of the lifecycle process. |
number(String) | The unique identifier of the process. |
status(LifecycleSupplyPointProcessStatus) | The status of the process. |
supplyPoints(SupplyPointConnectionTypeConnection!) | The supply points associated with the process. |
Example
{
"id": "abc123",
"status": "PENDING",
"supplyPoints": SupplyPointConnectionTypeConnection,
"number": "abc123",
"currentProcessData": JoinSupplierProcessDataType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
SHA(String) | The git commit SHA that is being executed. |
number(String) | The version number that is being executed. |
Example
{
"number": "abc123",
"SHA": "abc123"
}Fields
| Name | Description |
|---|---|
blockListHits([String]) | List of block list hits found. |
valid(Boolean) | Indicates if the block list validation passed. |
Example
{
"valid": true,
"blockListHits": ["abc123"]
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
Example
{
"id": "abc123",
"status": "PENDING",
"supplyPoints": SupplyPointConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
id(ID) | The ID or the primary key of the lifecycle process. |
number(String) | The unique identifier of the process. |
status(LifecycleSupplyPointProcessStatus) | The status of the process. |
supplyPoints(SupplyPointConnectionTypeConnection!) | The supply points associated with the process. |
Example
{
"id": "abc123",
"status": "PENDING",
"number": "abc123",
"supplyPoints": SupplyPointConnectionTypeConnection
}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
| Name | Description |
|---|---|
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. |
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. |
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. |
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. |
ledgerType(String) | The ledger type code. |
name(String) | The display name of the ledger. |
number(String) | The canonical name of the ledger. |
paymentAdequacy(PaymentAdequacyDetailsType) | Override Field to add additional attributes and extend description with possible_errors |
paymentPreferences(PaymentPreferenceConnectionTypeConnection) | The customer's preferred payment methods. |
paymentsWithNonConcludedRePresentation(PaymentWithNonConcludedRePresentationConnectionTypeConnection) | Payments with non-concluded re-presentation. |
refundRequests(RefundRequestConnectionTypeConnection) | Refund requests for a given ledger. |
repaymentRequests(RepaymentRequestConnectionTypeConnection) | Repayment requests for a given ledger. |
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. |
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
Optional date representing the beginning of the postedDate range filter. This date value is inclusive.
The order in which to return the transactions.
Optional date representing the end of the postedDate range filter. This date value is exclusive.
Include only these specific transaction types in the result. |
usablePaymentInstructions(PaymentInstructionConnectionTypeConnection) | The usable payment instructions for this ledger. |
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,
"debtLedger": LedgerType,
"agreements": AgreementConnection,
"usablePaymentInstructions": PaymentInstructionConnectionTypeConnection,
"supportsStatements": true,
"supportsInvoices": true,
"currentDirectDebitInstructionInvalidatedWithVendor": true,
"paymentsWithNonConcludedRePresentation": PaymentWithNonConcludedRePresentationConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
joinSupplierProcesses(JoinSupplierProcessConnectionTypeConnection) | List of JoinSupplierProcess for an account. |
leavePropertyProcesses(LeavePropertyProcessConnectionTypeConnection) | List of LeavePropertyProcess for an account. |
leaveSupplierProcesses(LeaveSupplierProcessConnectionTypeConnection) | List of LeaveSupplierProcess for an account. |
occupyPropertyProcesses(OccupyPropertyProcessConnectionTypeConnection) | List of OccupyPropertyProcess for an account. |
Example
{
"leaveSupplierProcesses": LeaveSupplierProcessConnectionTypeConnection,
"joinSupplierProcesses": JoinSupplierProcessConnectionTypeConnection,
"occupyPropertyProcesses": OccupyPropertyProcessConnectionTypeConnection,
"leavePropertyProcesses": LeavePropertyProcessConnectionTypeConnection
}LineCommonError
A base error type. Should be used for general application or lower level errors.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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"
}LineLinkRedirectResponse
Link Successful. Complete link process with LINE.
Fields
| Name | Description |
|---|---|
redirectUrl(String!) |
Example
{
"redirectUrl": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
displayContent(String!) | The display content. |
emojis([LineEmoji!]) | The emojis in the message. |
Example
{
"displayContent": "abc123",
"emojis": [LineEmoji]
}LinkActionType
An action which navigates to any URL.
Fields
| Name | Description |
|---|---|
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"
}LinkTokenNotFound
Returned when no LineAccountLink record matching the parameters exists.
Fields
| Name | Description |
|---|---|
type(LineLinkErrorType!) | The type of error that occurred. |
Example
{
"type": "NO_MATCHING_LINE_LINK"
}Fields
| Name | Description |
|---|---|
activeFrom(DateTime!) | |
activeTo(DateTime) | |
id(ID!) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
service(LinkedServiceService!) |
Example
{
"id": "abc123",
"service": "FRESH",
"activeFrom": "2020-01-01T00:00:00.000Z",
"activeTo": "2020-01-01T00:00:00.000Z",
"possibleErrors": [PossibleErrorType]
}Fields
| Name | Description |
|---|---|
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. |
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"
}LoyaltyPointLedgerEntryType
A Loyalty Point ledger entry.
Fields
| Name | Description |
|---|---|
accountNumber(String) | The account number associated with the entry. |
balanceBroughtForward(String) | Equal to the |
balanceCarriedForward(String) | Equal to the |
id(ID!) | |
idempotencyKey(UUID) | A unique idempotency key for the operation. |
ledgerType(String) | The |
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
| Name | Description |
|---|---|
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"
}MarketSupplyQuotedProductConnectionTypeConnection
Pagination for quoted products.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(MarketSupplyQuotedProductType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}MarketSupplyQuotedSupplyPointConnectionTypeConnection
Pagination for quoted supply points.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(MarketSupplyQuotedSupplyPointType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(MeasurementInterface) | The item at the end of the edge |
Example
{
"node": MeasurementInterface,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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]
}MessageEdge
A Relay edge containing a Message and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(Message) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
key(String!) | The key for the metadata. |
value(JSONString) | The metadata value. |
Example
{
"key": "abc123",
"value": {"key": "value"}
}Fields
| Name | Description |
|---|---|
deviceType(String) | The type of MFA device. |
isConfirmed(Boolean) | Whether the MFA device is confirmed or not. |
Example
{
"deviceType": "abc123",
"isConfirmed": true
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([MissedPaymentsConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": MissedPaymentsConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}MissedPaymentsConnectionTypeEdge
A Relay edge containing a MissedPaymentsConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(MissedPaymentsType) | The item at the end of the edge |
Example
{
"node": MissedPaymentsType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
amountDue(Int) | The amount due and missing (pence). |
amountPayable(Int) | The full amount expected for this payment (pence). |
daysOverdue(Int) | Number of days this payment is overdue. |
payableDate(Date) | The date this payment is due. |
Example
{
"amountDue": 1,
"amountPayable": 1,
"payableDate": "2020-01-01",
"daysOverdue": 1
}ModifyMeter
Modify a meters' details
The possible errors that can be raised are:
- KT-GB-11001: Could not validate meter.
- KT-GB-11005: Could not modify meter.
- KT-GB-11006: Water meter cannot be found with the provided identifiers.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
meter(WaterMeterType) | The meter to modify. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"meter": WaterMeterType
}MoveInCreateCustomer
Create new customer who just moved in Kraken-serviced area.
The possible errors that can be raised are:
- KT-GB-5416: Invalid data.
- KT-CT-5450: Password is invalid.
- KT-CT-4111: Unable to use given email address.
- KT-CT-10337: Prechecks have failed.
- KT-CT-6632: Property is assessed.
- KT-GB-6637: Unable to process the move-in due to billing issues.
- KT-CT-6425: Unable to create the meter reading.
- KT-CT-4642: Unable to quote for the provided supply point.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
accountNumber(String!) | The account number we created. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"accountNumber": "abc123"
}MoveOut
The possible errors that can be raised are:
- KT-GB-6628: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountType) | The account initiating the move out. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountType
}NotifiableApplicationType
Represents an application that can receive push notifications.
Fields
| Name | Description |
|---|---|
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!) | |
id(ID!) | |
name(String!) | Human readable name for the app. |
pushNotificationBindings([PushNotificationBindingType!]!) | |
service(NotifiableApplicationService!) |
Example
{
"id": "abc123",
"name": "abc123",
"bundleId": "abc123",
"service": "GCM",
"externalProvider": "PINPOINT",
"externalProjectId": "abc123",
"description": "abc123",
"pushNotificationBindings": PushNotificationBindingType
}ObtainKrakenJSONWebToken
The unifying approach used to get a Kraken token (JWT: JSON Web Token) with different types of input.
The currently supported inputs are: - account user email/password combination - account user API key - organization live secret key - pre-signed key - refresh token
The possible errors that can be raised are:
- KT-CT-1135: Invalid data.
- KT-CT-1134: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
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 |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
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 |
token(String!) | The Kraken Token. Can be used in the |
Example
{
"possibleErrors": [PossibleErrorType],
"token": "abc123",
"payload": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
"refreshToken": "abc123",
"refreshExpiresIn": 1
}OccupancyPeriodType
An occupancy period for a property.
Fields
| Name | Description |
|---|---|
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) | |
isOccupier(Boolean) | Whether the account associated with the occupancy period is an occupier account type. |
Example
{
"id": "abc123",
"effectiveFrom": "2020-01-01T00:00:00.000Z",
"effectiveTo": "2020-01-01T00:00:00.000Z",
"isOccupier": true,
"accountNumber": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
Example
{
"id": "abc123",
"status": "PENDING",
"occupyAt": "2020-01-01T00:00:00.000Z",
"supplyPoints": SupplyPointConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
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. |
Fields
| Name | Description |
|---|---|
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
}OnSiteJobsAppointmentActionConnectionTypeEdge
A Relay edge containing a OnSiteJobsAppointmentActionConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(OnSiteJobsAppointmentActionType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}OnSiteJobsAppointmentTypeConnectionTypeEdge
A Relay edge containing a OnSiteJobsAppointmentTypeConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(OnSiteJobsAppointmentType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}OnSiteJobsJobTypeType
Represents a job type available for on-site jobs requests.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(OnSiteJobsRequestActionType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
assignedToTeam(String) | Team assigned to this opportunity. |
assignedToUser(String) | User assigned to this opportunity. |
consents([ConsentOutput]) | List of consents for the opportunity. |
email(String) | Lead legal contact email. |
extraDetails(JSONString) | Extra details about the opportunity. |
leadNumber(String) | Lead number. |
leadType(String) | Lead type. |
name(String) | Lead legal name. |
number(String) | Opportunity number. |
offerGroupId(String) | Offer group ID. |
opportunityAddress(AddressOutput) | Opportunity address. |
opportunityId(ID) | Opportunity ID. |
phoneNumber(String) | Lead legal contact phone number. |
productOfferingId(String) | Product offering ID. |
salesChannel(String) | Sales channel. |
stage(String) | Current stage in a funnel. |
Example
{
"opportunityId": "abc123",
"leadNumber": "abc123",
"leadType": "abc123",
"name": "abc123",
"email": "abc123",
"phoneNumber": "abc123",
"number": "abc123",
"stage": "abc123",
"extraDetails": {"key": "value"},
"opportunityAddress": AddressOutput,
"salesChannel": "abc123",
"assignedToTeam": "abc123",
"assignedToUser": "abc123",
"productOfferingId": "abc123",
"offerGroupId": "abc123",
"consents": [ConsentOutput]
}OrderDetailsType
Represents the details of an Order.
Fields
| Name | Description |
|---|---|
order(OrderType) | The order details. The possible errors that can be raised are:
|
resources([OrderResource]) | The resources associated with the order. The possible errors that can be raised are:
|
status(OrderStatus) | The current status of the order. The possible errors that can be raised are:
|
Example
{
"status": "PENDING",
"resources": [OrderResource]
}OrderItemType
Represents an item being ordered.
Fields
| Name | Description |
|---|---|
code(NonEmptyString) | The code identifying the item. |
marketData(JSONString) | Market-specific data for the item. |
profile(ItemProfileType) | The profile containing characteristics of the item. |
Example
{
"profile": ItemProfileType,
"marketData": {"key": "value"},
"code": NonEmptyString
}OrderLineDateRangeType
Represents a period defined by specific start and end dates.
Fields
| Name | Description |
|---|---|
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"
}OrderLineDurationType
Represents a period defined by duration in seconds.
Fields
| Name | Description |
|---|---|
duration(Float!) | The duration in seconds. |
Example
{
"duration": 1.0
}OrderLineType
Represents a line item in an order.
Fields
| Name | Description |
|---|---|
item(OrderItemType) | The item being ordered. |
period(OrderLinePeriodType) | 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
{
"item": OrderItemType,
"period": OrderLineDateRangeType,
"target": AccountType,
"terms": TermInterface
}OrderResource
Represents a resource associated with an order.
Fields
| Name | Description |
|---|---|
resourceIdentifier(NonEmptyString) | The unique identifier of the resource. |
resourceType(NonEmptyString) | The type of the resource. |
Example
{
"resourceType": NonEmptyString,
"resourceIdentifier": NonEmptyString
}Fields
| Name | Description |
|---|---|
description(String!) | |
extraInfoFields([String!]) | |
id(ID!) | |
internalCode(String!) | |
isTemporary(Boolean) |
Example
{
"id": "abc123",
"description": "abc123",
"internalCode": "abc123",
"isTemporary": true,
"extraInfoFields": ["abc123"]
}PageInfo
The Relay compliant PageInfo type, containing data necessary to paginate this connection.
Fields
| Name | Description |
|---|---|
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"
}Payment
A payment from the customer to the supplier.
Fields
| Name | Description |
|---|---|
accountNumber(String) | Unique identifier of the account the transaction belongs to. |
amount(Int) | Gross amount including tax (when payable). Refer to the Deprecated The 'amount' field is deprecated. |
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. |
isAccountPayment(Boolean) | Deprecated. Deprecated The 'isAccountPayment' field is deprecated. |
isCredit(Boolean) | Deprecated. Deprecated The 'isCredit' field is deprecated. |
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. |
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"
}PaymentAdequacyDetailsType
Payment adequacy adjusts fixed payment schedules to maintain a healthy ledger balance over a year.
Fields
| Name | Description |
|---|---|
isCurrentlyExempt(Boolean) | This ledger will be exempt from default Payment Adequacy. This may mean that it is completely exempt, or handled with special rules. |
Example
{
"isCurrentlyExempt": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PaymentForecastType) | The item at the end of the edge |
Example
{
"node": PaymentForecastType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PaymentInstructionType) | The item at the end of the edge |
Example
{
"node": PaymentInstructionType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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. |
Example
{
"accountUser": AccountUserType,
"business": BusinessType
}PaymentInstructionType
Payment Instructions
Fields
| Name | Description |
|---|---|
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",
"sortCode": "abc123",
"iban": "abc123",
"accountHolder": "abc123",
"instructionType": "abc123",
"cardPaymentNetwork": "abc123",
"cardExpiryMonth": 1,
"cardExpiryYear": 1,
"supplementaryLedger": SupplementaryLedgerType,
"bankCode": "abc123",
"accountType": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"vendor": "abc123",
"cardNumber": "abc123",
"cardType": "abc123",
"maskedAccountIdentifier": "abc123",
"owners": [PaymentInstructionOwnerType]
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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.
Example
{
"payableDate": "2020-01-01",
"amount": 1,
"paymentType": "abc123"
}PaymentPlanType
An object that represents a payment plan.
Fields
| Name | Description |
|---|---|
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!) |
Example
{
"id": "abc123",
"account": AccountType,
"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",
"payments": PaymentPlanPaymentType,
"nextPayment": PaymentPlanPaymentType,
"strategyDisplayName": "abc123",
"ledgerNumber": "abc123"
}PaymentPreferenceConnectionTypeConnection
Pagination object for PaymentPreferenceUnion
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PaymentRequestType) | The item at the end of the edge |
Example
{
"node": PaymentRequestType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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. |
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
| Name | Description |
|---|---|
paymentRequest(PaymentRequestConnectionTypeConnection) | A list of payment requests for a given ledger. |
Example
{
"paymentRequest": PaymentRequestConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PaymentScheduleType) | The item at the end of the edge |
Example
{
"node": PaymentScheduleType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
args(JSONString) | The arguments of the delay configuration. |
code(String) | The code of the delay configuration. |
Example
{
"code": "abc123",
"args": {"key": "value"}
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
delayConfiguration(PaymentScheduleDelayConfigurationType) | The delay configuration for this payment schedule. |
id(ID!) | |
isPaymentHoliday(Boolean) | |
isVariablePaymentAmount(Boolean!) | |
missedPayments(MissedPaymentsConnectionTypeConnection) | Details of missed payments for this 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!) | |
paymentPlan(PaymentPlanType) | The payment plan associated with this payment schedule. |
reason(PaymentScheduleReasonOptions) | The reason the payment schedule was created. |
scheduleType(ScheduleType) | The method of payment for the schedule. Deprecated The 'scheduleType' field is deprecated. |
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. |
validFrom(Date!) | |
validTo(Date) |
Example
{
"id": "abc123",
"supplementaryLedger": SupplementaryLedgerType,
"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,
"isPaymentHoliday": true,
"scheduleType": "BACS_TRANSFER",
"paymentDayDetails": PaymentSchedulePaymentDayDetailsType,
"delayConfiguration": PaymentScheduleDelayConfigurationType,
"paymentPlan": PaymentPlanType,
"missedPayments": MissedPaymentsConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PaymentWithNonConcludedRePresentationType) | The item at the end of the edge |
Example
{
"node": PaymentWithNonConcludedRePresentationType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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"
}Fields
| Name | Description |
|---|---|
attachments(BillingAttachmentConnectionTypeConnection) | |
billType(BillTypeEnum) | The type of the bill. |
closingBalance(Int!) | The closing balance of an issued billing document. |
documentDebtPosition(BillingDocumentPositionType) | Position of the billing document in the delinquent debt tracking system. |
fromDate(Date) | The date of the constituent bill covered from. |
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. |
isFinalStatement(Boolean!) | Whether this is a final statement for the account (e.g., due to house move). |
issuedDate(Date) | The date the bill was sent to the customer. |
representations(BillRepresentationConnectionTypeConnection) | |
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. |
toDate(Date) | The date of the constituent bill covered to. |
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 ledger. Arguments
The order in which to return the transactions.
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,
"identifier": "abc123",
"totalCharges": StatementTotalType,
"totalCredits": StatementTotalType,
"isAnnulled": true,
"transactions": BillTransactionConnectionTypeConnection,
"closingBalance": 1,
"documentDebtPosition": BillingDocumentPositionType,
"representations": BillRepresentationConnectionTypeConnection,
"isFinalStatement": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
}PortfolioConnectionTypeConnection
Paginator of Operations Team
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
accountBalances(Int) | The total balance of all accounts in the portfolio. |
accounts(AccountConnectionTypeConnection) | The accounts associated with this portfolio. |
ancestors(PortfolioConnectionTypeConnection) | The ancestors of the given portfolio. |
billingName(String) | |
brand(String) | The brand code associated with the portfolio. |
collectiveBilling(Boolean!) | |
createdAt(DateTime!) | |
depth(Int) | The depth of the portfolio in the hierarchy. |
descendants(PortfolioConnectionTypeConnection) | The descendants of the given portfolio. |
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,
"leadAccountNumber": "abc123",
"brand": "abc123",
"name": "abc123",
"depth": 1,
"parent": PortfolioType,
"ancestors": PortfolioConnectionTypeConnection,
"descendants": PortfolioConnectionTypeConnection,
"accounts": AccountConnectionTypeConnection,
"accountBalances": 1
}PortfolioUserRoleType
The role a user has in association with one portfolio.
Fields
| Name | Description |
|---|---|
id(ID!) | |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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]
}Fields
| Name | Description |
|---|---|
canSwitch(Boolean!) | True if a switch is possible (basic requirements are met). |
isVariablePaymentAmount(Boolean) | True if the new payment schedule will be variable (POROB) upon switch using GraphQL mutation. |
paymentAmount(Int) | The amount to be charged for the next payment on a new schedule (in pence) upon switch using GraphQL mutation. |
Example
{
"canSwitch": true,
"isVariablePaymentAmount": true,
"paymentAmount": 1
}Fields
| Name | Description |
|---|---|
attachments(BillingAttachmentConnectionTypeConnection) | |
billType(BillTypeEnum) | The type of the bill. |
fromDate(Date) | The date of the bill is covered from. |
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. |
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. |
toDate(Date) | The date of the bill is covered to. |
Example
{
"id": "abc123",
"billType": "STATEMENT",
"fromDate": "2020-01-01",
"toDate": "2020-01-01",
"temporaryUrl": "abc123",
"issuedDate": "2020-01-01",
"attachments": BillingAttachmentConnectionTypeConnection,
"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
| Name | Description |
|---|---|
isValid(Boolean) | |
key(String!) | |
scope(ExpiringTokenScope!) | The scope that the token will grant to the account user. |
Example
{
"key": "abc123",
"scope": "SUBMIT_METER_READINGS",
"isValid": true
}PreferredInstruction
Represents the preference of the user to be charged using a specific payment instruction.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
amount(Decimal!) | |
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
| Name | Description |
|---|---|
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"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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",
"account": AccountType,
"attachments": [PrintAttachmentType],
"highPriority": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PrintMessageType) | The item at the end of the edge |
Example
{
"node": PrintMessageType,
"cursor": "abc123"
}ProcessOrderOutput
Output type for the result of processing an order.
Fields
| Name | Description |
|---|---|
identifier(NonEmptyString) | The unique identifier of the processed order. |
status(OrderStatus) | The status of the order processing. |
Example
{
"status": "PENDING",
"identifier": NonEmptyString
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([ProductRateConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": ProductRateConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}ProductRateConnectionTypeEdge
A Relay edge containing a ProductRateConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ProductRateType) | The item at the end of the edge |
Example
{
"node": ProductRateType,
"cursor": "abc123"
}ProductRateType
A single product rate.
Fields
| Name | Description |
|---|---|
band(String!) | |
bandCategory(ProductRateBandCategory) | |
bandSubcategory(String!) | |
currency(ProductRateCurrency!) | |
pricePerUnit(Decimal!) | |
rateType(String) | The rate_type of the product rate. |
service(String) | The service associated with the product rate. |
timeOfUseTimeslot(TimeOfUseTimeslotType) | |
unitType(ProductRateUnitType!) | |
validFrom(DateTime) | |
validTo(DateTime) |
Example
{
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"bandCategory": "STANDING_CHARGE",
"bandSubcategory": "abc123",
"band": "abc123",
"unitType": "DAYS_ON_SUPPLY",
"currency": "AUD_CENTS",
"pricePerUnit": "1.0",
"timeOfUseTimeslot": TimeOfUseTimeslotType,
"rateType": "abc123",
"service": "abc123"
}PropertyDetailType
Additional details about a property specific to the water market.
Fields
| Name | Description |
|---|---|
addressIdentifier(String!) | |
districtMeteredArea(String!) | DMA |
easting(Int) | |
laneRentalStreet(Boolean) | |
lowPressureRisk(Boolean) | |
northing(Int) | |
numUnitsInProperty(Int) | Number of units in the property, e.g. flats in a building. |
pressureManagedZone(String!) | |
propertyFunctionalLocation(String) | |
smallAreaMonitor(String!) | SAM |
strategicMeteredArea(String!) | SMA |
trafficSensitive(Boolean) | |
uprn(BigInt) | |
wasteMeterArea(String!) | |
waterHardness(PropertyDetailWaterHardness) | |
waterHardnessMgPerL(Float) | |
waterPressureMax(Float) | |
waterPressureMin(Float) | |
waterQualityZone(String!) | |
waterReservoirZone(String!) |
Example
{
"strategicMeteredArea": "abc123",
"districtMeteredArea": "abc123",
"smallAreaMonitor": "abc123",
"waterQualityZone": "abc123",
"waterReservoirZone": "abc123",
"pressureManagedZone": "abc123",
"wasteMeterArea": "abc123",
"addressIdentifier": "abc123",
"numUnitsInProperty": 1,
"easting": 1,
"northing": 1,
"trafficSensitive": true,
"laneRentalStreet": true,
"lowPressureRisk": true,
"waterPressureMin": 1.0,
"waterPressureMax": 1.0,
"waterHardness": "VERY_SOFT",
"waterHardnessMgPerL": 1.0,
"uprn": 1,
"propertyFunctionalLocation": "abc123"
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([PropertyMeterConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": PropertyMeterConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}PropertyMeterConnectionTypeEdge
A Relay edge containing a PropertyMeterConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(PropertyMeterType) | The item at the end of the edge |
Example
{
"node": PropertyMeterType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
activeMeterCount(Int!) | Number of active meters for the property at the address. |
address(String!) | Address on postcode given. |
hasCheckMeter(Boolean) | Whether the property has a check meter. |
isAssessed(Boolean) | Whether the property is assessed. |
propertyId(ID!) | Property ID of matching address. |
Example
{
"address": "abc123",
"propertyId": "abc123",
"activeMeterCount": 1,
"isAssessed": true,
"hasCheckMeter": true
}Fields
| Name | Description |
|---|---|
administrativeArea(String) | Top-level administrative subdivision, e.g. US state, AU state/territory, NZ, region, IT region, JP prefecture.
|
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
Whether to include the country. The country will be spelled out in all-caps on the last line, as per Universal Postal Union standards.
Whether to include the name attached to this address.
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. |
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. |
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 If |
structuredStreetAddress(GenericScalar) | The 'street address' component, in a structured format. This field stores the same value as 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.
|
Example
{
"name": "abc123",
"organization": "abc123",
"streetAddress": "abc123",
"structuredStreetAddress": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
"dependentLocality": "abc123",
"locality": "abc123",
"administrativeArea": "abc123",
"postalCode": "abc123",
"sortingCode": "abc123",
"country": "abc123",
"deliveryPointIdentifier": "abc123",
"asString": "abc123"
}Fields
| Name | Description |
|---|---|
property(PropertyType!) | The matched property. |
score(Decimal!) | A score representing the degree of confidence for a match. |
Example
{
"score": "1.0",
"property": PropertyType
}PropertyType
Represents a property. Conceptually, it collects supply points under an address.
Fields
| Name | Description |
|---|---|
activeWaterMeters([WaterMeterType!]) | All active water meters for the property. |
address(String) | The address of the property, formatted into a single string. |
coordinates(CoordinatesType) | Coordinates for the property, useful for displaying the property on a map. |
embeddedNetwork(EmbeddedNetworkType) | The embedded network this property belongs to, if any. |
externalPropertyReference(String) | Reference of the property in external system. |
freshWaterSupplyPoint(FreshWaterSupplyPointType) | Fresh water supply point for the property. |
id(String) | |
label(String) | An optional label for the property. |
measurements(MeasurementConnection) | Measurements at a property Arguments
Defaults to the far future which will return the most recent readings.
Latest date to return measurements for (inclusive).
Defaults to the far past which will return the oldest readings.
Earliest date to return measurements from.
Timezone to use for grouping. Defaults to Kraken localtime.
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. |
postcode(String!) | |
propertyDetail(PropertyDetailType) | Additional details about a property that are specific to the water market. |
richAddress(PropertyRichAddressType) | Property rich address. |
serviceOrders(ServiceOrderConnectionTypeConnection) | All service orders for the property. |
splitAddress([String]) | List of address lines. |
wasteWaterSupplyPoint(WasteWaterSupplyPointType) | Waste water supply point for the property. |
Example
{
"id": "abc123",
"postcode": "abc123",
"label": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"measurements": MeasurementConnection,
"activeWaterMeters": [WaterMeterType],
"freshWaterSupplyPoint": FreshWaterSupplyPointType,
"wasteWaterSupplyPoint": WasteWaterSupplyPointType,
"propertyDetail": PropertyDetailType,
"externalPropertyReference": "abc123",
"serviceOrders": ServiceOrderConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
amount(Int) | The proposed fixed payment amount in pence. Null if amount strategy does not allow for one. The possible errors that can be raised are:
|
firstPossibleCollectionDate(Date!) | The first possible date for payment to be collected via direct debit. |
paymentAmounts(ProposedInstalmentsConnectionTypeConnection) | The proposed payment amounts for an instalments payment schedule. Will take into consideration the preferredFirstPaymentDate but if it is before the firstPossibleCollectionDate the function will return a proposal using the firstPossibleCollectionDate. |
Example
{
"amount": 1,
"firstPossibleCollectionDate": "2020-01-01",
"paymentAmounts": ProposedInstalmentsConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
amount(Int!) | Amount of payment. |
date(Date!) | Date of payment. |
paymentNumber(Int!) | Payment number. |
Example
{
"paymentNumber": 1,
"date": "2020-01-01",
"amount": 1
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([ProposedInstalmentsConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": ProposedInstalmentsConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}ProposedInstalmentsConnectionTypeEdge
A Relay edge containing a ProposedInstalmentsConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ProposedInstalmentType) | The item at the end of the edge |
Example
{
"node": ProposedInstalmentType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
voucherPurchase(VoucherPurchaseType) | The voucher purchase created from the mutation. |
Example
{
"voucherPurchase": VoucherPurchaseType
}PushNotificationBindingType
Represents a pairing of a single app installation to an account user.
Fields
| Name | Description |
|---|---|
application(NotifiableApplicationType!) | |
expiresAt(DateTime!) | |
id(ID!) | |
messages([SMSMessageType!]!) | |
registeredAt(DateTime!) | |
token(String!) | |
user(AccountUserType!) |
Example
{
"id": "abc123",
"messages": SMSMessageType,
"user": AccountUserType,
"token": "abc123",
"application": NotifiableApplicationType,
"registeredAt": "2020-01-01T00:00:00.000Z",
"expiresAt": "2020-01-01T00:00:00.000Z"
}QuantityType
Graphene type object to represent Quantity(magnitude, unit)
Fields
| Name | Description |
|---|---|
magnitude(Float!) | The numeric value of this field. |
unit(String!) | Unit of this field. |
Example
{
"magnitude": 1.0,
"unit": "abc123"
}Fields
| Name | Description |
|---|---|
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(JSONString) | The input data used for quoting this product component. |
termsAndConditionsS3Urls([TermsAndConditionsS3UrlType]) | S3 URLs for terms and conditions linked to this quote component. Arguments
Expiration time for S3 URLs in seconds. Defaults to 1 hour (3600 seconds). |
Example
{
"identifier": "abc123",
"productComponentIdentifier": "abc123",
"costs": [QuoteCostType],
"quotingParamsInputData": {"key": "value"},
"createdAt": "2020-01-01T00:00:00.000Z",
"termsAndConditionsS3Urls": [TermsAndConditionsS3UrlType]
}Fields
| Name | Description |
|---|---|
key(String!) | Name of the cost field. |
value(QuoteCostUnionType) | Value of the cost field. |
Example
{
"key": "abc123",
"value": DecimalType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
productCode(ID) | Product code. |
quotingParams([QuotingParamType]) | Quoting parameter definitions for this product. |
Example
{
"productCode": "abc123",
"quotingParams": [QuotingParamType]
}Fields
| Name | Description |
|---|---|
choices([String]) | Choices of the quoting parameter if present. |
name(String) | Name of the quoting parameter. |
type(String) | Type of the quoting parameter. |
Example
{
"name": "abc123",
"type": "abc123",
"choices": ["abc123"]
}Fields
| Name | Description |
|---|---|
intervalEnd(DateTime) | The exclusive end of this reading's interval. |
intervalStart(DateTime) | The inclusive start of this reading's interval. |
quality(String) | The quality of this reading if applicable. |
source(String) | The source of this reading if applicable. |
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",
"source": "abc123",
"quality": "abc123"
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([ReadingConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": ReadingConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}ReadingConnectionTypeEdge
A Relay edge containing a ReadingConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ReadingType) | The item at the end of the edge |
Example
{
"node": ReadingType,
"cursor": "abc123"
}ReadingType
A reading from a water meter.
Fields
| Name | Description |
|---|---|
id(ID!) | |
isHeld(Boolean!) | True if the reading is currently held. |
isQuarantined(Boolean!) | True if the reading has been quarantined. |
notes(String!) | Notes for submitting a reading. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
readingDate(Date!) | Date of reading. |
reason(String!) | The reason for the reading submission. |
source(String!) | The origin of the reading submission. |
valueCubicMetres(Decimal!) | A cumulative value displaying total consumption that can roll over when the maximum is reached. |
Example
{
"id": "abc123",
"valueCubicMetres": "1.0",
"source": "abc123",
"reason": "abc123",
"possibleErrors": [PossibleErrorType],
"readingDate": "2020-01-01",
"notes": "abc123",
"isQuarantined": true,
"isHeld": true
}Fields
| Name | Description |
|---|---|
exportReadings(ExportReadingsConnection) | Readings representing outgoing utility flow e.g., solar generation. |
importReadings(ImportReadingsConnection) | Readings representing incoming utility flow e.g., usage or consumption.. |
Example
{
"exportReadings": ExportReadingsConnection,
"importReadings": ImportReadingsConnection
}Fields
| Name | Description |
|---|---|
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
Redeem Loyalty Points as account credit.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-9201: No Loyalty Point ledger found for the user.
- KT-CT-9202: Loyalty Points adapter not configured.
- KT-CT-9203: No ledger entries for the ledger.
- KT-CT-9205: Insufficient Loyalty Points.
- KT-CT-9206: Indivisible points.
- KT-CT-9204: Negative or zero points set.
- KT-CT-9208: Invalid posted at datetime.
- KT-CT-9209: Negative Loyalty Points balance.
- KT-CT-9210: Unhandled Loyalty Points exception.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
pointsRedeemed(Int) | The number of loyalty points that were redeemed. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"pointsRedeemed": 1
}RedeemReferralClaimCode
The possible errors that can be raised are:
- KT-CT-6723: Unauthorized.
- KT-CT-6724: Referral claim code not found.
- KT-CT-6725: Referral claim code redeeming error.
- KT-CT-6726: Referral claim code has already been redeemed.
- KT-CT-6727: Referral claim code is not available.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
success(Boolean!) | Whether or not the request was successful. |
Example
{
"possibleErrors": [PossibleErrorType],
"success": true
}Fields
| Name | Description |
|---|---|
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 |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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. |
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
| Name | Description |
|---|---|
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. |
Example
{
"domestic": ReferralSchemeType,
"business": ReferralSchemeType,
"friendsAndFamily": ReferralSchemeType
}ReferralType
Details of an account referral
Fields
| Name | Description |
|---|---|
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!) | |
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
{
"id": "abc123",
"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
}Refund
A refund to the customer from the energy supplier.
Fields
| Name | Description |
|---|---|
accountNumber(String) | Unique identifier of the account the transaction belongs to. |
amount(Int) | Gross amount including tax (when payable). Refer to the Deprecated The 'amount' field is deprecated. |
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. |
isAccountPayment(Boolean) | Deprecated. Deprecated The 'isAccountPayment' field is deprecated. |
isCredit(Boolean) | Deprecated. Deprecated The 'isCredit' field is deprecated. |
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. |
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(RefundPaymentRequestType) | The item at the end of the edge |
Example
{
"node": RefundPaymentRequestType,
"cursor": "abc123"
}RegenerateSecretKey
Regenerate the user's API key.
Fields
| Name | Description |
|---|---|
key(String!) | The generated key value, which is only ever available once (here). |
viewer(AccountUserType) | The currently authenticated user. |
Example
{
"key": "abc123",
"viewer": AccountUserType
}RegisterEmail
Registers the email address of a user in the registration journey who currently has a placeholder (“blackhole”) email. Send a create-password email to the new address.
The possible errors that can be raised are:
- KT-GB-5412: User already has an email address.
- KT-GB-5413: Invalid inputs for updating a blackhole email.
- KT-CT-1133: Unable to request password reset email.
- KT-CT-10006: Account not found.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
blackholeEmailAccountUser(BlackholeEmailAccountUserType) | Details of an account user who has updated their blackhole email. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"blackholeEmailAccountUser": BlackholeEmailAccountUserType
}Fields
| Name | Description |
|---|---|
pushNotificationBinding(PushNotificationBindingType) | Override Field to add additional attributes and extend description with possible_errors |
Example
{
"pushNotificationBinding": PushNotificationBindingType
}RegistersConnection
Pagination for device registers.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(DeviceRegister) | The item at the end of the edge |
Example
{
"node": DeviceRegister,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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. |
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",
"assigneeTeamName": "abc123",
"reopenInkConversation": true,
"createdAt": "2020-01-01T00:00:00.000Z"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(RepaymentRequestType) | The item at the end of the edge |
Example
{
"node": RepaymentRequestType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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"
}RequestDoubleOptIn
Request a double opt in for a consent.
This mutation will create a consent with a value of PENDING and publish a double opt-in requested transactional messaging trigger.
The possible errors that can be raised are:
- KT-CT-9019: Invalid input.
- KT-CT-9018: Account not found.
- KT-CT-1111: Unauthorized.
- KT-CT-9016: Consent management not enabled.
- KT-CT-9017: Consent type not found.
- KT-CT-9023: Consent already accepted.
- KT-CT-1199: Too many requests.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
consent(ConsentType) | The consent that was created or updated. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"consent": ConsentType
}Fields
| Name | Description |
|---|---|
email(String) | The email that requested a password reset email. |
Example
{
"email": "abc123"
}RequestPrintedBill
Request an issued bill to be printed and (re)posted to billing address of the account.
The possible errors that can be raised are:
- KT-CT-3824: Unauthorized.
- KT-CT-9705: The billing document has not been issued.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
success(Boolean) | Whether the request was successful. |
Example
{
"possibleErrors": [PossibleErrorType],
"success": true
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
requestId(String) | The ID of the repayment request. |
status(RepaymentRequestStatus) | The current status of the repayment request. |
Example
{
"requestId": "abc123",
"status": "REQUESTED"
}Fields
| Name | Description |
|---|---|
clientMutationId(String) | |
errors([SerializerFieldErrorsType]) |
Example
{
"errors": [SerializerFieldErrorsType],
"clientMutationId": "abc123"
}Fields
| Name | Description |
|---|---|
failureCodes([String]) | A list of codes of which password validation the new password failed against if applicable.
One of:
- Deprecated The 'failureCodes' field is deprecated. |
failureReasons([String]) | A list of messages of which password validations the new password failed against if applicable. Deprecated The 'failureReasons' field is deprecated. |
passwordUpdated(Boolean) | True if the password update was successful, false otherwise. Deprecated The 'passwordUpdated' field is deprecated. |
userId(ID!) | The ID of the user whose password was changed. |
Example
{
"userId": "abc123",
"passwordUpdated": true,
"failureReasons": ["abc123"],
"failureCodes": ["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
| Name | Description |
|---|---|
code(String) | The referral code. |
id(ID!) | |
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
{
"id": "abc123",
"paymentDate": "2020-01-01",
"schemeType": "REFERRAL_REWARD",
"code": "abc123",
"rewardAmount": 1,
"paymentStatus": "Pending"
}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
| Name | Description |
|---|---|
administrativeArea(String) | Top-level administrative subdivision, e.g. US state, AU state/territory, NZ, region, IT region, JP prefecture.
|
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
Whether to include the country. The country will be spelled out in all-caps on the last line, as per Universal Postal Union standards.
Whether to include the name attached to this address.
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. |
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. |
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 If |
structuredStreetAddress(GenericScalar) | The 'street address' component, in a structured format. This field stores the same value as 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.
|
Example
{
"name": "abc123",
"organization": "abc123",
"streetAddress": "abc123",
"structuredStreetAddress": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
"dependentLocality": "abc123",
"locality": "abc123",
"administrativeArea": "abc123",
"postalCode": "abc123",
"sortingCode": "abc123",
"country": "abc123",
"deliveryPointIdentifier": "abc123",
"asString": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
account(AccountType) | |
attachments([AttachmentType]) | Attachments of the message. |
id(ID!) | |
recipient(String) | SMS recipient. |
sender(String) | SMS sender. |
sentAt(DateTime) | |
textBody(String) | SMS body. |
Example
{
"id": "abc123",
"sentAt": "2020-01-01T00:00:00.000Z",
"account": AccountType,
"attachments": [AttachmentType],
"sender": "abc123",
"recipient": "abc123",
"textBody": "abc123"
}ScheduleQuoteFollowUp
Schedule a quote follow up message to the provided recipient.
The possible errors that can be raised are:
- KT-CT-4619: Quote with given code not found.
- KT-CT-4632: Invalid recipient information.
- KT-CT-4633: Mutation not enabled in this environment.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
success(Boolean!) | Whether the message was scheduled successfully. |
Example
{
"possibleErrors": [PossibleErrorType],
"success": true
}Fields
| Name | Description |
|---|---|
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
{
"ledgerNumber": "abc123",
"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"
}ScreenActionType
An action which calls another backend screen via its screen id.
Fields
| Name | Description |
|---|---|
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
}SectionType
A section containing a list of cards or carousel items
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
code(String) | The selected product code. |
displayName(String) | The selected product display name. |
Example
{
"code": "abc123",
"displayName": "abc123"
}SendOneTimeLoginEmail
The possible errors that can be raised are:
- KT-CT-4122: Invalid email.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
status(String) | The result of the operation. |
Example
{
"possibleErrors": [PossibleErrorType],
"status": "abc123"
}Example
{
"message": "abc123",
"code": "abc123"
}Fields
| Name | Description |
|---|---|
errors([ErrorTypeUnion!]) | |
field(String) |
Example
{
"field": "abc123",
"errors": SerializerErrorType
}Fields
| Name | Description |
|---|---|
availableTimeslots(AppointmentSlotConnectionTypeConnection!) | Appointment slots for service order. |
vendorReference(String) | Vendor reference for the service order. |
Example
{
"vendorReference": "abc123",
"availableTimeslots": AppointmentSlotConnectionTypeConnection
}Fields
| Name | Description |
|---|---|
edgeCount(Int!) | Number of nodes in the edge. |
edges([ServiceOrderConnectionTypeEdge]!) | Contains the nodes in this connection. |
pageInfo(PageInfo!) | Pagination data for this connection. |
totalCount(Int!) | Total number of nodes. |
Example
{
"pageInfo": PageInfo,
"edges": ServiceOrderConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}ServiceOrderConnectionTypeEdge
A Relay edge containing a ServiceOrderConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(ServiceOrderType) | The item at the end of the edge |
Example
{
"node": ServiceOrderType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
appointmentShouldAvoidSchoolRun(Boolean) | |
callerInformation(String) | |
cancelledAt(DateTime) | |
fieldNotes(String) | |
id(ID!) | |
isAppointmentRequired(Boolean) | |
jobName(String!) | The job_name for this service order. |
notes(String) | |
orderUuid(UUID) | |
scheduledAt(DateTime) | |
scheduledEndAt(DateTime) | |
status(String) | |
vendorReference(String) |
Example
{
"id": "abc123",
"scheduledAt": "2020-01-01T00:00:00.000Z",
"scheduledEndAt": "2020-01-01T00:00:00.000Z",
"isAppointmentRequired": true,
"appointmentShouldAvoidSchoolRun": true,
"cancelledAt": "2020-01-01T00:00:00.000Z",
"notes": "abc123",
"fieldNotes": "abc123",
"status": "abc123",
"callerInformation": "abc123",
"orderUuid": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"vendorReference": "abc123",
"jobName": "abc123"
}SetLoyaltyPointsUser
Set the Loyalty Points user for the account.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-9210: Unhandled Loyalty Points exception.
- KT-CT-9214: Couldn't assign user loyalty points role.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
newLoyaltyPointsUserId(String) | ID of the new Loyalty Points user. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"newLoyaltyPointsUserId": "abc123"
}SetUpDirectDebitInstruction
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-3940: Invalid data.
- KT-CT-5415: Account user not found.
- KT-CT-11103: Business not found.
- KT-CT-3971: Instruction owners are not valid.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentInstruction(DirectDebitInstructionType) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentInstruction": DirectDebitInstructionType
}SetUpDirectDebitInstructionForBusiness
The possible errors that can be raised are:
- KT-CT-3940: Invalid data.
- KT-CT-3956: Temporary error occurred.
- KT-CT-11107: Unauthorized.
- KT-CT-3948: Could not set up direct debit instruction.
- KT-CT-3971: Instruction owners are not valid.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentInstruction(DirectDebitInstructionType) | The created direct debit instruction. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentInstruction": DirectDebitInstructionType
}SetUpDirectDebitInstructionFromStoredDetails
The possible errors that can be raised are:
- KT-CT-3956: Temporary error occurred.
- KT-CT-3948: Could not set up direct debit instruction.
- KT-CT-3971: Instruction owners are not valid.
- KT-CT-5415: Account user not found.
- KT-CT-11103: Business not found.
- KT-CT-4123: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentInstruction(DirectDebitInstructionType) | The payment instruction that was created from stored details. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentInstruction": DirectDebitInstructionType
}ShareGoodsQuote
The possible errors that can be raised are:
- KT-CT-4122: Invalid email.
- KT-CT-8203: Received an invalid quote code.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
share(GoodsQuoteShare) | Goods quote shared. |
Example
{
"possibleErrors": [PossibleErrorType],
"share": GoodsQuoteShare
}SpecialCircumstanceRecordType
Any special circumstances that the user has notified us about, which may entitle them to
some specialist services. These circumstances can be temporary.
Temporary circumstances will have an expiry_date, after which they will no
longer apply. Having young children is an example of this in the UK.
Fields
| Name | Description |
|---|---|
createdAt(DateTime) | The date and time the special circumstance record was created. |
description(String!) | Description of circumstance. |
expiryDate(Date) | Expiry date of the special circumstance if temporary. |
extraInfo([StringKeyValueType]!) | List of extra information about the special circumstance. |
id(ID!) | ID. |
internalCode(String!) | Internal code. |
summary(String!) | Summary. |
Example
{
"id": "abc123",
"summary": "abc123",
"internalCode": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"description": "abc123",
"expiryDate": "2020-01-01",
"extraInfo": StringKeyValueType
}SpecialCircumstancesType
Information about the special circumstances that relate to a user.
Fields
| Name | Description |
|---|---|
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([SpecialCircumstanceRecordType]) | List of special circumstance records for the user. |
Example
{
"isSharingConsentGiven": true,
"records": [SpecialCircumstanceRecordType]
}StartCustomerVerification
Start the customer verification using the provided verification method.
The possible errors that can be raised are:
- KT-CT-1701: Brand does not exist.
- KT-CT-4194: Verification type not supported yet.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
verificationProcess(VerificationProcess) | The newly created verification process. |
Example
{
"possibleErrors": [PossibleErrorType],
"verificationProcess": VerificationProcess
}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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
annulledBy(AnnulmentBillingDocumentType) | Billing document that annuls this statement. |
documentDebtPosition(BillingDocumentPositionType) | Position of the billing document in the delinquent debt tracking system. |
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. |
latestChargeAt(DateTime) | The latest charge date of the statement. |
paymentDueDate(Date) | The date due for payment for the statement. |
pdfUrl(String) | URL to the PDF of the statement. |
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
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",
"paymentDueDate": "2020-01-01",
"pdfUrl": "abc123",
"annulledBy": AnnulmentBillingDocumentType,
"totalCharges": StatementTotalType,
"totalCredits": StatementTotalType,
"transactions": BillTransactionConnectionTypeConnection,
"documentDebtPosition": BillingDocumentPositionType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
attachments(BillingAttachmentConnectionTypeConnection) | |
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. |
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. |
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. |
toAddress(String) | Email recipient address. |
toDate(Date) | The date of the constituent bill covered to. |
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. |
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,
"closingBalance": 1,
"openingBalance": 1,
"isExternalBill": true,
"transactions": TransactionConnectionTypeConnection,
"userId": 1,
"toAddress": "abc123",
"paymentDueDate": "2020-01-01",
"consumptionStartDate": "2020-01-01",
"consumptionEndDate": "2020-01-01",
"reversalsAfterClose": "ALL",
"status": "OPEN",
"heldStatus": HeldStatus,
"totalCharges": StatementTotalType,
"totalCredits": StatementTotalType
}Fields
| Name | Description |
|---|---|
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
Choose how automatic payments will be collected.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-3968: Preference cannot be set this soon.
- KT-CT-3969: Preferences must change on a specific day of the week for weekly schedules.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType]
}StoreDirectDebitPaymentMethodDetails
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-3940: Invalid data.
- KT-CT-3956: Temporary error occurred.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
storedPaymentMethodDetailsReference(String) |
Example
{
"possibleErrors": [PossibleErrorType],
"storedPaymentMethodDetailsReference": "abc123"
}StorePaymentInstruction
Store a new payment instruction created through the embedded process.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-4177: Unauthorized.
- KT-CT-3822: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
paymentInstruction(PaymentInstructionType) | The stored payment instruction. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"paymentInstruction": PaymentInstructionType
}StringKeyValueType
Key value type for dynamic field names.
Example
{
"name": "abc123",
"value": "abc123"
}StringType
Graphene type object to represent string values
Fields
| Name | Description |
|---|---|
stringValue(String!) | Value of this field. |
Example
{
"stringValue": "abc123"
}SubmitCustomerFeedback
The possible errors that can be raised are:
- KT-CT-5514: Unable to submit feedback.
- KT-CT-5511: The feedback_id should be provided for feedback source.
- KT-CT-5512: The feedback doesn't match the account.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
customerFeedback(CustomerFeedbackType) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"customerFeedback": CustomerFeedbackType
}SubmitMeterReading
Create a customer meter reading.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-GB-6414: Meter reading could not be updated. Input not valid.
- KT-CT-6422: Reading will be held.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
reading(ReadingType) | The submitted reading. |
Example
{
"possibleErrors": [PossibleErrorType],
"reading": ReadingType
}SubmitRepaymentRequest
Mutation for executing the repayment request use case.
The possible errors that can be raised are:
- KT-CT-1132: Unauthorized.
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-3821: Received neither ledger ID nor ledger number.
- KT-CT-3926: Unauthorized.
- KT-CT-3927: Invalid Amount.
- KT-CT-3928: Idempotency key used for another repayment request.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
repaymentRequest(RequestRepaymentOutputType) | The newly created repayment request. |
Example
{
"possibleErrors": [PossibleErrorType],
"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
| Name | Description |
|---|---|
currentBalance(Int) | The current final balance of the ledger in pence. |
id(ID) | Deprecated The 'ledgerId' field is deprecated. |
ledgerType(String) | |
name(String) | The display name of the ledger. |
number(String) | The canonical name of the ledger. |
paymentAdequacy(PaymentAdequacyDetailsType) | Override Field to add additional attributes and extend description with possible_errors |
Example
{
"id": "abc123",
"name": "abc123",
"ledgerType": "abc123",
"number": "abc123",
"currentBalance": 1,
"paymentAdequacy": PaymentAdequacyDetailsType
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(SupplyPointType) | The item at the end of the edge |
Example
{
"node": SupplyPointType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
}SupplyPointType
Represents a SupplyPoint.
Fields
| Name | Description |
|---|---|
devices(DevicesConnection) | Get list of devices under a supply point. |
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
The exclusive end of the time period as an isoformatted string.
Get readings of only this type.
The inclusive start of the time period as an isoformatted string.
Time buckets to group readings into.
The timezone in which to return readings. |
Example
{
"id": "abc123",
"marketName": "abc123",
"externalIdentifier": "abc123",
"readings": Readings,
"property": PropertyType,
"devices": DevicesConnection
}SupplyProductType
GraphQL type for a supply product.
Fields
| Name | Description |
|---|---|
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!) | |
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. |
tags([String!]!) | Tags associated with the product. |
term(Int) | The product term in months. |
termsAndConditionsTypes([TermsAndConditionsType!]!) | Active terms and conditions for a market supply product. |
termsContractType(String) | The product contract type. |
Example
{
"id": "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",
"brandCode": "abc123",
"marketName": "abc123",
"availabilityStatus": "EVERYONE",
"termsContractType": "abc123",
"termsAndConditionsTypes": TermsAndConditionsType,
"params": {"key": "value"},
"tags": "abc123"
}SwitchAccountToMeasuredTariff
Performs an immediate and automatic switch of a given account to a measured tariff (if possible).
Fields
| Name | Description |
|---|---|
account(AccountType!) | Account that was switched to a measured tariff. |
Example
{
"account": AccountType
}Fields
| Name | Description |
|---|---|
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"
}TerminateCreditTransferPermission
Mutation to terminate a credit transfer permission.
The possible errors that can be raised are:
- KT-CT-3822: Unauthorized.
- KT-CT-3825: Credit transfer permission not found.
- KT-CT-3827: The ledger is not valid.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
validTo(DateTime) | Datetime when the credit transfer permission ends. |
Example
{
"possibleErrors": [PossibleErrorType],
"validTo": "2020-01-01T00:00:00.000Z"
}TermsAndConditionsConnectionTypeConnection
Pagination for terms and conditions.
Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(TermsAndConditionsType) | The item at the end of the edge |
Example
{
"node": TermsAndConditionsType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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"
}TextType
A block of text.
Fields
| Name | Description |
|---|---|
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"
}TimeOfUseTimeslotType
The timeslot of a time of use product.
Fields
| Name | Description |
|---|---|
name(String!) |
Example
{
"name": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(TransactionType) | The item at the end of the edge |
Example
{
"node": TransactionType,
"cursor": "abc123"
}TransferLoyaltyPointsBetweenUsers
Transfer Loyalty Points between users.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-9205: Insufficient Loyalty Points.
- KT-CT-9204: Negative or zero points set.
- KT-CT-9208: Invalid posted at datetime.
- KT-CT-9209: Negative Loyalty Points balance.
- KT-CT-9210: Unhandled Loyalty Points exception.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
pointsTransferred(Int) | The number of loyalty points that were transferred. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"pointsTransferred": 1
}UpdateAccountAddress
Update address for given account and optionally for the accounts in the same portfolio.
The possible errors that can be raised are:
- KT-CT-4178: No account found with given account number.
- KT-CT-4411: Address in db is structured, cannot accept unstructured address fields.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountType) | The updated account. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
viewer(AccountUserType) | The currently authenticated user. This field requires the |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountType,
"viewer": AccountUserType
}UpdateAccountBillingAddress
Market-level override of the UpdateAccountBillingAddress mutation to remove the CANACCESSCUSTOMER_QUERIES from the required permissions and allow us to restrict access to this mutation, e.g. if a user is in bad debt.
TODO: Remove this once the Core team modifies the core mutation and gets rid of the CANACCESSCUSTOMER_QUERIES permission on it.
The possible errors that can be raised are:
- KT-CT-4145: Invalid address.
- KT-CT-7123: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountType) | The updated account. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountType
}UpdateAccountBillingEmail
Update the billing email for the input account number to the received email value.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-4122: Invalid email.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountInterface) | Account that was changed. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountInterface
}UpdateAccountConsents
Update the consents for an account using consent management system
The possible errors that can be raised are:
- KT-CT-9014: Duplicate consent.
- KT-CT-9016: Consent management not enabled.
- KT-CT-9017: Consent type not found.
- KT-CT-9018: Account not found.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
consents([ConsentType!]!) | Consents linked to this account. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"consents": ConsentType
}UpdateAccountReference
Update a reference for a particular account and namespace.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-8310: Invalid data.
- KT-CT-8311: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
accountReference(AccountReferenceType) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"accountReference": AccountReferenceType
}UpdateAccountUserCommsPreferencesMutation
Update the comms preferences of the account user (the authenticated user)."
The possible errors that can be raised are:
- KT-GB-5414: The given preferences are not valid.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
commsPreferences(AccountUserCommsPreferencesType) | Details of comms preferences set up for a user. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"commsPreferences": AccountUserCommsPreferencesType
}UpdateAccountUserConsents
Update the consents from an account user using consent management system
The possible errors that can be raised are:
- KT-CT-9014: Duplicate consent.
- KT-CT-9016: Consent management not enabled.
- KT-CT-9017: Consent type not found.
- KT-CT-1111: Unauthorized.
- KT-CT-5421: Account user not found.
- KT-CT-5422: Invalid data.
- KT-CT-1605: Invalid input.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
accountUserConsents(AccountUserConsents) | All the consents for an account user. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"accountUserConsents": AccountUserConsents
}Fields
| Name | Description |
|---|---|
clientMutationId(String) | |
dateOfBirth(Date) | |
email(String) | |
errors([ErrorType]) | |
familyName(String) | |
givenName(String) | |
landline(String) | |
mobile(String) | |
pronouns(String) |
Example
{
"givenName": "abc123",
"familyName": "abc123",
"pronouns": "abc123",
"mobile": "abc123",
"email": "abc123",
"dateOfBirth": "2020-01-01",
"landline": "abc123",
"errors": [ErrorType],
"clientMutationId": "abc123"
}UpdateActivePurchase
The possible errors that can be raised are:
- KT-CT-8225: Received an invalid purchaseId.
- KT-CT-8226: The provided purchase is not active.
- KT-CT-8206: Invalid data.
- KT-CT-8227: Available grants could not be applied.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
goodsPurchase(GoodsPurchase) | Goods purchase updated. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"goodsPurchase": GoodsPurchase
}UpdateAutoTopUpAmount
The possible errors that can be raised are:
- KT-CT-3815: No active payment schedule found for this account.
- KT-CT-3941: Invalid data.
- KT-CT-3942: An unexpected error occurred.
- KT-CT-3947: An unexpected error occurred.
- KT-CT-3953: The payment schedule is not a balance triggered schedule.
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-3821: Received neither ledger ID nor ledger number.
- KT-CT-3822: Unauthorized.
- KT-CT-4123: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
schedule(PaymentScheduleType) | The new schedule created. |
Example
{
"possibleErrors": [PossibleErrorType],
"schedule": PaymentScheduleType
}UpdateBlackholeEmail
Update the email address of an account user that currently has a blackhole email. And then send a create password email to the new email address.
The possible errors that can be raised are:
- KT-GB-5412: User already has an email address.
- KT-GB-5413: Invalid inputs for updating a blackhole email.
- KT-CT-1133: Unable to request password reset email.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
blackholeEmailAccount(BlackholeEmailAccountType) | Details of an account of an account user updating their blackhole email. |
blackholeEmailAccountUser(BlackholeEmailAccountUserType) | Details of an account user who has updated their blackhole email. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"blackholeEmailAccountUser": BlackholeEmailAccountUserType,
"blackholeEmailAccount": BlackholeEmailAccountType
}UpdateCommsDeliveryPreference
Market-level override of the UpdateCommsDeliveryPreferences mutation to remove the CANACCESSCUSTOMER_QUERIES from the required permissions and allow us to restrict access to this mutation, e.g. if a user is in bad debt.
TODO: Remove this once the Core team modifies the core mutation and gets rid of the CANACCESSCUSTOMER_QUERIES permission on it.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-4136: Cannot set comms preference to email when account has no email.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountInterface) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountInterface
}UpdateDocumentAccessibilityPreference
Update the document accessibility preference for the input account number to the received documentAccessibilityPreference value.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
account(AccountType) | Account that was changed. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"account": AccountType
}UpdateEmailAndPassword
Update the email address and password of an account user. This is for existing account users (with one account) to establish access to the consumersite.
The possible errors that can be raised are:
- KT-CT-5413: Invalid data.
- KT-CT-5414: Invalid data.
- KT-CT-5450: Password is invalid.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
success(Boolean) | Whether the sign up was successful. |
Example
{
"possibleErrors": [PossibleErrorType],
"success": true
}UpdateMetadata
Update existing metadata on an object.
The possible errors that can be raised are:
- KT-CT-4323: Unauthorized.
- KT-CT-8413: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
metadata(Metadata) | |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"metadata": Metadata
}UpdateNumberOfOccupants
The possible errors that can be raised are:
- KT-CT-6628: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
propertyId(ID!) | Property id. |
Example
{
"possibleErrors": [PossibleErrorType],
"propertyId": "abc123"
}UpdatePassword
Update user's password.
Note this is different from the ResetPassword mutation, which is used to reset a password when the user has forgotten it. This mutation is used to update the password when the user is already authenticated and wants to change their password.
Ideally, this mutation would simply receive a "new_password" and use the current password update usecase, but, until we're ready for a breaking change, we'll need to use the Django form to also validate the old password and two new passwords.
The possible errors that can be raised are:
- KT-CT-5460: Old password is invalid.
- KT-CT-5450: Password is invalid.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
viewer(AccountUserType) | The currently authenticated user. This field requires the |
Example
{
"possibleErrors": [PossibleErrorType],
"viewer": AccountUserType
}UpdatePropertyType
The possible errors that can be raised are:
- KT-GB-5418: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
propertyId(ID!) | Property id. |
Example
{
"possibleErrors": [PossibleErrorType],
"propertyId": "abc123"
}UpdateUserMutation
The possible errors that can be raised are:
- KT-CT-5413: Invalid data.
- KT-CT-5414: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
viewer(AccountUserType) |
Example
{
"possibleErrors": [PossibleErrorType],
"viewer": AccountUserType
}UserManagedPayment
Represents the preference of the user to pay himself, instead of get charged.
Fields
| Name | Description |
|---|---|
forPaymentsAfter(String) | The start time of the payment preference. |
Example
{
"forPaymentsAfter": "abc123"
}ValidateMfaDevice
Validate multi-factor authentication (MFA) devices for user.
The possible errors that can be raised are:
- KT-CT-1150: MFA device not found.
- KT-CT-1151: MFA device not found.
- KT-CT-1152: Invalid MFA token.
- KT-CT-1155: Enabled backup device is needed.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
deviceIsValid(Boolean) | Flag to indicate if the device has been verified, so it can be used for MFA. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceIsValid": true
}Fields
| Name | Description |
|---|---|
status(String) | Verification process status. |
type(String) | Verification type. |
userNumber(String) | Customer with pending verification. |
Example
{
"userNumber": "abc123",
"status": "abc123",
"type": "abc123"
}VerifyCustomer
Verify a customer using the provided code and verification type.
The possible errors that can be raised are:
- KT-CT-4191: Error while verifying the customer.
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1111: Unauthorized.
- KT-CT-1112: 'Authorization' header not provided.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
user(AccountUserType) | The currently authenticated user. |
Example
{
"possibleErrors": [PossibleErrorType],
"user": AccountUserType
}VerifyIdentity
The possible errors that can be raised are:
- KT-CT-1145: Account/user details do not match.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
token(String!) | An expiring token that can be used to request to update the user's email address. |
Example
{
"possibleErrors": [PossibleErrorType],
"token": "abc123"
}VerifyIdentityFallback
Verify the identity of a user by checking their family name, first line of address and postcode. This is used to verify the identity of a user who does not have an account number or has a blackhole email address.
firstlineofaddress is required for verification without an accountnumber, but is not required if an account_number is provided.
accountuserid can be used to distinguish between multiple users on the same account.
The possible errors that can be raised are:
- KT-CT-1145: Account/user details do not match.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
token(String!) | An expiring token that can be used for scoped access. |
Example
{
"possibleErrors": [PossibleErrorType],
"token": "abc123"
}VoiceCampaignConnectionTypeEdge
A Relay edge containing a VoiceCampaignConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(VoiceCampaignType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}VoiceCampaignItemConnectionTypeEdge
A Relay edge containing a VoiceCampaignItemConnectionType and its cursor.
Fields
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(VoiceCampaignItemType) | The item at the end of the edge |
Example
{
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
cursor(String!) | A cursor for use in pagination |
node(VoucherPurchaseType) | The item at the end of the edge |
Example
{
"node": VoucherPurchaseType,
"cursor": "abc123"
}Fields
| Name | Description |
|---|---|
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. |
id(ID) | The purchase ID. |
purchasedAt(DateTime) | When the purchase was performed. |
redemptions([VoucherRedemptionType]) | Fetch the redemptions for this voucher. |
voucherValue(Int) | The value of the voucher in cents. |
Example
{
"id": "abc123",
"charge": AccountChargeType,
"clientParams": {"key": "value"},
"purchasedAt": "2020-01-01T00:00:00.000Z",
"voucherValue": 1,
"availableFrom": "2020-01-01",
"balance": 1,
"redemptions": [VoucherRedemptionType]
}Fields
| Name | Description |
|---|---|
claimedAt(DateTime) | When the redemption was claimed. |
credit(AccountCreditType) | The amount credited for the voucher redemption. |
id(ID) | The redemption ID. |
Example
{
"id": "abc123",
"credit": AccountCreditType,
"claimedAt": "2020-01-01T00:00:00.000Z"
}Fields
| Name | Description |
|---|---|
areaCode(String!) | A client-defined classifier to segment supply points for billing purposes. |
id(ID!) | |
inset(InsetType) | Inset for the supply point. |
linkedServices([LinkedServiceType!]) | All active linked services for the supply point. |
pipeSize(Int) | Size of the physical pipe of the supply point. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
propertyType(WasteWaterSupplyPointPropertyType) | Type of property that the supply point is on |
rateableValue(Int) | An assessment of the annual rental value of a property between 1967 and 1990. Required for the billing of unmetered properties. |
spid(String) | A unique identifier for every commercial fresh and waste water supply point in the UK. |
wholesalerCode(WasteWaterSupplyPointWholesalerCode!) |
Example
{
"id": "abc123",
"propertyType": "NONE",
"spid": "abc123",
"wholesalerCode": "AFFINITY",
"areaCode": "abc123",
"rateableValue": 1,
"pipeSize": 1,
"possibleErrors": [PossibleErrorType],
"inset": InsetType,
"linkedServices": [LinkedServiceType]
}Fields
| Name | Description |
|---|---|
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
| Name | Description |
|---|---|
capabilityType(WaterMeterCapabilityType!) | |
category(WaterMeterCategory!) | |
externalReference(String) | External reference. Deprecated The 'externalReference' field is deprecated. |
id(ID!) | |
isSmart(Boolean!) | Whether the meter is a smart meter. |
linkedServices([LinkedServiceType!]) | All active linked services for the meter. |
make(String!) | |
meterPointReference(String) | Meter point reference. |
model(String!) | |
numberOfDigits(Int!) | Number of digits / dials that the meter has or can show. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
readings(ReadingConnectionTypeConnection) | All readings for the meter, including held and quarantined readings. Deprecated The 'readings' field is deprecated. |
serialNumber(String!) | |
status(WaterMeterStatus) | |
supplyPoints([SupplyPointNode!]) | Water supply points to which the meter is linked to. |
Example
{
"id": "abc123",
"category": "NORMAL",
"capabilityType": "AMR",
"make": "abc123",
"model": "abc123",
"serialNumber": "abc123",
"status": "NOT_IN_USE",
"numberOfDigits": 1,
"possibleErrors": [PossibleErrorType],
"isSmart": true,
"externalReference": "abc123",
"meterPointReference": "abc123",
"supplyPoints": FreshWaterSupplyPointType,
"readings": ReadingConnectionTypeConnection,
"linkedServices": [LinkedServiceType]
}Fields
| Name | Description |
|---|---|
body(String!) | Whatsapp text message body. |
Example
{
"body": "abc123"
}Authentication Server
Fields
| Name | Description |
|---|---|
clientId(String) | The client ID of the application. |
name(String) | The name of the application. |
Example
{
"name": "abc123",
"clientId": "abc123"
}CreateMfaDevice
Create a multi-factor authentication (MFA) device for user.
The possible errors that can be raised are:
- KT-CT-1128: Unauthorized.
- KT-CT-1153: Unable to create MFA device.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
deviceEmail(String) | Email address to send the MFA code by default. |
devicePhone(String) | Phone number to send the MFA code by default. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
totpSecret(String) | Secret to setup Time-based One-Time Passwords (TOTP) in your authenticator or password manager manually. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceEmail": "abc123",
"devicePhone": "abc123",
"totpSecret": "abc123"
}DeleteMfaDevice
Delete a multi-factor authentication (MFA) device for the authenticated user.
The possible errors that can be raised are:
- KT-CT-1150: MFA device not found.
- KT-CT-1154: Unable to delete MFA device.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
deviceDeleted(Boolean) | Flag to indicate if the MFA device has been successfully deleted. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceDeleted": true
}KrakenVersionType
Information about what version of Kraken is being executed by this service.
Fields
| Name | Description |
|---|---|
SHA(String) | The git commit SHA that is being executed. |
number(String) | The version number that is being executed. |
Example
{
"number": "abc123",
"SHA": "abc123"
}Fields
| Name | Description |
|---|---|
deviceType(String) | The type of MFA device. |
isConfirmed(Boolean) | Whether the MFA device is confirmed or not. |
Example
{
"deviceType": "abc123",
"isConfirmed": true
}PossibleError
Representation of a graphQL error.
Example
{
"code": "abc123",
"type": "abc123",
"message": "abc123",
"description": "abc123"
}PossibleErrorType
The GraphQL error type for displaying information about GraphQL errors that might be raised from the API.
Fields
| Name | Description |
|---|---|
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"
}ValidateMfaDevice
Validate multi-factor authentication (MFA) devices for user.
The possible errors that can be raised are:
- KT-CT-1150: MFA device not found.
- KT-CT-1151: MFA device not found.
- KT-CT-1152: Invalid MFA token.
- KT-CT-1155: Enabled backup device is needed.
- KT-CT-1113: Disabled GraphQL field requested.
Fields
| Name | Description |
|---|---|
deviceIsValid(Boolean) | Flag to indicate if the device has been verified, so it can be used for MFA. |
possibleErrors([PossibleErrorType]) | Field with the possible errors of the query/mutation. Deprecated The 'possibleErrors' field is deprecated. |
Example
{
"possibleErrors": [PossibleErrorType],
"deviceIsValid": true
}