About Queries
Every GraphQL schema has a root type for both queries and mutations. The query type defines GraphQL operations that retrieve data from the server.
API Site
account
Type:AccountType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about an account.
The possible errors that can be raised are:
- KT-CT-4177: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query Account($accountNumber: String!) {
account(accountNumber: $accountNumber) {
id
number
status
brand
balance
overdueBalance
urn
billingName
billingSubName
billingEmail
billingAddress
billingAddressLine1
billingAddressLine2
billingAddressLine3
billingAddressLine4
billingAddressLine5
billingAddressPostcode
billingCountryCode
billingDeliveryPointIdentifier
splitBillingAddress
address {
...RichAddressTypeFragment
}
portfolio {
...PortfolioTypeFragment
}
ledgers {
...LedgerTypeFragment
}
metadata {
...MetadataFragment
}
canRequestRefund
requestRefundEligibility {
...RequestRefundEligibilityTypeFragment
}
payments {
...AccountPaymentConnectionTypeConnectionFragment
}
repayments {
...AccountRepaymentConnectionTypeConnectionFragment
}
paymentPlans {
...PaymentPlanConnectionTypeConnectionFragment
}
paymentSchedules {
...PaymentScheduleConnectionTypeConnectionFragment
}
paymentForecast {
...PaymentForecastTypeFragment
}
paginatedPaymentForecast {
...PaymentForecastConnectionTypeConnectionFragment
}
referrals {
...ReferralConnectionTypeConnectionFragment
}
referralsCreated
rewards {
...RewardTypeFragment
}
activeReferralSchemes {
...ReferralSchemeTypesFragment
}
transactions {
...TransactionConnectionTypeConnectionFragment
}
provisionalTransactions {
...ProvisionalTransactionConnectionTypeConnectionFragment
}
annualStatements {
...AnnualStatementConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
billingOptions {
...BillingOptionsTypeFragment
}
billingTriggerConfiguration {
...BillingTriggerConfigurationFragment
}
bill {
...BillInterfaceFragment
}
directDebitInstructions {
...DirectDebitInstructionConnectionTypeConnectionFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
events {
...AccountEventConnectionTypeConnectionFragment
}
applications {
...AccountApplicationConnectionTypeConnectionFragment
}
accountType
businessType
business {
...BusinessTypeFragment
}
commsDeliveryPreference
communicationDeliveryPreference
documentAccessibility
references {
...AccountReferenceTypeFragment
}
fileAttachments {
...AccountFileAttachmentFragment
}
paginatedFileAttachments {
...AccountFileAttachmentConnectionTypeConnectionFragment
}
maximumRefund {
...MaximumRefundTypeFragment
}
campaigns {
...AccountCampaignTypeFragment
}
isInHardship
activeHardshipAgreements {
...HardshipAgreementTypeFragment
}
notes {
...AccountNoteTypeFragment
}
contributionAgreements {
...ContributionAgreementTypeFragment
}
assistanceAgreements {
...AssistanceAgreementTypeFragment
}
debtCollectionProceedings {
...DebtCollectionProceedingTypeFragment
}
createdAt
preferredLanguageForComms
consents {
...ConsentTypeFragment
}
reminders {
...AccountReminderConnectionTypeConnectionFragment
}
customerAssets {
...CustomerAssetTypeFragment
}
agreements {
...AusAgreementInterfaceFragment
}
properties {
...PropertyTypeFragment
}
previousProperties {
...PropertyTypeFragment
}
dueCharges {
...DueChargesTypeFragment
}
paymentExtensionInfo {
...PaymentExtensionInfoTypeFragment
}
lifeSupport {
...LifeSupportTypeFragment
}
serviceOrders {
... on ElectricityServiceOrderType {
...ElectricityServiceOrderTypeFragment
}
... on GasServiceOrderType {
...GasServiceOrderTypeFragment
}
... on GasSpecialReadType {
...GasSpecialReadTypeFragment
}
}
changeRequests {
...ChangeRequestTypeFragment
}
estimatedUsageAndCost {
...AccountEstimatedUsageAndCostTypeFragment
}
linkedUserIds
hasWriteOffLedgers
totalBalanceOwing
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"account": {
"id": "abc123",
"number": "abc123",
"status": "PENDING",
"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,
"paymentSchedules": PaymentScheduleConnectionTypeConnection,
"paymentForecast": [PaymentForecastType],
"paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
"referrals": ReferralConnectionTypeConnection,
"referralsCreated": 1,
"rewards": [RewardType],
"activeReferralSchemes": ReferralSchemeTypes,
"transactions": TransactionConnectionTypeConnection,
"provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
"annualStatements": AnnualStatementConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"billingOptions": BillingOptionsType,
"billingTriggerConfiguration": BillingTriggerConfiguration,
"bill": BillInterface,
"directDebitInstructions": DirectDebitInstructionConnectionTypeConnection,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"events": AccountEventConnectionTypeConnection,
"applications": AccountApplicationConnectionTypeConnection,
"accountType": "BUSINESS",
"businessType": "SOLE_TRADER",
"business": BusinessType,
"commsDeliveryPreference": "EMAIL",
"communicationDeliveryPreference": "abc123",
"documentAccessibility": "LARGE_PRINT",
"references": [AccountReferenceType],
"fileAttachments": [AccountFileAttachment],
"paginatedFileAttachments": AccountFileAttachmentConnectionTypeConnection,
"maximumRefund": MaximumRefundType,
"campaigns": [AccountCampaignType],
"isInHardship": true,
"activeHardshipAgreements": [HardshipAgreementType],
"notes": [AccountNoteType],
"contributionAgreements": [ContributionAgreementType],
"assistanceAgreements": [AssistanceAgreementType],
"debtCollectionProceedings": [DebtCollectionProceedingType],
"createdAt": "2020-01-01T00:00:00.000Z",
"preferredLanguageForComms": "abc123",
"consents": ConsentType,
"reminders": AccountReminderConnectionTypeConnection,
"customerAssets": [CustomerAssetType],
"agreements": AusAgreementInterface,
"properties": [PropertyType],
"previousProperties": [PropertyType],
"dueCharges": [DueChargesType],
"paymentExtensionInfo": PaymentExtensionInfoType,
"lifeSupport": LifeSupportType,
"serviceOrders": ElectricityServiceOrderType,
"changeRequests": [ChangeRequestType],
"estimatedUsageAndCost": AccountEstimatedUsageAndCostType,
"linkedUserIds": ["abc123"],
"hasWriteOffLedgers": true,
"totalBalanceOwing": 1
}
}
}accountChargeReasons
Type:[ChargeReasonType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available reasons for use in account charge mutations.
Query
query AccountChargeReasons {
accountChargeReasons {
code
display
isDeprecated
isTaxExempt
isHidden
group
}
}Response
{
"data": {
"accountChargeReasons": [
{
"code": "abc123",
"display": "abc123",
"isDeprecated": true,
"isTaxExempt": true,
"isHidden": true,
"group": "abc123"
}
]
}
}accountContract
Type:Contract
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about an account contract.
The possible errors that can be raised are:
- KT-CT-10003: Contract not found.
- KT-CT-10005: Missing required parameter: either identifier or accountNumber must be provided.
- KT-CT-10006: Account not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the contract. |
| The account number to find the contract for. |
| The version of the contract. |
Query
query AccountContract(
$identifier: String,
$accountNumber: String,
$version: Int
) {
accountContract(
identifier: $identifier,
accountNumber: $accountNumber,
version: $version
) {
identifier
title
party {
... on AccountType {
...AccountTypeFragment
}
... on BusinessType {
...BusinessTypeFragment
}
}
subject {
...AccountTypeFragment
}
status
validFrom
validTo
signedAt
cancelledAt
rescindedAt
lifecycle {
...ContractVersionFragment
}
notes {
...ContractNoteTypeFragment
}
terms {
...TermInterfaceFragment
}
}
}Variables
{
"identifier": "abc123",
"accountNumber": "abc123",
"version": 1
}Response
{
"data": {
"accountContract": {
"identifier": NonEmptyString,
"title": "abc123",
"party": AccountType,
"subject": [AccountType],
"status": "REVOKED",
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"signedAt": "2020-01-01T00:00:00.000Z",
"cancelledAt": "2020-01-01T00:00:00.000Z",
"rescindedAt": "2020-01-01T00:00:00.000Z",
"lifecycle": ContractVersion,
"notes": [ContractNoteType],
"terms": TermInterface
}
}
}accountCreditReasons
Type:[CreditReasonType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available reasons for use in account credit mutations.
Query
query AccountCreditReasons {
accountCreditReasons {
code
display
isDeprecated
isTaxExempt
isHidden
group
}
}Response
{
"data": {
"accountCreditReasons": [
{
"code": "abc123",
"display": "abc123",
"isDeprecated": true,
"isTaxExempt": true,
"isHidden": true,
"group": "abc123"
}
]
}
}accountDebtPosition
URL:https://api.redenergy-kraken.energy/v1/graphql/
The delinquent debt position for an account and its ledgers.
The possible errors that can be raised are:
- KT-CT-4178: No account found with given account number.
- KT-CT-11613: Delinquent debt tracking is not configured for this client.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The account number to retrieve debt position for. |
| The date to retrieve the debt position for. If not provided, defaults to today. Allows querying historical debt positions. If a future date is provided, it is clamped to today. |
Query
query AccountDebtPosition(
$accountNumber: String!,
$asOn: Date
) {
accountDebtPosition(
accountNumber: $accountNumber,
asOn: $asOn
) {
accountNumber
ledgerDebtPositions {
...LedgerDebtPositionTypeFragment
}
}
}Variables
{
"accountNumber": "abc123",
"asOn": "2020-01-01"
}Response
{
"data": {
"accountDebtPosition": {
"accountNumber": "abc123",
"ledgerDebtPositions": LedgerDebtPositionType
}
}
}accountReference
URL:https://api.redenergy-kraken.energy/v1/graphql/
List of matching account references.
The possible errors that can be raised are:
- KT-CT-8310: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Filter account references by this value. |
Query
query AccountReference($value: String) {
accountReference(value: $value) {
namespace
value
createdAt
updatedAt
account {
...AccountTypeFragment
}
}
}Variables
{
"value": "abc123"
}Response
{
"data": {
"accountReference": [
{
"namespace": "abc123",
"value": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"updatedAt": "2020-01-01T00:00:00.000Z",
"account": AccountType
}
]
}
}accountUser
Type:AccountUserType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve an account user by their identifier.
This field requires the Authorization header to be set.
Arguments
| Name | Description |
|---|---|
|
Query
query AccountUser($input: AccountUserInputType) {
accountUser(input: $input) {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Variables
{
"input": AccountUserInputType
}Response
{
"data": {
"accountUser": {
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
}
}accountUserFromAccountNumber
Type:AccountUserType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve the account user with the given email address for an account with the given account number.
This field requires the Authorization header to be set.
The possible errors that can be raised are:
- KT-CT-4178: No account found with given account number.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
Query
query AccountUserFromAccountNumber($input: AccountUserFromAccountNumberInputType) {
accountUserFromAccountNumber(input: $input) {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Variables
{
"input": AccountUserFromAccountNumberInputType
}Response
{
"data": {
"accountUserFromAccountNumber": {
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
}
}accountUserSearch
Type:AccountUserType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Account User Search
This query returns an AccountUserType attempting to match against the request.
We attempt to find a user with a close or exact match to the fields provided
with a confidence score >= that of the threshold argument, if threshold
isn't provided we use a internal base threshold of 0.55
tweak this parameter if you are not getting results as you'd expect.
This field requires the Authorization header to be set.
Arguments
| Name | Description |
|---|---|
|
Query
query AccountUserSearch($input: AccountUserSearchInputType) {
accountUserSearch(input: $input) {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Variables
{
"input": AccountUserSearchInputType
}Response
{
"data": {
"accountUserSearch": {
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
}
}accounts
Type:[AccountType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about multiple accounts.
The possible errors that can be raised are:
- KT-CT-4184: Exactly one of phoneNumber or portfolioNumber must be provided.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| A phone number to find accounts associated with. |
| A portfolio number to find accounts associated with. |
Query
query Accounts(
$phoneNumber: String,
$portfolioNumber: String
) {
accounts(
phoneNumber: $phoneNumber,
portfolioNumber: $portfolioNumber
) {
id
number
status
brand
balance
overdueBalance
urn
billingName
billingSubName
billingEmail
billingAddress
billingAddressLine1
billingAddressLine2
billingAddressLine3
billingAddressLine4
billingAddressLine5
billingAddressPostcode
billingCountryCode
billingDeliveryPointIdentifier
splitBillingAddress
address {
...RichAddressTypeFragment
}
portfolio {
...PortfolioTypeFragment
}
ledgers {
...LedgerTypeFragment
}
metadata {
...MetadataFragment
}
canRequestRefund
requestRefundEligibility {
...RequestRefundEligibilityTypeFragment
}
payments {
...AccountPaymentConnectionTypeConnectionFragment
}
repayments {
...AccountRepaymentConnectionTypeConnectionFragment
}
paymentPlans {
...PaymentPlanConnectionTypeConnectionFragment
}
paymentSchedules {
...PaymentScheduleConnectionTypeConnectionFragment
}
paymentForecast {
...PaymentForecastTypeFragment
}
paginatedPaymentForecast {
...PaymentForecastConnectionTypeConnectionFragment
}
referrals {
...ReferralConnectionTypeConnectionFragment
}
referralsCreated
rewards {
...RewardTypeFragment
}
activeReferralSchemes {
...ReferralSchemeTypesFragment
}
transactions {
...TransactionConnectionTypeConnectionFragment
}
provisionalTransactions {
...ProvisionalTransactionConnectionTypeConnectionFragment
}
annualStatements {
...AnnualStatementConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
billingOptions {
...BillingOptionsTypeFragment
}
billingTriggerConfiguration {
...BillingTriggerConfigurationFragment
}
bill {
...BillInterfaceFragment
}
directDebitInstructions {
...DirectDebitInstructionConnectionTypeConnectionFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
events {
...AccountEventConnectionTypeConnectionFragment
}
applications {
...AccountApplicationConnectionTypeConnectionFragment
}
accountType
businessType
business {
...BusinessTypeFragment
}
commsDeliveryPreference
communicationDeliveryPreference
documentAccessibility
references {
...AccountReferenceTypeFragment
}
fileAttachments {
...AccountFileAttachmentFragment
}
paginatedFileAttachments {
...AccountFileAttachmentConnectionTypeConnectionFragment
}
maximumRefund {
...MaximumRefundTypeFragment
}
campaigns {
...AccountCampaignTypeFragment
}
isInHardship
activeHardshipAgreements {
...HardshipAgreementTypeFragment
}
notes {
...AccountNoteTypeFragment
}
contributionAgreements {
...ContributionAgreementTypeFragment
}
assistanceAgreements {
...AssistanceAgreementTypeFragment
}
debtCollectionProceedings {
...DebtCollectionProceedingTypeFragment
}
createdAt
preferredLanguageForComms
consents {
...ConsentTypeFragment
}
reminders {
...AccountReminderConnectionTypeConnectionFragment
}
customerAssets {
...CustomerAssetTypeFragment
}
agreements {
...AusAgreementInterfaceFragment
}
properties {
...PropertyTypeFragment
}
previousProperties {
...PropertyTypeFragment
}
dueCharges {
...DueChargesTypeFragment
}
paymentExtensionInfo {
...PaymentExtensionInfoTypeFragment
}
lifeSupport {
...LifeSupportTypeFragment
}
serviceOrders {
... on ElectricityServiceOrderType {
...ElectricityServiceOrderTypeFragment
}
... on GasServiceOrderType {
...GasServiceOrderTypeFragment
}
... on GasSpecialReadType {
...GasSpecialReadTypeFragment
}
}
changeRequests {
...ChangeRequestTypeFragment
}
estimatedUsageAndCost {
...AccountEstimatedUsageAndCostTypeFragment
}
linkedUserIds
hasWriteOffLedgers
totalBalanceOwing
}
}Variables
{
"phoneNumber": "abc123",
"portfolioNumber": "abc123"
}Response
{
"data": {
"accounts": [
{
"id": "abc123",
"number": "abc123",
"status": "PENDING",
"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,
"paymentSchedules": PaymentScheduleConnectionTypeConnection,
"paymentForecast": [PaymentForecastType],
"paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
"referrals": ReferralConnectionTypeConnection,
"referralsCreated": 1,
"rewards": [RewardType],
"activeReferralSchemes": ReferralSchemeTypes,
"transactions": TransactionConnectionTypeConnection,
"provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
"annualStatements": AnnualStatementConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"billingOptions": BillingOptionsType,
"billingTriggerConfiguration": BillingTriggerConfiguration,
"bill": BillInterface,
"directDebitInstructions": DirectDebitInstructionConnectionTypeConnection,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"events": AccountEventConnectionTypeConnection,
"applications": AccountApplicationConnectionTypeConnection,
"accountType": "BUSINESS",
"businessType": "SOLE_TRADER",
"business": BusinessType,
"commsDeliveryPreference": "EMAIL",
"communicationDeliveryPreference": "abc123",
"documentAccessibility": "LARGE_PRINT",
"references": [AccountReferenceType],
"fileAttachments": [AccountFileAttachment],
"paginatedFileAttachments": AccountFileAttachmentConnectionTypeConnection,
"maximumRefund": MaximumRefundType,
"campaigns": [AccountCampaignType],
"isInHardship": true,
"activeHardshipAgreements": [HardshipAgreementType],
"notes": [AccountNoteType],
"contributionAgreements": [ContributionAgreementType],
"assistanceAgreements": [AssistanceAgreementType],
"debtCollectionProceedings": [DebtCollectionProceedingType],
"createdAt": "2020-01-01T00:00:00.000Z",
"preferredLanguageForComms": "abc123",
"consents": ConsentType,
"reminders": AccountReminderConnectionTypeConnection,
"customerAssets": [CustomerAssetType],
"agreements": AusAgreementInterface,
"properties": [PropertyType],
"previousProperties": [PropertyType],
"dueCharges": [DueChargesType],
"paymentExtensionInfo": PaymentExtensionInfoType,
"lifeSupport": LifeSupportType,
"serviceOrders": ElectricityServiceOrderType,
"changeRequests": [ChangeRequestType],
"estimatedUsageAndCost": AccountEstimatedUsageAndCostType,
"linkedUserIds": ["abc123"],
"hasWriteOffLedgers": true,
"totalBalanceOwing": 1
}
]
}
}accountsSearch
URL:https://api.redenergy-kraken.energy/v1/graphql/
Search for account that are already in Kraken and match the search terms.
The possible errors that can be raised are:
- KT-CT-4183: One of more search terms failed validations.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Search operators. |
| The maximum number of results to return. |
Query
query AccountsSearch(
$searchTerms: AccountSearchInputType,
$maxResults: Int
) {
accountsSearch(
searchTerms: $searchTerms,
maxResults: $maxResults
) {
account {
...AccountTypeFragment
}
score
}
}Variables
{
"searchTerms": AccountSearchInputType,
"maxResults": 1
}Response
{
"data": {
"accountsSearch": [
{
"account": AccountType,
"score": "1.0"
}
]
}
}activeAffiliateReferralScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return the current active referral reward scheme of a given affiliate organisation, if any exists.
Arguments
| Name | Description |
|---|---|
| The affiliate link subdomain. |
| The account type for which to get the referral scheme. |
Query
query ActiveAffiliateReferralScheme(
$subdomain: String!,
$accountType: ReferralSchemeAccountTypeOptions
) {
activeAffiliateReferralScheme(
subdomain: $subdomain,
accountType: $accountType
) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Variables
{
"subdomain": "abc123",
"accountType": "DOMESTIC"
}Response
{
"data": {
"activeAffiliateReferralScheme": {
"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
}
}
}activeDomesticSignupRewardScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return the current active signup referral reward scheme with the given code, if any exists.
Query
query ActiveDomesticSignupRewardScheme {
activeDomesticSignupRewardScheme {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Response
{
"data": {
"activeDomesticSignupRewardScheme": {
"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
}
}
}activeSalesChannels
Type:[SalesChannelType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
A list of active sales channels.
The possible errors that can be raised are:
- KT-CT-12702: Invalid datetime range.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The datetime from which to filter active sales channels. |
| The datetime up to which to filter active sales channels. |
Query
query ActiveSalesChannels(
$activeFrom: DateTime,
$activeTo: DateTime
) {
activeSalesChannels(
activeFrom: $activeFrom,
activeTo: $activeTo
) {
name
code
description
hierarchicalName
}
}Variables
{
"activeFrom": "2020-01-01T00:00:00.000Z",
"activeTo": "2020-01-01T00:00:00.000Z"
}Response
{
"data": {
"activeSalesChannels": [
{
"name": "abc123",
"code": "abc123",
"description": "abc123",
"hierarchicalName": "abc123"
}
]
}
}addressEnrolments
Type:IdentificationType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Search for an in-progress MIRN discovery for an enrolment.
Arguments
| Name | Description |
|---|---|
|
Query
query AddressEnrolments($input: AddressEnrolmentsInput!) {
addressEnrolments(input: $input) {
reference
marketIdentifier
discoveryStatus
}
}Variables
{
"input": AddressEnrolmentsInput
}Response
{
"data": {
"addressEnrolments": {
"reference": "abc123",
"marketIdentifier": "abc123",
"discoveryStatus": "SKIPPED"
}
}
}addressFields
Type:AddressFieldDescriptorType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the address field descriptor for a given identifier. The identifier can be an ISO 3166-1 alpha-2 country code (e.g. 'AU', 'GB') or a custom descriptor key configured for the deployment. Returns null if the identifier is not recognised.
Arguments
| Name | Description |
|---|---|
| Address field descriptor identifier. Typically an ISO 3166-1 alpha-2 country code, but may also be a custom descriptor key. |
Query
query AddressFields($addressFieldDescriptorId: String!) {
addressFields(addressFieldDescriptorId: $addressFieldDescriptorId) {
fieldGroups {
...AddressFieldGroupTypeFragment
}
}
}Variables
{
"addressFieldDescriptorId": "abc123"
}Response
{
"data": {
"addressFields": {
"fieldGroups": AddressFieldGroupType
}
}
}affiliateLink
Type:AffiliateLinkType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Link object for an affiliate organization.
The possible errors that can be raised are:
- KT-CT-7713: Invalid data.
- KT-CT-7718: Affiliate link is expired.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The affiliate link subdomain. |
Query
query AffiliateLink($subdomain: String!) {
affiliateLink(subdomain: $subdomain) {
id
subdomain
trainingStatus
isBusiness
contactName
contactEmail
landingUrl
organisation {
...AffiliateOrganisationTypeFragment
}
}
}Variables
{
"subdomain": "abc123"
}Response
{
"data": {
"affiliateLink": {
"id": "abc123",
"subdomain": "abc123",
"trainingStatus": "NOT_APPLICABLE",
"isBusiness": true,
"contactName": "abc123",
"contactEmail": "abc123",
"landingUrl": "abc123",
"organisation": AffiliateOrganisationType
}
}
}affiliateLinks
URL:https://api.redenergy-kraken.energy/v1/graphql/
Links (urls) for the affiliate organizations.
Arguments
| Name | Description |
|---|---|
| Email address of the affiliate agent. |
Query
query AffiliateLinks($agentContactEmail: String!) {
affiliateLinks(agentContactEmail: $agentContactEmail) {
id
subdomain
trainingStatus
isBusiness
contactName
contactEmail
landingUrl
organisation {
...AffiliateOrganisationTypeFragment
}
}
}Variables
{
"agentContactEmail": "abc123"
}Response
{
"data": {
"affiliateLinks": {
"id": "abc123",
"subdomain": "abc123",
"trainingStatus": "NOT_APPLICABLE",
"isBusiness": true,
"contactName": "abc123",
"contactEmail": "abc123",
"landingUrl": "abc123",
"organisation": AffiliateOrganisationType
}
}
}affiliateOrganisation
Type:AffiliateOrganisationType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return the details of a given affiliate organization, if any exists.
The possible errors that can be raised are:
- KT-CT-7701: The affiliate organisation was not found.
- KT-CT-7702: Either id or number must be provided.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The affiliate organisation ID. |
| The affiliate organisation number. |
Query
query AffiliateOrganisation(
$id: Int,
$number: String
) {
affiliateOrganisation(
id: $id,
number: $number
) {
id
number
name
contactEmail
canRenewTariffs
defaultAccountType
allowAlternativePaymentMethods
canRegisterBusinessMeterPoints
canRegisterPortfolioAccounts
canRegisterCustomersWithoutEmailAddress
canUseIvrSupportApi
skipMeterPointAddressValidation
salesChannel
salesChannelCode
isFieldSalesOnlyProduct
}
}Variables
{
"id": 1,
"number": "abc123"
}Response
{
"data": {
"affiliateOrganisation": {
"id": "abc123",
"number": "abc123",
"name": "abc123",
"contactEmail": "abc123",
"canRenewTariffs": true,
"defaultAccountType": "BUSINESS",
"allowAlternativePaymentMethods": true,
"canRegisterBusinessMeterPoints": true,
"canRegisterPortfolioAccounts": true,
"canRegisterCustomersWithoutEmailAddress": true,
"canUseIvrSupportApi": true,
"skipMeterPointAddressValidation": true,
"salesChannel": "DIRECT",
"salesChannelCode": "abc123",
"isFieldSalesOnlyProduct": true
}
}
}agentCallCenterStatus
Type:AgentCallCenterStatusType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the call center status for a given agent.
The possible errors that can be raised are:
- KT-CT-7813: Support user not found with that username.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The support user name. |
Query
query AgentCallCenterStatus($supportUserName: String!) {
agentCallCenterStatus(supportUserName: $supportUserName) {
id
status
updatedAt
mostRecentCallId
}
}Variables
{
"supportUserName": "abc123"
}Response
{
"data": {
"agentCallCenterStatus": {
"id": "abc123",
"status": "abc123",
"updatedAt": "2020-01-01T00:00:00.000Z",
"mostRecentCallId": 1
}
}
}agreement
Type:CommonAgreementType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get an agreement by its ID.
The possible errors that can be raised are:
- KT-CT-1501: Agreement not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Agreement identifier. |
Query
query Agreement($id: ID!) {
agreement(id: $id) {
id
validFrom
validTo
agreedAt
terminatedAt
ratesAgreedAt
rescissionDeadlineAt
account {
...AccountTypeFragment
}
supplyPoint {
...SupplyPointTypeFragment
}
product {
...SupplyProductTypeFragment
}
isActive
characteristicValues {
...CharacteristicValueInterfaceFragment
}
agreedFrom
agreedTo
isRevoked
params
}
}Variables
{
"id": "abc123"
}Response
{
"data": {
"agreement": {
"id": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"agreedAt": "2020-01-01T00:00:00.000Z",
"terminatedAt": "2020-01-01T00:00:00.000Z",
"ratesAgreedAt": "2020-01-01T00:00:00.000Z",
"rescissionDeadlineAt": "2020-01-01T00:00:00.000Z",
"account": AccountType,
"supplyPoint": SupplyPointType,
"product": SupplyProductType,
"isActive": true,
"characteristicValues": CharacteristicValueInterface,
"agreedFrom": "2020-01-01T00:00:00.000Z",
"agreedTo": "2020-01-01T00:00:00.000Z",
"isRevoked": true,
"params": {"key": "value"}
}
}
}agreementRollover
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get an agreement rollover by its number.
The possible errors that can be raised are:
- KT-CT-13705: Agreement rollover not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Number of the agreement rollover. |
Query
query AgreementRollover($number: String!) {
agreementRollover(number: $number) {
id
number
quoteRequests {
...QuoteRequestTypeFragment
}
rolloverType
expectedSendDate
status
params
failureReason
actualSendDate
suppressComms
createdAt
updatedAt
tags
agreement {
...DistributionAgreementTypeFragment
}
rolledOnTo {
...DistributionAgreementTypeFragment
}
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"agreementRollover": {
"id": "abc123",
"number": "abc123",
"quoteRequests": QuoteRequestType,
"rolloverType": "DEFAULT",
"expectedSendDate": "2020-01-01",
"status": "PENDING",
"params": {"key": "value"},
"failureReason": "abc123",
"actualSendDate": "2020-01-01",
"suppressComms": true,
"createdAt": "2020-01-01T00:00:00.000Z",
"updatedAt": "2020-01-01T00:00:00.000Z",
"tags": ["abc123"],
"agreement": DistributionAgreementType,
"rolledOnTo": DistributionAgreementType
}
}
}agreementsForRollover
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get agreements eligible for the rollover process.
Arguments
| Name | Description |
|---|---|
| Days before the agreement expiration. |
| Window size in days. |
Query
query AgreementsForRollover(
$daysBeforeExpiration: Int!,
$windowSize: Int!
) {
agreementsForRollover(
daysBeforeExpiration: $daysBeforeExpiration,
windowSize: $windowSize
) {
id
validFrom
validTo
agreedAt
terminatedAt
ratesAgreedAt
rescissionDeadlineAt
account {
...AccountTypeFragment
}
supplyPoint {
...SupplyPointTypeFragment
}
product {
...SupplyProductTypeFragment
}
isActive
characteristicValues {
...CharacteristicValueInterfaceFragment
}
agreedFrom
agreedTo
isRevoked
params
}
}Variables
{
"daysBeforeExpiration": 1,
"windowSize": 1
}Response
{
"data": {
"agreementsForRollover": [
{
"id": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"agreedAt": "2020-01-01T00:00:00.000Z",
"terminatedAt": "2020-01-01T00:00:00.000Z",
"ratesAgreedAt": "2020-01-01T00:00:00.000Z",
"rescissionDeadlineAt": "2020-01-01T00:00:00.000Z",
"account": AccountType,
"supplyPoint": SupplyPointType,
"product": SupplyProductType,
"isActive": true,
"characteristicValues": CharacteristicValueInterface,
"agreedFrom": "2020-01-01T00:00:00.000Z",
"agreedTo": "2020-01-01T00:00:00.000Z",
"isRevoked": true,
"params": {"key": "value"}
}
]
}
}Arguments
| Name | Description |
|---|---|
| Statuses to filter for. Otherwise return active and upcoming brownouts. |
| |
| |
| |
|
Query
query ApiBrownouts(
$input: APIBrownoutInput,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
apiBrownouts(
input: $input,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...APIBrownoutEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": APIBrownoutInput,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"apiBrownouts": {
"pageInfo": PageInfo,
"edges": APIBrownoutEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}apiExceptions
Type:APIExceptionConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a connection containing API Exceptions.
Arguments
| Name | Description |
|---|---|
| Fields to filter for. Otherwise don't filter at all. |
| |
| |
| |
|
Query
query ApiExceptions(
$input: APIExceptionQueryInput,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
apiExceptions(
input: $input,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...APIExceptionConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": APIExceptionQueryInput,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"apiExceptions": {
"pageInfo": PageInfo,
"edges": APIExceptionConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}appSessions
Type:AppSessionConnectionTypeConnection!
URL:https://api.redenergy-kraken.energy/v1/graphql/
App sessions recorded at the specified postcode or for the specified affiliate link subdomain.
Arguments
| Name | Description |
|---|---|
| The postcode of the address at which the app session was recorded. |
| The affiliate link subdomain to filter app sessions by. |
| |
| |
| |
|
Query
query AppSessions(
$postcode: String,
$subdomain: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
appSessions(
postcode: $postcode,
subdomain: $subdomain,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...AppSessionConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"postcode": "abc123",
"subdomain": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"appSessions": {
"pageInfo": PageInfo,
"edges": AppSessionConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}authorizedApplications
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all the confidential-client applications the current user has authorized.
Query
query AuthorizedApplications {
authorizedApplications {
name
clientId
}
}Response
{
"data": {
"authorizedApplications": [
{
"name": "abc123",
"clientId": "abc123"
}
]
}
}availableOfferings
Type:[OfferingType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a list of actively available offerings from the catalog.
Query
query AvailableOfferings {
availableOfferings {
identifier
internalName
customerName
customerDescription
isSellable
lifecycle {
...LifecycleTypeFragment
}
tags {
...TagTypeFragment
}
productComponents {
...ProductComponentTypeFragment
}
offeringComponents {
...OfferingComponentTypeFragment
}
termTemplateComponents {
...TermTemplateComponentTypeFragment
}
groups {
...GroupTypeFragment
}
isAmendable
isExpired
isActive
isDraft
isLatestVersion
isFirstDraft
}
}Response
{
"data": {
"availableOfferings": [
{
"identifier": "abc123",
"internalName": "abc123",
"customerName": "abc123",
"customerDescription": "abc123",
"isSellable": true,
"lifecycle": LifecycleType,
"tags": [TagType],
"productComponents": [ProductComponentType],
"offeringComponents": [OfferingComponentType],
"termTemplateComponents": [TermTemplateComponentType],
"groups": [GroupType],
"isAmendable": true,
"isExpired": true,
"isActive": true,
"isDraft": true,
"isLatestVersion": true,
"isFirstDraft": true
}
]
}
}availableProductSwitchDates
Type:[Date]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get available dates for product switch.
The possible errors that can be raised are:
- KT-CT-1501: Agreement not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Agreement ID. |
| The maximum number of days to look for available dates. |
Query
query AvailableProductSwitchDates(
$agreementId: Int!,
$maxRange: Int
) {
availableProductSwitchDates(
agreementId: $agreementId,
maxRange: $maxRange
)
}Variables
{
"agreementId": 1,
"maxRange": 1
}Response
{
"data": {
"availableProductSwitchDates": ["2020-01-01"]
}
}availableProducts
Type:[SupplyProductType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get available products for the given market.
The possible errors that can be raised are:
- KT-CT-4930: Unsupported market.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Products available for the target market. |
Query
query AvailableProducts($marketName: String!) {
availableProducts(marketName: $marketName) {
id
code
notes
fullName
displayName
description
availableFrom
availableTo
isHidden
term
endsAt
brandCode
marketName
availabilityStatus
termsContractType
termsAndConditionsTypes {
...TermsAndConditionsTypeFragment
}
params
tags {
...SupplyProductTagTypeFragment
}
}
}Variables
{
"marketName": "abc123"
}Response
{
"data": {
"availableProducts": [
{
"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": SupplyProductTagType
}
]
}
}backendScreen
Type:BackendScreenType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get mobile screen details to render.
The possible errors that can be raised are:
- KT-CT-8001: No backend screen available.
- KT-CT-8005: Backend screen does not support parameters.
- KT-CT-8008: Incorrect or missing data necessary to build the screen.
- KT-CT-8006: Error applying parameters to backend screen.
- KT-CT-8009: Error translating screen content.
- KT-CT-8010: Invalid step ID.
- KT-CT-8011: Cannot rewind past a previous irreversible step.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The ID of the screen to return. |
| List of key-value pairs (strings) to pass as parameters to the screen. |
| The maximum version of backend screens supported by the client. |
Query
query BackendScreen(
$screenId: ID!,
$params: [BackendScreenParamInputType],
$maxVersionSupported: Int
) {
backendScreen(
screenId: $screenId,
params: $params,
maxVersionSupported: $maxVersionSupported
) {
... on ComponentListType {
...ComponentListTypeFragment
}
... on GenericBackendScreen {
...GenericBackendScreenFragment
}
... on Dashboard {
...DashboardFragment
}
... on FormScreenType {
...FormScreenTypeFragment
}
}
}Variables
{
"screenId": "abc123",
"params": BackendScreenParamInputType,
"maxVersionSupported": 1
}Response
{
"data": {
"backendScreen": ComponentListType
}
}backendScreenEventIds
Type:[String]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all registered backend screen event IDs.
Query
query BackendScreenEventIds {
backendScreenEventIds
}Response
{
"data": {
"backendScreenEventIds": ["abc123"]
}
}backendScreenIds
Type:[String]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all registered backend screen IDs.
Query
query BackendScreenIds {
backendScreenIds
}Response
{
"data": {
"backendScreenIds": ["abc123"]
}
}Arguments
| Name | Description |
|---|---|
| The IBAN of the bank account. |
Query
query BankDetailsValidation($iban: NonEmptyString!) {
bankDetailsValidation(iban: $iban) {
areValid
message
}
}Variables
{
"iban": NonEmptyString
}Response
{
"data": {
"bankDetailsValidation": {
"areValid": true,
"message": "abc123"
}
}
}billingTriggerConfigurations
Type:BillingTriggerConfigurationsConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Query billing trigger configurations for a specific target. By default returns only active configurations. Specify effectivefrom/effectiveto for time range filtering. Use include_children=true on parent target to get configurations for all child targets.
Arguments
| Name | Description |
|---|---|
| The target to query configurations for. |
| Start of the time range to query configurations for. |
| End of the time range to query configurations for. |
| Include all child targets of the specified target. |
| |
| |
| |
|
Query
query BillingTriggerConfigurations(
$target: TargetInput!,
$effectiveFrom: DateTime,
$effectiveTo: DateTime,
$includeChildren: Boolean,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
billingTriggerConfigurations(
target: $target,
effectiveFrom: $effectiveFrom,
effectiveTo: $effectiveTo,
includeChildren: $includeChildren,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...BillingTriggerConfigurationsEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"target": TargetInput,
"effectiveFrom": "2020-01-01T00:00:00.000Z",
"effectiveTo": "2020-01-01T00:00:00.000Z",
"includeChildren": true,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"billingTriggerConfigurations": {
"pageInfo": PageInfo,
"edges": BillingTriggerConfigurationsEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}business
Type:BusinessType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about a business.
The possible errors that can be raised are:
- KT-CT-11101: The viewer is not authorized to execute the query/mutation. Check the ownership/permissions of provided data.
- KT-CT-11107: Unauthorized.
- KT-CT-1605: Invalid input.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The business ID. |
| Kraken-generated, human-readable number for display purposes. |
| List of business detail key-value pairs to filter by. |
Query
query Business(
$id: ID,
$displayableNumber: String,
$details: [BusinessDetailInput]
) {
business(
id: $id,
displayableNumber: $displayableNumber,
details: $details
) {
id
name
number
displayableNumber
businessType
sectors
details {
...BusinessDetailTypeFragment
}
billingAddress {
...RichAddressTypeFragment
}
legalAddress {
...RichAddressTypeFragment
}
linkedAccountNumber
linkedAccountNumbers
segmentName
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
numberType
}
}Variables
{
"id": "abc123",
"displayableNumber": "abc123",
"details": BusinessDetailInput
}Response
{
"data": {
"business": {
"id": "abc123",
"name": "abc123",
"number": "abc123",
"displayableNumber": "abc123",
"businessType": "SOLE_TRADER",
"sectors": BusinessSectorString,
"details": [BusinessDetailType],
"billingAddress": RichAddressType,
"legalAddress": RichAddressType,
"linkedAccountNumber": "abc123",
"linkedAccountNumbers": "abc123",
"segmentName": "abc123",
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"numberType": "ABN"
}
}
}businessAccountReferralRewardScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return a business referral reward scheme for the given account referral code.
Arguments
| Name | Description |
|---|---|
| Friend referral code. |
Query
query BusinessAccountReferralRewardScheme($code: String!) {
businessAccountReferralRewardScheme(code: $code) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Variables
{
"code": "abc123"
}Response
{
"data": {
"businessAccountReferralRewardScheme": {
"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
}
}
}businessContract
Type:Contract
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about an account contract.
The possible errors that can be raised are:
- KT-CT-10003: Contract not found.
- KT-CT-10005: Missing required parameter: either identifier or accountNumber must be provided.
- KT-CT-10006: Account not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the contract. |
| The account number to find the business contract for. |
| The version of the contract. |
Query
query BusinessContract(
$identifier: String,
$accountNumber: String,
$version: Int
) {
businessContract(
identifier: $identifier,
accountNumber: $accountNumber,
version: $version
) {
identifier
title
party {
... on AccountType {
...AccountTypeFragment
}
... on BusinessType {
...BusinessTypeFragment
}
}
subject {
...AccountTypeFragment
}
status
validFrom
validTo
signedAt
cancelledAt
rescindedAt
lifecycle {
...ContractVersionFragment
}
notes {
...ContractNoteTypeFragment
}
terms {
...TermInterfaceFragment
}
}
}Variables
{
"identifier": "abc123",
"accountNumber": "abc123",
"version": 1
}Response
{
"data": {
"businessContract": {
"identifier": NonEmptyString,
"title": "abc123",
"party": AccountType,
"subject": [AccountType],
"status": "REVOKED",
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"signedAt": "2020-01-01T00:00:00.000Z",
"cancelledAt": "2020-01-01T00:00:00.000Z",
"rescindedAt": "2020-01-01T00:00:00.000Z",
"lifecycle": ContractVersion,
"notes": [ContractNoteType],
"terms": TermInterface
}
}
}call
Type:CallInterface!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a call using an integer or UUID identifier.
The possible errors that can be raised are:
- KT-CT-11802: Call not found.
- KT-CT-11817: Invalid call ID.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Identifier for the call, as an integer or a UUID. |
Query
query Call($id: ID!) {
call(id: $id) {
id
account {
...AccountTypeFragment
}
metadata {
...CallMetadataItemTypeFragment
}
}
}Variables
{
"id": "abc123"
}Response
{
"data": {
"call": {
"id": "abc123",
"account": AccountType,
"metadata": CallMetadataItemType
}
}
}callTag
Type:CallTagType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the call tag for a given ID.
The possible errors that can be raised are:
- KT-CT-11809: Call tag not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The call tag ID. |
Query
query CallTag($id: ID!) {
callTag(id: $id) {
id
name
isActive
}
}Variables
{
"id": "abc123"
}Response
{
"data": {
"callTag": {
"id": "abc123",
"name": "abc123",
"isActive": true
}
}
}callTags
Type:CallTagConnectionTypeConnection!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get call tags.
Arguments
| Name | Description |
|---|---|
| Filter by call tag name. |
| Filter by active status. |
| |
| |
| |
|
Query
query CallTags(
$name: String,
$isActive: Boolean,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
callTags(
name: $name,
isActive: $isActive,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...CallTagConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"name": "abc123",
"isActive": true,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"callTags": {
"pageInfo": PageInfo,
"edges": CallTagConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}campaigns
Type:AccountCampaignConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
The campaigns associated with this account.
Arguments
| Name | Description |
|---|---|
| The account number. |
| |
| |
| |
|
Query
query Campaigns(
$accountNumber: String!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
campaigns(
accountNumber: $accountNumber,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...AccountCampaignConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"campaigns": {
"pageInfo": PageInfo,
"edges": AccountCampaignConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}canRescindAgreement
Type:Boolean
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if an agreement can be rescinded.
The possible errors that can be raised are:
- KT-CT-1501: Agreement not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The ID of the agreement to check. |
Query
query CanRescindAgreement($agreementId: Int!) {
canRescindAgreement(agreementId: $agreementId)
}Variables
{
"agreementId": 1
}Response
{
"data": {
"canRescindAgreement": true
}
}centrepayDeductions
URL:https://api.redenergy-kraken.energy/v1/graphql/
The possible errors that can be raised are:
- KT-CT-3823: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query CentrepayDeductions($accountNumber: String!) {
centrepayDeductions(accountNumber: $accountNumber) {
accountNumber
benefitGroup
serviceReason
customerReferenceNumber
amount
targetAmount
validTo
id
validFrom
customerGivenName
customerFamilyName
customerDateOfBirth
changeStatus
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"centrepayDeductions": [
{
"accountNumber": "abc123",
"benefitGroup": "ABY",
"serviceReason": "ELE",
"customerReferenceNumber": "abc123",
"amount": 1,
"targetAmount": 1,
"validTo": "2020-01-01",
"id": "abc123",
"validFrom": "2020-01-01",
"customerGivenName": "abc123",
"customerFamilyName": "abc123",
"customerDateOfBirth": "abc123",
"changeStatus": "CREATING"
}
]
}
}collectionProcessDetails
Type:CollectionProcessDetailsType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Collection process record details.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-11201: No Collection Process Records associated with id.
- KT-CT-11206: Unable to retrieve disconnection related data for collection process.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The collection process record number. |
Query
query CollectionProcessDetails($collectionProcessRecordNumber: String!) {
collectionProcessDetails(collectionProcessRecordNumber: $collectionProcessRecordNumber) {
collectionProcessRecordNumber
isPaused
isComplete
isActive
completionType
associatedItems {
...CollectionProcessRecordAssociatedItemTypeFragment
}
pausedDays
collectionProcessType
targetObjectIdentifier
}
}Variables
{
"collectionProcessRecordNumber": "abc123"
}Response
{
"data": {
"collectionProcessDetails": {
"collectionProcessRecordNumber": "abc123",
"isPaused": true,
"isComplete": true,
"isActive": true,
"completionType": "abc123",
"associatedItems": [CollectionProcessRecordAssociatedItemType],
"pausedDays": 1,
"collectionProcessType": "ACCOUNT",
"targetObjectIdentifier": "abc123"
}
}
}complaint
Type:ComplaintType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a complaint.
The possible errors that can be raised are:
- KT-CT-12301: Complaint not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query Complaint($complaintId: Int!) {
complaint(complaintId: $complaintId) {
id
contacts {
...ComplaintContactConnectionTypeConnectionFragment
}
type
subtype
creationDate
resolutionDate
assigneeId
isOfficial
}
}Variables
{
"complaintId": 1
}Response
{
"data": {
"complaint": {
"id": "abc123",
"contacts": ComplaintContactConnectionTypeConnection,
"type": "abc123",
"subtype": "abc123",
"creationDate": "2020-01-01",
"resolutionDate": "2020-01-01",
"assigneeId": "abc123",
"isOfficial": true
}
}
}consentTypes
Type:[ConsentTypeType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
A list of the consent types available.
Query
query ConsentTypes {
consentTypes {
code
description
name
defaultValue
}
}Response
{
"data": {
"consentTypes": [
{
"code": "abc123",
"description": "abc123",
"name": "abc123",
"defaultValue": "ACCEPTED"
}
]
}
}contractCreationJourney
Type:ContractCreationJourneyType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about a contract creation journey.
The possible errors that can be raised are:
- KT-CT-10017: The contract journey could not be found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The number of the contract journey. |
Query
query ContractCreationJourney($number: String!) {
contractCreationJourney(number: $number) {
number
status
contractDetails {
...ContractDetailsFragment
}
journeyType
requestedAt
orderReference
notes {
...ContractNoteTypeFragment
}
context {
...ContractCreationContextFragment
}
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"contractCreationJourney": {
"number": NonEmptyString,
"status": "IN_PROGRESS",
"contractDetails": ContractDetails,
"journeyType": "CONTRACT_CREATION",
"requestedAt": "2020-01-01T00:00:00.000Z",
"orderReference": "abc123",
"notes": [ContractNoteType],
"context": ContractCreationContext
}
}
}contractNoteReasons
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a list of contract note reasons, optionally filtered by activity types.
Arguments
| Name | Description |
|---|---|
| Filter reasons applicable to any of the given contract activity types. |
Query
query ContractNoteReasons($activityTypes: [ContractActivityTypeOptions]) {
contractNoteReasons(activityTypes: $activityTypes) {
slug
description
activityTypes
}
}Variables
{
"activityTypes": "ALL_ACTIVITY_TYPES"
}Response
{
"data": {
"contractNoteReasons": [
{
"slug": "abc123",
"description": "abc123",
"activityTypes": "ALL_ACTIVITY_TYPES"
}
]
}
}contracts
Type:[Contract]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a list of contracts filtered by party or subject.
The possible errors that can be raised are:
- KT-CT-10029: Missing contract filters.
- KT-CT-10030: Filter by subject is not implemented.
- KT-CT-10031: Invalid party filter.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Filters to apply when querying contracts. At least one filter must be provided. |
Query
query Contracts($filters: ContractFiltersInput!) {
contracts(filters: $filters) {
identifier
title
party {
... on AccountType {
...AccountTypeFragment
}
... on BusinessType {
...BusinessTypeFragment
}
}
subject {
...AccountTypeFragment
}
status
validFrom
validTo
signedAt
cancelledAt
rescindedAt
lifecycle {
...ContractVersionFragment
}
notes {
...ContractNoteTypeFragment
}
terms {
...TermInterfaceFragment
}
}
}Variables
{
"filters": ContractFiltersInput
}Response
{
"data": {
"contracts": [
{
"identifier": NonEmptyString,
"title": "abc123",
"party": AccountType,
"subject": [AccountType],
"status": "REVOKED",
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"signedAt": "2020-01-01T00:00:00.000Z",
"cancelledAt": "2020-01-01T00:00:00.000Z",
"rescindedAt": "2020-01-01T00:00:00.000Z",
"lifecycle": ContractVersion,
"notes": [ContractNoteType],
"terms": TermInterface
}
]
}
}Query
query ContributionSchemes {
contributionSchemes {
id
code
displayName
taxable
acceptingContributions
}
}Response
{
"data": {
"contributionSchemes": [
{
"id": "abc123",
"code": "abc123",
"displayName": "abc123",
"taxable": true,
"acceptingContributions": true
}
]
}
}customerAsset
Type:CustomerAssetType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get customer asset by ID.
Arguments
| Name | Description |
|---|---|
| Customer asset ID. |
Query
query CustomerAsset($customerAssetId: String!) {
customerAsset(customerAssetId: $customerAssetId) {
id
physicalId
name
type
activeFrom
activeTo
accountNumber
}
}Variables
{
"customerAssetId": "abc123"
}Response
{
"data": {
"customerAsset": {
"id": "abc123",
"physicalId": "abc123",
"name": "abc123",
"type": "abc123",
"activeFrom": "2020-01-01T00:00:00.000Z",
"activeTo": "2020-01-01T00:00:00.000Z",
"accountNumber": "abc123"
}
}
}customerFeedbackForms
Type:CustomerFeedbackFormConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Returns all active customer feedback forms for the account's brand.
Arguments
| Name | Description |
|---|---|
| The account number. |
| Feedback sources currently supported. |
| |
| |
| |
|
Query
query CustomerFeedbackForms(
$accountNumber: String!,
$feedbackSource: CustomerFeedbackSourceChoices,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
customerFeedbackForms(
accountNumber: $accountNumber,
feedbackSource: $feedbackSource,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...CustomerFeedbackFormConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"feedbackSource": "FEEDBACK_SOURCE_PHONE_CALL_FOLLOW_UP",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"customerFeedbackForms": {
"pageInfo": PageInfo,
"edges": CustomerFeedbackFormConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}dashboardScreen
Type:Dashboard
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a dashboard screen to render in the form of a json list of sections containing cards or grouped cards each with an order attribute.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-8001: No backend screen available.
- KT-CT-8005: Backend screen does not support parameters.
- KT-CT-8008: Incorrect or missing data necessary to build the screen.
- KT-CT-8006: Error applying parameters to backend screen.
- KT-CT-8009: Error translating screen content.
- KT-CT-8010: Invalid step ID.
- KT-CT-8011: Cannot rewind past a previous irreversible step.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The ID of the dashboard type screen to return. |
| The account number of the user. |
| The maximum version of dahshboard type screens supported by the client. |
| The ledger id associated to the account. |
| The ledger number associated to the account. |
| The property id associated to the account. |
| List of key-value pairs (strings) to pass as parameters to the screen. |
Query
query DashboardScreen(
$dashboardId: ID!,
$accountNumber: String!,
$maxVersionSupported: Int!,
$ledgerId: String,
$ledgerNumber: String,
$propertyId: String,
$params: [BackendScreenParamInputType]
) {
dashboardScreen(
dashboardId: $dashboardId,
accountNumber: $accountNumber,
maxVersionSupported: $maxVersionSupported,
ledgerId: $ledgerId,
ledgerNumber: $ledgerNumber,
propertyId: $propertyId,
params: $params
) {
id
typename
dashboardItems {
...SectionTypeFragment
}
serialisedDashboardItems
}
}Variables
{
"dashboardId": "abc123",
"accountNumber": "abc123",
"maxVersionSupported": 1,
"ledgerId": "abc123",
"ledgerNumber": "abc123",
"propertyId": "abc123",
"params": BackendScreenParamInputType
}Response
{
"data": {
"dashboardScreen": {
"id": "abc123",
"typename": "abc123",
"dashboardItems": SectionType,
"serialisedDashboardItems": "abc123"
}
}
}defaultPaymentInstruction
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the default payment instruction for the account's main ledger.
Deprecated
The 'defaultPaymentInstruction' field is deprecated.
Please use 'usablePaymentInstructions' on the Ledger type to get all usable instructions, or 'paymentPreferenceAtTime' on the Ledger type to get a specific one. Both require explicitly requesting a ledger.
- Marked as deprecated on 2026-01-28.
- Scheduled for removal on or after 2026-07-28.
Arguments
| Name | Description |
|---|---|
| The account number. |
| Provide an option to get either a CARD or DIRECT_DEBIT instruction. |
Query
query DefaultPaymentInstruction(
$accountNumber: String!,
$instructionType: PaymentType
) {
defaultPaymentInstruction(
accountNumber: $accountNumber,
instructionType: $instructionType
) {
id
status
validFrom
accountHolder
instructionType
cardPaymentNetwork
cardExpiryMonth
cardExpiryYear
supplementaryLedger {
...SupplementaryLedgerTypeFragment
}
sortCode
iban
bankCode
accountType
vendor
cardNumber
cardType
maskedAccountIdentifier
owners {
...PaymentInstructionOwnerTypeFragment
}
}
}Variables
{
"accountNumber": "abc123",
"instructionType": "BPAY"
}Response
{
"data": {
"defaultPaymentInstruction": {
"id": "abc123",
"status": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"accountHolder": "abc123",
"instructionType": "abc123",
"cardPaymentNetwork": "abc123",
"cardExpiryMonth": 1,
"cardExpiryYear": 1,
"supplementaryLedger": SupplementaryLedgerType,
"sortCode": "abc123",
"iban": "abc123",
"bankCode": "abc123",
"accountType": "abc123",
"vendor": "abc123",
"cardNumber": "abc123",
"cardType": "abc123",
"maskedAccountIdentifier": "abc123",
"owners": [PaymentInstructionOwnerType]
}
}
}defaultRawScore
Type:Int
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get default raw score for a customer feedback form.
The possible errors that can be raised are:
- KT-CT-5513: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query DefaultRawScore($formId: Int!) {
defaultRawScore(formId: $formId)
}Variables
{
"formId": 1
}Response
{
"data": {
"defaultRawScore": 1
}
}depositAgreements
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get deposit agreements for a given account.
The possible errors that can be raised are:
- KT-CT-4177: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query DepositAgreements($accountNumber: String!) {
depositAgreements(accountNumber: $accountNumber) {
depositKey
depositAmount
acceptedAt
fulfilledAt
collectionDate
dueDate
returnStrategy
currentEligibilityStatus {
...CurrentEligibilityStatusOutputFragment
}
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"depositAgreements": [
{
"depositKey": "abc123",
"depositAmount": 1,
"acceptedAt": "2020-01-01T00:00:00.000Z",
"fulfilledAt": "2020-01-01T00:00:00.000Z",
"collectionDate": "2020-01-01",
"dueDate": "2020-01-01",
"returnStrategy": "abc123",
"currentEligibilityStatus": CurrentEligibilityStatusOutput
}
]
}
}digitalMeterRequestEligibility
Type:DigitalMeterRequestEligibility
URL:https://api.redenergy-kraken.energy/v1/graphql/
Compute if the meter point is eligible for digital meter request.
Arguments
| Name | Description |
|---|---|
|
Query
query DigitalMeterRequestEligibility($nmi: String!) {
digitalMeterRequestEligibility(nmi: $nmi) {
nmi
isEligible
reason
}
}Variables
{
"nmi": "abc123"
}Response
{
"data": {
"digitalMeterRequestEligibility": {
"nmi": "abc123",
"isEligible": true,
"reason": "abc123"
}
}
}domesticAccountReferralRewardScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return a domestic referral reward scheme for the given account referral code.
Arguments
| Name | Description |
|---|---|
| Friend referral code. |
Query
query DomesticAccountReferralRewardScheme($code: String!) {
domesticAccountReferralRewardScheme(code: $code) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Variables
{
"code": "abc123"
}Response
{
"data": {
"domesticAccountReferralRewardScheme": {
"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
}
}
}domesticJoiningRewardScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return a joining reward scheme with the given code, if it's active. A joining reward can be a signup reward or a promotional reward.
Arguments
| Name | Description |
|---|---|
| Reward code for the scheme. |
Query
query DomesticJoiningRewardScheme($code: String!) {
domesticJoiningRewardScheme(code: $code) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Variables
{
"code": "abc123"
}Response
{
"data": {
"domesticJoiningRewardScheme": {
"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
}
}
}domesticSignupRewardScheme
Type:ReferralSchemeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return a signup referral reward scheme with the given code, if it's active.
Arguments
| Name | Description |
|---|---|
| Reward code for the scheme. |
Query
query DomesticSignupRewardScheme($code: String!) {
domesticSignupRewardScheme(code: $code) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
maxRecurrence
isUsageAtCapacity
}
}Variables
{
"code": "abc123"
}Response
{
"data": {
"domesticSignupRewardScheme": {
"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
}
}
}electricityCostEstimate
Type:Estimate
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get electricity estimate.
Arguments
| Name | Description |
|---|---|
| Parameters needed in order generate a personalised estimate. |
Query
query ElectricityCostEstimate($input: ElectricityEstimateInput) {
electricityCostEstimate(input: $input) {
costEstimation {
...CostEstimationFragment
}
usageSummary {
...UsageSummaryTypeFragment
}
error {
... on ProductDoesNotExist {
...ProductDoesNotExistFragment
}
... on UnableToEstimate {
...UnableToEstimateFragment
}
}
}
}Variables
{
"input": ElectricityEstimateInput
}Response
{
"data": {
"electricityCostEstimate": {
"costEstimation": CostEstimation,
"usageSummary": UsageSummaryType,
"error": ProductDoesNotExist
}
}
}electricityMeterReadings
Type:ElectricityMeterReadingConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Fetch electricity meter readings for a given account and meter. Optionally include readings that have been quarantined (these are excluded by default)
Each reading here is actually a group of all the readings which happened at the same date and time on that meter.
The reason for this is that end users typically don't care about registers, and simply want to view all their meter readings in chronological order.
This field is a connection type. Connections are used to implement cursor based pagination.
This field requires the Authorization header to be set.
Arguments
| Name | Description |
|---|---|
| |
| |
| |
| Start time/date for the date range to filter readings. |
| End time/date for the date range to filter readings. |
| |
| |
| |
|
Query
query ElectricityMeterReadings(
$accountNumber: String,
$meterId: String!,
$includeQuarantined: Boolean,
$startAt: String,
$endAt: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
electricityMeterReadings(
accountNumber: $accountNumber,
meterId: $meterId,
includeQuarantined: $includeQuarantined,
startAt: $startAt,
endAt: $endAt,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ElectricityMeterReadingConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"meterId": "abc123",
"includeQuarantined": true,
"startAt": "abc123",
"endAt": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"electricityMeterReadings": {
"pageInfo": PageInfo,
"edges": ElectricityMeterReadingConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}electricityMoveInDates
Type:ElectricityMoveInDatesType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available move in dates for a electricity house move.
Arguments
| Name | Description |
|---|---|
Query
query ElectricityMoveInDates($input: ElectricityMoveInDatesSearchInput!) {
electricityMoveInDates(input: $input) {
moveInDates
error {
... on DoesNotExistErrorType {
...DoesNotExistErrorTypeFragment
}
}
}
}Variables
{
"input": ElectricityMoveInDatesSearchInput
}Response
{
"data": {
"electricityMoveInDates": {
"moveInDates": ["2020-01-01"],
"error": DoesNotExistErrorType
}
}
}eligibilityToJoinLoyaltyPointsProgram
Type:LoyaltyPointsProgramEligibilityType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if an account is eligible to join the loyalty points program.
The possible errors that can be raised are:
- KT-CT-9202: Loyalty Points adapter not configured.
- KT-CT-9218: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
Query
query EligibilityToJoinLoyaltyPointsProgram($input: LoyaltyPointsProgramEligibilityInput!) {
eligibilityToJoinLoyaltyPointsProgram(input: $input) {
isEligible
primaryIneligibilityReason
}
}Variables
{
"input": LoyaltyPointsProgramEligibilityInput
}Response
{
"data": {
"eligibilityToJoinLoyaltyPointsProgram": {
"isEligible": true,
"primaryIneligibilityReason": "abc123"
}
}
}embeddedNetwork
Type:EmbeddedNetworkType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about an embedded network.
Arguments
| Name | Description |
|---|---|
|
Query
query EmbeddedNetwork($id: ID!) {
embeddedNetwork(id: $id) {
id
name
embeddedProperties {
...EmbeddedPropertyTypeFragment
}
}
}Variables
{
"id": "abc123"
}Response
{
"data": {
"embeddedNetwork": {
"id": "abc123",
"name": "abc123",
"embeddedProperties": [EmbeddedPropertyType]
}
}
}energyMixData
Type:EnergyMixDataType
URL:https://api.redenergy-kraken.energy/v1/graphql/
The current energy generation mix.
Deprecated
The 'energyMixData' field is deprecated.
This is no longer being used.
- Marked as deprecated on 2026-05-05.
- Scheduled for removal on or after 2026-06-01.
Query
query EnergyMixData {
energyMixData {
carbonIntensityIndex
}
}Response
{
"data": {
"energyMixData": {
"carbonIntensityIndex": "abc123"
}
}
}estimateMeterReadings
Type:MeterReadingEstimationReadingConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Estimated meter readings.
Arguments
| Name | Description |
|---|---|
| The start of the period estimated. |
| The end of the period estimated. |
| This is the unique identifier used by the market to identify the supply point. |
| The meter id to perform estimation on. |
| The meter's register identifier. |
| |
| |
| |
|
Query
query EstimateMeterReadings(
$periodStart: DateTime!,
$periodEnd: DateTime!,
$marketIdentifier: ID!,
$deviceId: ID,
$registerId: ID,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
estimateMeterReadings(
periodStart: $periodStart,
periodEnd: $periodEnd,
marketIdentifier: $marketIdentifier,
deviceId: $deviceId,
registerId: $registerId,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...MeterReadingEstimationReadingEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"periodStart": "2020-01-01T00:00:00.000Z",
"periodEnd": "2020-01-01T00:00:00.000Z",
"marketIdentifier": "abc123",
"deviceId": "abc123",
"registerId": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"estimateMeterReadings": {
"pageInfo": PageInfo,
"edges": MeterReadingEstimationReadingEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}exportRepaymentDetails
Type:ExportRepaymentDetailsType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the export repayment details for a given account.
The possible errors that can be raised are:
- KT-CT-3823: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query ExportRepaymentDetails($accountNumber: String!) {
exportRepaymentDetails(accountNumber: $accountNumber) {
accountNumber
isConfigured
nextRepaymentDate
lastRepaymentDate
paymentMethod
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"exportRepaymentDetails": {
"accountNumber": "abc123",
"isConfigured": true,
"nextRepaymentDate": "2020-01-01",
"lastRepaymentDate": "2020-01-01",
"paymentMethod": "abc123"
}
}
}externalAccountEvents
Type:ExternalAccountEventConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a list of audit account events, of type external, for a given account.
Arguments
| Name | Description |
|---|---|
| Account number to filter by. |
| |
| |
| |
|
Query
query ExternalAccountEvents(
$accountNumber: String!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
externalAccountEvents(
accountNumber: $accountNumber,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ExternalAccountEventConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"externalAccountEvents": {
"pageInfo": PageInfo,
"edges": ExternalAccountEventConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}flatOrUnitTypes
Type:[EnumMappingType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available flat/unit type codes with labels.
Query
query FlatOrUnitTypes {
flatOrUnitTypes {
abbreviation
fullString
}
}Response
{
"data": {
"flatOrUnitTypes": [
{
"abbreviation": "abc123",
"fullString": "abc123"
}
]
}
}floorOrLevelTypes
Type:[EnumMappingType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available floor/level type codes with labels.
Query
query FloorOrLevelTypes {
floorOrLevelTypes {
abbreviation
fullString
}
}Response
{
"data": {
"floorOrLevelTypes": [
{
"abbreviation": "abc123",
"fullString": "abc123"
}
]
}
}fraudMeterPointChecks
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if a given meter point ID is in suspicious meter point IDs list.
Arguments
| Name | Description |
|---|---|
| The meter point ID. |
Query
query FraudMeterPointChecks($meterPointId: String!) {
fraudMeterPointChecks(meterPointId: $meterPointId) {
meterPointId
isInSuspiciousList
}
}Variables
{
"meterPointId": "abc123"
}Response
{
"data": {
"fraudMeterPointChecks": {
"meterPointId": "abc123",
"isInSuspiciousList": true
}
}
}fraudRiskLevel
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if a given ID and type have a financial risk level.
Arguments
| Name | Description |
|---|---|
| The ID to be checked. |
| The type of object the ID represents. |
Query
query FraudRiskLevel(
$identifierValue: String!,
$identifierType: String!
) {
fraudRiskLevel(
identifierValue: $identifierValue,
identifierType: $identifierType
) {
identifierValue
identifierType
riskLevel
isInRiskList
}
}Variables
{
"identifierValue": "abc123",
"identifierType": "abc123"
}Response
{
"data": {
"fraudRiskLevel": {
"identifierValue": "abc123",
"identifierType": "abc123",
"riskLevel": "1.0",
"isInRiskList": true
}
}
}gasMoveInDates
Type:GasMoveInDatesType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available move in dates for a gas house move.
Arguments
| Name | Description |
|---|---|
|
Query
query GasMoveInDates($input: GasMoveInDatesSearchInput!) {
gasMoveInDates(input: $input) {
moveInDates
error {
... on DoesNotExistErrorType {
...DoesNotExistErrorTypeFragment
}
}
}
}Variables
{
"input": GasMoveInDatesSearchInput
}Response
{
"data": {
"gasMoveInDates": {
"moveInDates": ["2020-01-01"],
"error": DoesNotExistErrorType
}
}
}getNextPaymentScheduleAvailableDate
Type:Date!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Query the minimum start date for a new payment schedule.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-4177: Unauthorized.
- KT-AU-3921: The specified account ledger wasn't found.
- KT-AU-3922: The specified schedule type name wasn't found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| |
| The schedule type which determines the payment frequency. The type name provided should be one of the following: 'Smoothpay (weekly)' 'Smoothpay (monthly)' 'Fixed (weekly)' 'Fixed (monthly)' 'Variable' |
| The id of the ledger. |
| The number of the ledger. |
Query
query GetNextPaymentScheduleAvailableDate(
$accountNumber: String!,
$scheduleTypeName: String!,
$ledgerId: Int,
$ledgerNumber: String
) {
getNextPaymentScheduleAvailableDate(
accountNumber: $accountNumber,
scheduleTypeName: $scheduleTypeName,
ledgerId: $ledgerId,
ledgerNumber: $ledgerNumber
)
}Variables
{
"accountNumber": "abc123",
"scheduleTypeName": "abc123",
"ledgerId": 1,
"ledgerNumber": "abc123"
}Response
{
"data": {
"getNextPaymentScheduleAvailableDate": "2020-01-01"
}
}getOnSiteJobsCheckResults
Type:OnSiteJobsCheckResultsType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get check results for creating requests and appointments.
Arguments
| Name | Description |
|---|---|
| Supply point identifier to market name mapping. If this is provided, |
| List of internal IDs of supply points. If this is provided, |
| Job type for appointment checks. |
Query
query GetOnSiteJobsCheckResults(
$supplyPointIdentifierToMarketNameMapping: [SupplyPointIdentifierToMarketNameMappingInput],
$supplyPointInternalIds: [Int],
$jobType: String
) {
getOnSiteJobsCheckResults(
supplyPointIdentifierToMarketNameMapping: $supplyPointIdentifierToMarketNameMapping,
supplyPointInternalIds: $supplyPointInternalIds,
jobType: $jobType
) {
requestCheckResults {
...CheckResultTypeFragment
}
canCreateRequest
hasRequestWarnings
}
}Variables
{
"supplyPointIdentifierToMarketNameMapping": SupplyPointIdentifierToMarketNameMappingInput,
"supplyPointInternalIds": [1],
"jobType": "abc123"
}Response
{
"data": {
"getOnSiteJobsCheckResults": {
"requestCheckResults": [CheckResultType],
"canCreateRequest": true,
"hasRequestWarnings": true
}
}
}getOnSiteJobsRequestById
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a specific request by ID.
Arguments
| Name | Description |
|---|---|
| The ID of the request to return. |
Query
query GetOnSiteJobsRequestById($requestId: UUID) {
getOnSiteJobsRequestById(requestId: $requestId) {
id
reason
subReason
isEmergency
externalReference
agent
comment
account
marketSupplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
property {
...PropertyTypeFragment
}
status
overallActionsStatus
requestActions {
...OnSiteJobsRequestActionConnectionTypeConnectionFragment
}
assets {
...OnSiteJobsAssetConnectionTypeConnectionFragment
}
createdBy
}
}Variables
{
"requestId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}Response
{
"data": {
"getOnSiteJobsRequestById": {
"id": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"reason": "abc123",
"subReason": "abc123",
"isEmergency": true,
"externalReference": "abc123",
"agent": "abc123",
"comment": "abc123",
"account": "abc123",
"marketSupplyPoints": SupplyPointConnectionTypeConnection,
"property": PropertyType,
"status": "CANCELLED",
"overallActionsStatus": "SKIPPED",
"requestActions": OnSiteJobsRequestActionConnectionTypeConnection,
"assets": OnSiteJobsAssetConnectionTypeConnection,
"createdBy": 1
}
}
}getOnSiteJobsRequests
Type:OnSiteJobsRequestConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Filter On-Site Jobs Requests.
Arguments
| Name | Description |
|---|---|
| A list of supply point identifiers to filter requests by. If this is provided, |
| List of internal IDs of supply points to filter requests by. If this is provided, |
| A list of statuses to filter requests by. |
| A list of account numbers to filter requests by. |
| |
| |
| |
|
Query
query GetOnSiteJobsRequests(
$supplyPointsToMarketNamesMapping: [SupplyPointIdentifierToMarketNameMappingInput],
$supplyPointInternalIds: [Int],
$statuses: [OnSiteJobsRequestStatus],
$accountNumbers: [NonEmptyString!],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
getOnSiteJobsRequests(
supplyPointsToMarketNamesMapping: $supplyPointsToMarketNamesMapping,
supplyPointInternalIds: $supplyPointInternalIds,
statuses: $statuses,
accountNumbers: $accountNumbers,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...OnSiteJobsRequestConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"supplyPointsToMarketNamesMapping": SupplyPointIdentifierToMarketNameMappingInput,
"supplyPointInternalIds": [1],
"statuses": "CANCELLED",
"accountNumbers": [NonEmptyString],
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"getOnSiteJobsRequests": {
"pageInfo": PageInfo,
"edges": OnSiteJobsRequestConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}getSurchargeAmount
Type:Int!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the surcharge amount for the given account and card type (in cents).
The possible errors that can be raised are:
- KT-AU-3911: Query not supported for the current vendor.
- KT-CT-4177: Unauthorized.
- KT-CT-3820: Received both ledger ID and number.
- KT-AU-3910: No card instruction found for the account.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| |
| |
| The id of the ledger. |
| The number of the ledger. |
| |
|
Query
query GetSurchargeAmount(
$accountNumber: String!,
$amount: Int!,
$ledgerId: Int,
$ledgerNumber: String,
$cardScheme: CardSchemeEnumType,
$cardType: CardEnumType
) {
getSurchargeAmount(
accountNumber: $accountNumber,
amount: $amount,
ledgerId: $ledgerId,
ledgerNumber: $ledgerNumber,
cardScheme: $cardScheme,
cardType: $cardType
)
}Variables
{
"accountNumber": "abc123",
"amount": 1,
"ledgerId": 1,
"ledgerNumber": "abc123",
"cardScheme": "MASTERCARD",
"cardType": "CREDIT"
}Response
{
"data": {
"getSurchargeAmount": 1
}
}getUsersForAccount
Type:[AccountUserType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve the account users associated with the given account number.
This field requires the Authorization header to be set.
The possible errors that can be raised are:
- KT-CT-4178: No account found with given account number.
- KT-CT-1113: Disabled GraphQL field requested.
Deprecated
The 'getUsersForAccount' field is deprecated.
Use `getUsersForAccounts` instead which gets list of account numbers.
- Marked as deprecated on 2024-01-10.
- Scheduled for removal on or after 2025-01-10.
Arguments
| Name | Description |
|---|---|
| The account number for querying related users. |
Query
query GetUsersForAccount($accountNumber: String!) {
getUsersForAccount(accountNumber: $accountNumber) {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"getUsersForAccount": [
{
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
]
}
}getUsersForAccounts
Type:[AccountUserType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve the account users associated with the given list of account numbers.
This field requires the Authorization header to be set.
The possible errors that can be raised are:
- KT-AU-5413: The number of accounts provided exceeds the maximum allowed.
- KT-AU-5412: No account found with given list of account numbers.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| List of account numbers for querying related users. |
Query
query GetUsersForAccounts($accountNumbers: [String]!) {
getUsersForAccounts(accountNumbers: $accountNumbers) {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Variables
{
"accountNumbers": "abc123"
}Response
{
"data": {
"getUsersForAccounts": [
{
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
]
}
}goodsProducts
Type:GoodsProductConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
List Goods products given a market.
Arguments
| Name | Description |
|---|---|
| Market name of the products to list. |
| Types of the products to filter by. |
| Code of the products to filter by. |
| |
| |
| |
|
Query
query GoodsProducts(
$marketName: String!,
$productType: [String],
$code: [String],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
goodsProducts(
marketName: $marketName,
productType: $productType,
code: $code,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...GoodsProductConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"marketName": "abc123",
"productType": ["abc123"],
"code": ["abc123"],
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"goodsProducts": {
"pageInfo": PageInfo,
"edges": GoodsProductConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}goodsPurchases
Type:[GoodsPurchase]
URL:https://api.redenergy-kraken.energy/v1/graphql/
List purchases for an account.
Arguments
| Name | Description |
|---|---|
| The account number. |
Query
query GoodsPurchases($accountNumber: String!) {
goodsPurchases(accountNumber: $accountNumber) {
code
ledgerId
ledgerNumber
goodsSaleItems {
...GoodsSaleItemFragment
}
goodsGrants {
...GoodsGrantFragment
}
marketName
marketParams
clientParams
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"goodsPurchases": [
{
"code": "abc123",
"ledgerId": "abc123",
"ledgerNumber": "abc123",
"goodsSaleItems": [GoodsSaleItem],
"goodsGrants": [GoodsGrant],
"marketName": "abc123",
"marketParams": {"key": "value"},
"clientParams": {"key": "value"}
}
]
}
}goodsQuotes
Type:[GoodsQuote]
URL:https://api.redenergy-kraken.energy/v1/graphql/
List quotes given an account number or retrieve a Goods quote given a quote code.
The possible errors that can be raised are:
- KT-CT-8204: Invalid arguments.
- KT-CT-8223: Unauthorized.
- KT-CT-8201: Received an invalid quoteId.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The account number. |
| The quote code. |
Query
query GoodsQuotes(
$accountNumber: String,
$quoteCode: String
) {
goodsQuotes(
accountNumber: $accountNumber,
quoteCode: $quoteCode
) {
id
code
totalNetAmount
quotedAt
goodsQuotedProducts {
...GoodsQuotedProductFragment
}
hasQuoteExpired
}
}Variables
{
"accountNumber": "abc123",
"quoteCode": "abc123"
}Response
{
"data": {
"goodsQuotes": [
{
"id": "abc123",
"code": "abc123",
"totalNetAmount": 1,
"quotedAt": "2020-01-01T00:00:00.000Z",
"goodsQuotedProducts": [GoodsQuotedProduct],
"hasQuoteExpired": true
}
]
}
}houseMoveOutWorkflows
Type:WorkflowTypeConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve workflow details associated with a house move out.
Arguments
| Name | Description |
|---|---|
| |
| |
| |
| |
|
Query
query HouseMoveOutWorkflows(
$input: WorkflowFilterInput,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
houseMoveOutWorkflows(
input: $input,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...WorkflowTypeConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": WorkflowFilterInput,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"houseMoveOutWorkflows": {
"pageInfo": PageInfo,
"edges": WorkflowTypeConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}inboundCallAverageWaitTime
Type:InboundCallAverageWaitTimeType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the average wait time for an inbound call.
Query
query InboundCallAverageWaitTime {
inboundCallAverageWaitTime {
yesterday
recent
}
}Response
{
"data": {
"inboundCallAverageWaitTime": {
"yesterday": 1,
"recent": 1
}
}
}inkCommsTemplate
Type:String!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Fetch the content of a given comms template name.
The possible errors that can be raised are:
- KT-CT-7648: The comms template was not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the comms template. |
Query
query InkCommsTemplate($templateIdentifier: String!) {
inkCommsTemplate(templateIdentifier: $templateIdentifier)
}Variables
{
"templateIdentifier": "abc123"
}Response
{
"data": {
"inkCommsTemplate": "abc123"
}
}inkConversation
Type:InkConversation!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the Ink conversation for a given account.
The possible errors that can be raised are:
- KT-CT-7612: The Ink conversation was not found.
- KT-CT-4177: Unauthorized.
- KT-CT-7610: No Ink conversation for account.
- KT-CT-7617: Must supply account number or relay id to get a conversation.
- KT-CT-7638: Invalid conversation ID.
- KT-CT-7658: Unauthorized to access this conversation.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The account number. |
| The conversation's relay id. |
Query
query InkConversation(
$accountNumber: String,
$conversationRelayId: String
) {
inkConversation(
accountNumber: $accountNumber,
conversationRelayId: $conversationRelayId
) {
id
status
contactChannelIdentities {
...InkContactChannelIdentitiesFragment
}
accountUsers {
...AccountUserTypeFragment
}
accountNumber
events {
...InkConversationEventsConnectionFragment
}
buckets {
...InkBucketFragment
}
tags {
...InkTagFragment
}
lastMessageAt
}
}Variables
{
"accountNumber": "abc123",
"conversationRelayId": "abc123"
}Response
{
"data": {
"inkConversation": {
"id": "abc123",
"status": "OPEN",
"contactChannelIdentities": InkContactChannelIdentities,
"accountUsers": [AccountUserType],
"accountNumber": "abc123",
"events": InkConversationEventsConnection,
"buckets": [InkBucket],
"tags": [InkTag],
"lastMessageAt": "2020-01-01T00:00:00.000Z"
}
}
}inkLiveChatConversations
Type:InkConversationsConnection!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Returns a list of paginated conversations associated with the user.
Arguments
| Name | Description |
|---|---|
| Filter by conversation's status. |
| |
| |
| |
|
Query
query InkLiveChatConversations(
$status: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
inkLiveChatConversations(
status: $status,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...InkConversationsEdgeFragment
}
}
}Variables
{
"status": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"inkLiveChatConversations": {
"pageInfo": PageInfo,
"edges": InkConversationsEdge
}
}
}inkMessage
Type:InkMessage!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the content for a given message.
The possible errors that can be raised are:
- KT-CT-7611: The message was not found.
- KT-CT-7638: Invalid conversation ID.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The message's relay id. |
Query
query InkMessage($messageRelayId: String!) {
inkMessage(messageRelayId: $messageRelayId) {
... on InkEmail {
...InkEmailFragment
}
... on InkSMS {
...InkSMSFragment
}
... on InkLine {
...InkLineFragment
}
... on InkWhatsApp {
...InkWhatsAppFragment
}
... on InkTwilioWhatsApp {
...InkTwilioWhatsAppFragment
}
... on InkPost {
...InkPostFragment
}
... on InkGenericMessage {
...InkGenericMessageFragment
}
... on InkLiveChatMessage {
...InkLiveChatMessageFragment
}
}
}Variables
{
"messageRelayId": "abc123"
}Response
{
"data": {
"inkMessage": InkEmail
}
}inkMessageAttributes
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get attributes of a message at time of query.
The possible errors that can be raised are:
- KT-CT-7611: The message was not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The message's vendor. |
| The message's vendor id. |
Query
query InkMessageAttributes(
$vendor: String!,
$vendorId: String!
) {
inkMessageAttributes(
vendor: $vendor,
vendorId: $vendorId
) {
accounts
accountType
buckets
conversationId
hourOccurredAt
hoursWaiting
isAssignedToUserBucket
isFirstFromContact
isNewThread
opsTeam
recentlyReceivedAutoReplies
replyToCommsSms
weekDayOccurredAt
}
}Variables
{
"vendor": "abc123",
"vendorId": "abc123"
}Response
{
"data": {
"inkMessageAttributes": {
"accounts": "abc123",
"accountType": "abc123",
"buckets": ["abc123"],
"conversationId": 1,
"hourOccurredAt": 1,
"hoursWaiting": 1,
"isAssignedToUserBucket": true,
"isFirstFromContact": true,
"isNewThread": true,
"opsTeam": "abc123",
"recentlyReceivedAutoReplies": "abc123",
"replyToCommsSms": "abc123",
"weekDayOccurredAt": 1
}
}
}inkMessageTextContent
Type:String!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Fetch the text content of a given message.
The possible errors that can be raised are:
- KT-CT-7611: The message was not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The message's id or relay id. |
Query
query InkMessageTextContent($messageId: ID!) {
inkMessageTextContent(messageId: $messageId)
}Variables
{
"messageId": "abc123"
}Response
{
"data": {
"inkMessageTextContent": "abc123"
}
}internalCompanies
Type:InternalCompanyConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all internal companies.
Query
query InternalCompanies(
$before: String,
$after: String,
$first: Int,
$last: Int
) {
internalCompanies(
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...InternalCompanyConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"internalCompanies": {
"pageInfo": PageInfo,
"edges": InternalCompanyConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}internalCompany
Type:InternalCompanyType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get an internal company by a set of criteria. Criteria will be added as needed, check documentation for the criteria object to see what is currently supported.
The possible errors that can be raised are:
- KT-CT-14401: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Criteria to identify the internal company. |
Query
query InternalCompany($criteria: SearchCriteriaInput!) {
internalCompany(criteria: $criteria) {
id
displayableNumber
name
primaryRegistrationNumber
secondaryRegistrationNumber
primaryTaxIdentifierNumber
legalAddress {
...RichAddressTypeFragment
}
}
}Variables
{
"criteria": SearchCriteriaInput
}Response
{
"data": {
"internalCompany": {
"id": "abc123",
"displayableNumber": "abc123",
"name": "abc123",
"primaryRegistrationNumber": "abc123",
"secondaryRegistrationNumber": "abc123",
"primaryTaxIdentifierNumber": "abc123",
"legalAddress": RichAddressType
}
}
}isCustomerEligibleToGiveFeedbackFollowingCall
Type:Boolean
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if customer is eligible to give feedback following a phone call.
The possible errors that can be raised are:
- KT-CT-5519: Voice call not found.
- KT-CT-5521: Eligibility configuration not found.
- KT-CT-5522: Invalid eligibility configuration.
- KT-CT-5523: Invalid account or account user.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Number of the account. |
| Number of the account user. |
| ID of the voice call. |
Query
query IsCustomerEligibleToGiveFeedbackFollowingCall(
$accountNumber: String!,
$accountUserNumber: String!,
$callId: Int!
) {
isCustomerEligibleToGiveFeedbackFollowingCall(
accountNumber: $accountNumber,
accountUserNumber: $accountUserNumber,
callId: $callId
)
}Variables
{
"accountNumber": "abc123",
"accountUserNumber": "abc123",
"callId": 1
}Response
{
"data": {
"isCustomerEligibleToGiveFeedbackFollowingCall": true
}
}isCustomerEligibleToGiveFeedbackFollowingEmail
Type:Boolean
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if customer is eligible to give feedback following an email conversation.
The possible errors that can be raised are:
- KT-CT-5520: Ink conversation not found.
- KT-CT-5521: Eligibility configuration not found.
- KT-CT-5522: Invalid eligibility configuration.
- KT-CT-5523: Invalid account or account user.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Number of the account. |
| Number of the account user. |
| ID of the Ink conversation. |
| Datetime when the conversation was closed. |
Query
query IsCustomerEligibleToGiveFeedbackFollowingEmail(
$accountNumber: String!,
$accountUserNumber: String!,
$inkConversationId: Int!,
$conversationClosedAt: DateTime!
) {
isCustomerEligibleToGiveFeedbackFollowingEmail(
accountNumber: $accountNumber,
accountUserNumber: $accountUserNumber,
inkConversationId: $inkConversationId,
conversationClosedAt: $conversationClosedAt
)
}Variables
{
"accountNumber": "abc123",
"accountUserNumber": "abc123",
"inkConversationId": 1,
"conversationClosedAt": "2020-01-01T00:00:00.000Z"
}Response
{
"data": {
"isCustomerEligibleToGiveFeedbackFollowingEmail": true
}
}isPasswordResetTokenValid
Type:Boolean
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check validity of a password reset token.
Arguments
| Name | Description |
|---|---|
| Base64 encoded user id. |
| Password reset token to check. |
Query
query IsPasswordResetTokenValid(
$userId: String!,
$token: String!
) {
isPasswordResetTokenValid(
userId: $userId,
token: $token
)
}Variables
{
"userId": "abc123",
"token": "abc123"
}Response
{
"data": {
"isPasswordResetTokenValid": true
}
}joinSupplierProcess
URL:https://api.redenergy-kraken.energy/v1/graphql/
The possible errors that can be raised are:
- KT-CT-10332: Join supplier process not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The join supplier process number, e.g. JS-12345678. |
Query
query JoinSupplierProcess($number: String!) {
joinSupplierProcess(number: $number) {
id
status
supplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
number
subtype
contractIdentifiers
currentProcessData {
...JoinSupplierProcessDataTypeFragment
}
ledgerAssignments {
...JoinSupplierLedgerAssignmentConnectionTypeConnectionFragment
}
stage
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"joinSupplierProcess": {
"id": "abc123",
"status": "PENDING",
"supplyPoints": SupplyPointConnectionTypeConnection,
"number": "abc123",
"subtype": "abc123",
"contractIdentifiers": ["abc123"],
"currentProcessData": JoinSupplierProcessDataType,
"ledgerAssignments": JoinSupplierLedgerAssignmentConnectionTypeConnection,
"stage": "abc123"
}
}
}krakenVersion
Type:KrakenVersionType
URL:https://api.redenergy-kraken.energy/v1/graphql/
The current version of kraken.
Query
query KrakenVersion {
krakenVersion {
number
SHA
isPinned
}
}Response
{
"data": {
"krakenVersion": {
"number": "abc123",
"SHA": "abc123",
"isPinned": true
}
}
}leadBlocklistValidations
Type:LeadBlockListValidationOutput
URL:https://api.redenergy-kraken.energy/v1/graphql/
Run a blocklist validation out of some dynamic client entry types.
Arguments
| Name | Description |
|---|---|
| List of client-configured black list entry types. |
Query
query LeadBlocklistValidations($blockListEntries: LeadBlockListValidationInput) {
leadBlocklistValidations(blockListEntries: $blockListEntries) {
valid
blockListHits
}
}Variables
{
"blockListEntries": LeadBlockListValidationInput
}Response
{
"data": {
"leadBlocklistValidations": {
"valid": true,
"blockListHits": ["abc123"]
}
}
}leadByNumber
Type:LeadOutput
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get lead details by number.
The possible errors that can be raised are:
- KT-CT-8907: Lead not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Lead number. |
Query
query LeadByNumber($number: String) {
leadByNumber(number: $number) {
leadId
accountNumber
givenName
familyName
billingName
billingAddress {
...AddressOutputFragment
}
billingRichAddress {
...RichAddressTypeFragment
}
email
phoneNumber
number
funnel {
...SalesFunnelFragment
}
stage
extraDetails
extraDetailItems {
...ExtraDetailFragment
}
brand
salesChannel
assignedToTeam
assignedToUser
assignedToUserIdentifier
assignedToTeamIdentifier
nationalId
leadType
consents {
...ConsentOutputFragment
}
assignedToAffiliateNumber
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"leadByNumber": {
"leadId": "abc123",
"accountNumber": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"billingName": "abc123",
"billingAddress": AddressOutput,
"billingRichAddress": RichAddressType,
"email": "abc123",
"phoneNumber": "abc123",
"number": "abc123",
"funnel": SalesFunnel,
"stage": "abc123",
"extraDetails": {"key": "value"},
"extraDetailItems": [ExtraDetail],
"brand": "abc123",
"salesChannel": "abc123",
"assignedToTeam": "abc123",
"assignedToUser": "abc123",
"assignedToUserIdentifier": "abc123",
"assignedToTeamIdentifier": "abc123",
"nationalId": "abc123",
"leadType": "abc123",
"consents": [ConsentOutput],
"assignedToAffiliateNumber": "abc123"
}
}
}leads
Type:LeadsConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Fetch all leads for this Kraken, with optional filtering.
Arguments
| Name | Description |
|---|---|
| Input fields for retrieving leads. |
| |
| |
| |
| |
|
Query
query Leads(
$input: LeadsQueryInput,
$offset: Int,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
leads(
input: $input,
offset: $offset,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...LeadsEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": LeadsQueryInput,
"offset": 1,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}leaveSupplierProcess
URL:https://api.redenergy-kraken.energy/v1/graphql/
Details associated with a LeaveSupplier process.
The possible errors that can be raised are:
- KT-CT-10302: Invalid data.
- KT-CT-10333: Missing either number of leave supplier process id.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The leave supplier process number, e.g. LS-12345678. |
| The leave supplier process ID. |
Query
query LeaveSupplierProcess(
$number: String,
$leaveSupplierProcessId: ID
) {
leaveSupplierProcess(
number: $number,
leaveSupplierProcessId: $leaveSupplierProcessId
) {
id
status
number
supplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
subtype
stage
}
}Variables
{
"number": "abc123",
"leaveSupplierProcessId": "abc123"
}Response
{
"data": {
"leaveSupplierProcess": {
"id": "abc123",
"status": "PENDING",
"number": "abc123",
"supplyPoints": SupplyPointConnectionTypeConnection,
"subtype": "abc123",
"stage": "abc123"
}
}
}legacyOrderDetails
URL:https://api.redenergy-kraken.energy/v1/graphql/
The possible errors that can be raised are:
- KT-CT-13101: Order not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Order identifier. |
Query
query LegacyOrderDetails($identifier: String!) {
legacyOrderDetails(identifier: $identifier) {
order {
...LegacyOrderTypeFragment
}
status
resources {
...LegacyOrderResourceFragment
}
}
}Variables
{
"identifier": "abc123"
}Response
{
"data": {
"legacyOrderDetails": {
"order": LegacyOrderType,
"status": "PENDING",
"resources": [LegacyOrderResource]
}
}
}lifecycleProcesses
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all lifecycle processes associated with an account.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| A flag to filter out only active/current processes. |
| The chronological order in which the lifecycle processes are sorted. |
| The account number, e.g. A-12345678. |
Query
query LifecycleProcesses(
$onlyActive: Boolean,
$sortOrder: LifecycleProcessesSortOrder,
$accountNumber: String!
) {
lifecycleProcesses(
onlyActive: $onlyActive,
sortOrder: $sortOrder,
accountNumber: $accountNumber
) {
leaveSupplierProcesses {
...LeaveSupplierProcessConnectionTypeConnectionFragment
}
joinSupplierProcesses {
...JoinSupplierProcessConnectionTypeConnectionFragment
}
occupyPropertyProcesses {
...OccupyPropertyProcessConnectionTypeConnectionFragment
}
leavePropertyProcesses {
...LeavePropertyProcessConnectionTypeConnectionFragment
}
}
}Variables
{
"onlyActive": true,
"sortOrder": "ASC",
"accountNumber": "abc123"
}Response
{
"data": {
"lifecycleProcesses": {
"leaveSupplierProcesses": LeaveSupplierProcessConnectionTypeConnection,
"joinSupplierProcesses": JoinSupplierProcessConnectionTypeConnection,
"occupyPropertyProcesses": OccupyPropertyProcessConnectionTypeConnection,
"leavePropertyProcesses": LeavePropertyProcessConnectionTypeConnection
}
}
}livePaymentAdequacyCalculation
Type:LivePaymentAdequacyCalculation
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get payment adequacy data with an up to date calculation.
The possible errors that can be raised are:
- KT-CT-3963: Could not calculate live PA data.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Kraken ledger number. |
Query
query LivePaymentAdequacyCalculation($ledgerNumber: String!) {
livePaymentAdequacyCalculation(ledgerNumber: $ledgerNumber) {
suggestedNewMonthlyAmount
consumption {
...ConsumptionBreakdownConnectionTypeConnectionFragment
}
averageMonthlyCharge
existingMonthlyAmount
balanceAdjustment
currentBalance
targetBalance
reviewedOn
}
}Variables
{
"ledgerNumber": "abc123"
}Response
{
"data": {
"livePaymentAdequacyCalculation": {
"suggestedNewMonthlyAmount": 1,
"consumption": ConsumptionBreakdownConnectionTypeConnection,
"averageMonthlyCharge": 1,
"existingMonthlyAmount": 1,
"balanceAdjustment": 1,
"currentBalance": 1,
"targetBalance": 1,
"reviewedOn": "2020-01-01"
}
}
}loyaltyCards
Type:[LoyaltyCardType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all loyalty cards for the given account user.
The possible errors that can be raised are:
- KT-CT-5412: No account user exists with the given id.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Account user id. |
Query
query LoyaltyCards($accountUserId: String!) {
loyaltyCards(accountUserId: $accountUserId) {
id
scheme
number
status
}
}Variables
{
"accountUserId": "abc123"
}Response
{
"data": {
"loyaltyCards": [
{
"id": "abc123",
"scheme": "abc123",
"number": "abc123",
"status": "abc123"
}
]
}
}loyaltyPointLedgerEntry
Type:LoyaltyPointLedgerEntryType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Resolve a loyalty point ledger entry.
The possible errors that can be raised are:
- KT-CT-9215: Loyalty points balance query disabled.
- KT-CT-9223: Loyalty points ledger entry not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query LoyaltyPointLedgerEntry($input: LoyaltyPointLedgerEntryInput!) {
loyaltyPointLedgerEntry(input: $input) {
id
ledgerType
value
balanceBroughtForward
balanceCarriedForward
reasonCode
idempotencyKey
postedAt
accountNumber
}
}Variables
{
"input": LoyaltyPointLedgerEntryInput
}Response
{
"data": {
"loyaltyPointLedgerEntry": {
"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"
}
}
}loyaltyPointLedgers
Type:[LoyaltyPointLedgerEntryType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the Loyalty Point ledger entries for the passed user.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The input object for retrieving a loyalty point ledger entry. |
Query
query LoyaltyPointLedgers($input: LoyaltyPointLedgersInput) {
loyaltyPointLedgers(input: $input) {
id
ledgerType
value
balanceBroughtForward
balanceCarriedForward
reasonCode
idempotencyKey
postedAt
accountNumber
}
}Variables
{
"input": LoyaltyPointLedgersInput
}Response
{
"data": {
"loyaltyPointLedgers": [
{
"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"
}
]
}
}loyaltyPointsBalance
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the loyalty points balance for an account.
The possible errors that can be raised are:
- KT-CT-9218: Unauthorized.
- KT-CT-9217: Unauthorized.
- KT-CT-9215: Loyalty points balance query disabled.
- KT-CT-9216: Unauthorized.
- KT-CT-9222: Loyalty points balance query requires either accountNumber field (deprecated) or input object (preferred) with account number and optional account user id.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The account number. |
|
Query
query LoyaltyPointsBalance(
$accountNumber: String,
$input: LoyaltyPointsBalanceInput
) {
loyaltyPointsBalance(
accountNumber: $accountNumber,
input: $input
) {
loyaltyPoints
totalMonetaryAmount
}
}Variables
{
"accountNumber": "abc123",
"input": LoyaltyPointsBalanceInput
}Response
{
"data": {
"loyaltyPointsBalance": {
"loyaltyPoints": 1,
"totalMonetaryAmount": 1
}
}
}marketParticipant
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get market participant details by their code.
Arguments
| Name | Description |
|---|---|
| The unique identifier of the market participant. |
Query
query MarketParticipant($participantId: String!) {
marketParticipant(participantId: $participantId) {
participantId
participantName
participantType
marketType
}
}Variables
{
"participantId": "abc123"
}Response
{
"data": {
"marketParticipant": {
"participantId": "abc123",
"participantName": "abc123",
"participantType": "abc123",
"marketType": "abc123"
}
}
}message
Type:Message!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the details of a transactional message with a given external ID.
The possible errors that can be raised are:
- KT-CT-9911: Message not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The ID of the transactional message. |
Query
query Message($messageId: ID!) {
message(messageId: $messageId) {
channel
dispatchedAt
failedAt
id
account {
...AccountTypeFragment
}
accountUser {
...AccountUserTypeFragment
}
}
}Variables
{
"messageId": "abc123"
}Response
{
"data": {
"message": {
"channel": "EMAIL",
"dispatchedAt": "2020-01-01T00:00:00.000Z",
"failedAt": "2020-01-01T00:00:00.000Z",
"id": "abc123",
"account": AccountType,
"accountUser": AccountUserType
}
}
}metadata
Type:[Metadata]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Metadata for a linked object.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-4177: Unauthorized.
- KT-CT-4124: Unauthorized.
- KT-CT-6622: Unauthorized.
- KT-CT-6637: Unauthorized.
- KT-CT-8411: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| |
|
Query
query Metadata(
$linkedObjectType: LinkedObjectType,
$identifier: String!
) {
metadata(
linkedObjectType: $linkedObjectType,
identifier: $identifier
) {
key
value
}
}Variables
{
"linkedObjectType": "ACCOUNT",
"identifier": "abc123"
}Response
{
"data": {
"metadata": [
{
"key": "abc123",
"value": {"key": "value"}
}
]
}
}metadataForKey
Type:Metadata
URL:https://api.redenergy-kraken.energy/v1/graphql/
Metadata for a linked object with key.
The possible errors that can be raised are:
- KT-CT-4123: Unauthorized.
- KT-CT-4177: Unauthorized.
- KT-CT-4124: Unauthorized.
- KT-CT-6622: Unauthorized.
- KT-CT-6637: Unauthorized.
- KT-CT-8411: Invalid data.
- KT-CT-4155: Invalid data.
- KT-CT-4179: No metadata found with given key.
- KT-CT-8416: No metadata found with given key.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| |
| |
|
Query
query MetadataForKey(
$linkedObjectType: LinkedObjectType,
$identifier: String!,
$key: String!
) {
metadataForKey(
linkedObjectType: $linkedObjectType,
identifier: $identifier,
key: $key
) {
key
value
}
}Variables
{
"linkedObjectType": "ACCOUNT",
"identifier": "abc123",
"key": "abc123"
}Response
{
"data": {
"metadataForKey": {
"key": "abc123",
"value": {"key": "value"}
}
}
}meterPoint
Type:MeterPointInterface
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get meter point details.
Arguments
| Name | Description |
|---|---|
|
Query
query MeterPoint($nmi: String!) {
meterPoint(nmi: $nmi) {
status
agreements {
...AusAgreementInterfaceFragment
}
id
identifier
meters {
...MeterFragment
}
supplyType
supplyDetails {
...SupplyDetailsTypeFragment
}
}
}Variables
{
"nmi": "abc123"
}Response
{
"data": {
"meterPoint": {
"status": "abc123",
"agreements": AusAgreementInterface,
"id": 1,
"identifier": "abc123",
"meters": Meter,
"supplyType": "abc123",
"supplyDetails": SupplyDetailsType
}
}
}mfaDevices
Type:[MfaDevice]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all MFA devices for the current user.
Query
query MfaDevices {
mfaDevices {
deviceType
isConfirmed
}
}Response
{
"data": {
"mfaDevices": [
{
"deviceType": "abc123",
"isConfirmed": true
}
]
}
}mirnCheck
Type:MIRNCheckType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve the meter point status from the related MIRN.
Arguments
| Name | Description |
|---|---|
| MIRN. |
Query
query MirnCheck($mirn: String!) {
mirnCheck(mirn: $mirn) {
isOnSupply
krakenStatus
supplyStartDate
isOccupier
accountNumber
account {
...AccountTypeFragment
}
}
}Variables
{
"mirn": "abc123"
}Response
{
"data": {
"mirnCheck": {
"isOnSupply": true,
"krakenStatus": "OFF_SUPPLY",
"supplyStartDate": "2020-01-01",
"isOccupier": true,
"accountNumber": "abc123",
"account": AccountType
}
}
}moveInDates
Type:MoveInDatesType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Available move in dates for property move.
Arguments
| Name | Description |
|---|---|
|
Query
query MoveInDates($input: MoveInDatesSearchInput!) {
moveInDates(input: $input) {
moveInDates
error {
... on DoesNotExistErrorType {
...DoesNotExistErrorTypeFragment
}
}
}
}Variables
{
"input": MoveInDatesSearchInput
}Response
{
"data": {
"moveInDates": {
"moveInDates": ["2020-01-01"],
"error": DoesNotExistErrorType
}
}
}moveOutDates
Type:MoveOutDatesType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve possible move out dates for a given property.
Arguments
| Name | Description |
|---|---|
|
Query
query MoveOutDates($input: MoveOutDatesSearchInput!) {
moveOutDates(input: $input) {
moveOutDates
error {
... on DoesNotExistErrorType {
...DoesNotExistErrorTypeFragment
}
... on AccountIsNotAssociatedWithPropertyErrorType {
...AccountIsNotAssociatedWithPropertyErrorTypeFragment
}
... on HouseMoveOutHasBeenPerformedErrorType {
...HouseMoveOutHasBeenPerformedErrorTypeFragment
}
}
}
}Variables
{
"input": MoveOutDatesSearchInput
}Response
{
"data": {
"moveOutDates": {
"moveOutDates": ["2020-01-01"],
"error": DoesNotExistErrorType
}
}
}nextPaymentScheduleAvailableDate
Type:String
URL:https://api.redenergy-kraken.energy/v1/graphql/
Query the minimum start date for a new payment schedule.
This query is deprecated. Please use getNextPaymentScheduleAvailableDate instead.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-1113: Disabled GraphQL field requested.
Deprecated
The 'nextPaymentScheduleAvailableDate' field is deprecated.
Use `getNextPaymentScheduleAvailableDate` instead.
- Marked as deprecated on 2024-01-09.
- Scheduled for removal on or after 2024-04-09.
Arguments
| Name | Description |
|---|---|
| |
| The schedule type which determines the payment frequency. The type name provided should be one of the following: 'Smoothpay (weekly)' 'Smoothpay (monthly)' 'Fixed (weekly)' 'Fixed (monthly)' 'Variable' |
| The id of the ledger. |
| The number of the ledger. |
Query
query NextPaymentScheduleAvailableDate(
$accountNumber: String!,
$scheduleTypeName: String!,
$ledgerId: Int,
$ledgerNumber: String
) {
nextPaymentScheduleAvailableDate(
accountNumber: $accountNumber,
scheduleTypeName: $scheduleTypeName,
ledgerId: $ledgerId,
ledgerNumber: $ledgerNumber
)
}Variables
{
"accountNumber": "abc123",
"scheduleTypeName": "abc123",
"ledgerId": 1,
"ledgerNumber": "abc123"
}Response
{
"data": {
"nextPaymentScheduleAvailableDate": "abc123"
}
}nmiCheck
Type:NMICheckType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve the meter point status from the related NMI.
Arguments
| Name | Description |
|---|---|
|
Query
query NmiCheck($nmi: String!) {
nmiCheck(nmi: $nmi) {
isOnSupply
krakenStatus
supplyStartDate
isOccupier
accountNumber
account {
...AccountTypeFragment
}
}
}Variables
{
"nmi": "abc123"
}Response
{
"data": {
"nmiCheck": {
"isOnSupply": true,
"krakenStatus": "OFF_SUPPLY",
"supplyStartDate": "2020-01-01",
"isOccupier": true,
"accountNumber": "abc123",
"account": AccountType
}
}
}nmiDiscovery
Type:NMIDiscoveryType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Find NMI from AEMO. This is referred to as NMI Discovery search type 1. This is useful for finding out the NMI for a customer if the customer does not know their NMI beforehand but know the address of their property.
Arguments
| Name | Description |
|---|---|
|
Query
query NmiDiscovery($input: NMIDiscoveryAddressInput) {
nmiDiscovery(input: $input) {
nmi
rawAemoResponse
error {
... on BothHouseAndLotNumberErrorType {
...BothHouseAndLotNumberErrorTypeFragment
}
... on MissingHouseAndLotNumberErrorType {
...MissingHouseAndLotNumberErrorTypeFragment
}
... on AEMOAPIUnavailableErrorType {
...AEMOAPIUnavailableErrorTypeFragment
}
... on UnableToParseAEMOAPIResponseErrorType {
...UnableToParseAEMOAPIResponseErrorTypeFragment
}
... on FailureStatusCodeInAEMOResponseErrorType {
...FailureStatusCodeInAEMOResponseErrorTypeFragment
}
}
}
}Variables
{
"input": NMIDiscoveryAddressInput
}Response
{
"data": {
"nmiDiscovery": {
"nmi": "abc123",
"rawAemoResponse": "abc123",
"error": BothHouseAndLotNumberErrorType
}
}
}nmiType2Discovery
URL:https://api.redenergy-kraken.energy/v1/graphql/
Perform NMI discovery search type 2 from AEMO. This will fetch Standing Data that can be used by the retailer to provide a customer with quotation. It can also help to find Meter Read data information for the customer switching process.
Arguments
| Name | Description |
|---|---|
|
Query
query NmiType2Discovery($input: NMIType2DiscoveryInput) {
nmiType2Discovery(input: $input) {
rawAemoResponse
hasAtLeastOneActiveSolarNtc
hasAtLeastOneActiveSmartMeter
hasAllActiveRemotelyReadMeters
hasAtLeastOneRemotelyReadDisconnectedMeter
error {
... on AEMOAPIUnavailableErrorType {
...AEMOAPIUnavailableErrorTypeFragment
}
... on UnableToParseAEMOAPIResponseErrorType {
...UnableToParseAEMOAPIResponseErrorTypeFragment
}
... on FailureStatusCodeInAEMOResponseErrorType {
...FailureStatusCodeInAEMOResponseErrorTypeFragment
}
}
}
}Variables
{
"input": NMIType2DiscoveryInput
}Response
{
"data": {
"nmiType2Discovery": {
"rawAemoResponse": "abc123",
"hasAtLeastOneActiveSolarNtc": true,
"hasAtLeastOneActiveSmartMeter": true,
"hasAllActiveRemotelyReadMeters": true,
"hasAtLeastOneRemotelyReadDisconnectedMeter": true,
"error": AEMOAPIUnavailableErrorType
}
}
}Arguments
| Name | Description |
|---|---|
| The ID of the object |
Query
query Node($id: ID!) {
node(id: $id) {
id
}
}Variables
{
"id": "abc123"
}Response
{
"data": {
"node": {
"id": "abc123"
}
}
}Arguments
| Name | Description |
|---|---|
| The identifier of the offer to query. |
Query
query OfferForQuoting($identifier: ID) {
offerForQuoting(identifier: $identifier) {
identifier
quote {
...QuoteType_Fragment
}
description
validFrom
validTo
acceptedAt
rejectedAt
createdBy {
...ActorTypeFragment
}
}
}Variables
{
"identifier": "abc123"
}Response
{
"data": {
"offerForQuoting": {
"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
}
}
}Arguments
| Name | Description |
|---|---|
| The identifier of the offer group to query. |
Query
query OfferGroupForQuoting($identifier: ID) {
offerGroupForQuoting(identifier: $identifier) {
identifier
offers {
...OfferTypeFragment
}
createdAt
createdBy {
...ActorTypeFragment
}
}
}Variables
{
"identifier": "abc123"
}offering
Type:OfferingType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about a product offering.
The possible errors that can be raised are:
- KT-CT-12001: Product catalogue offering with given identifier not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the offering to query. |
Query
query Offering($identifier: String) {
offering(identifier: $identifier) {
identifier
internalName
customerName
customerDescription
isSellable
lifecycle {
...LifecycleTypeFragment
}
tags {
...TagTypeFragment
}
productComponents {
...ProductComponentTypeFragment
}
offeringComponents {
...OfferingComponentTypeFragment
}
termTemplateComponents {
...TermTemplateComponentTypeFragment
}
groups {
...GroupTypeFragment
}
isAmendable
isExpired
isActive
isDraft
isLatestVersion
isFirstDraft
}
}Variables
{
"identifier": "abc123"
}Response
{
"data": {
"offering": {
"identifier": "abc123",
"internalName": "abc123",
"customerName": "abc123",
"customerDescription": "abc123",
"isSellable": true,
"lifecycle": LifecycleType,
"tags": [TagType],
"productComponents": [ProductComponentType],
"offeringComponents": [OfferingComponentType],
"termTemplateComponents": [TermTemplateComponentType],
"groups": [GroupType],
"isAmendable": true,
"isExpired": true,
"isActive": true,
"isDraft": true,
"isLatestVersion": true,
"isFirstDraft": true
}
}
}opportunities
URL:https://api.redenergy-kraken.energy/v1/graphql/
Fetch all opportunities for this Kraken, with optional filtering.
Arguments
| Name | Description |
|---|---|
| Input fields for retrieving opportunities. |
| |
| |
| |
| |
|
Query
query Opportunities(
$input: OpportunitiesQueryInput,
$offset: Int,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
opportunities(
input: $input,
offset: $offset,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...OpportunitiesEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": OpportunitiesQueryInput,
"offset": 1,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"opportunities": {
"pageInfo": PageInfo,
"edges": OpportunitiesEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}opportunityByNumber
Type:OpportunityOutput
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get opportunity details by number.
The possible errors that can be raised are:
- KT-CT-8906: Opportunity not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Opportunity number identifier. |
Query
query OpportunityByNumber($number: String) {
opportunityByNumber(number: $number) {
opportunityId
leadNumber
leadType
name
email
phoneNumber
number
funnel {
...SalesFunnelFragment
}
stage
extraDetails
extraDetailItems {
...ExtraDetailFragment
}
opportunityAddress {
...AddressOutputFragment
}
opportunityRichAddress {
...RichAddressTypeFragment
}
salesChannel
assignedToTeam
assignedToUser
assignedToUserIdentifier
assignedToTeamIdentifier
productOfferingId
productOffering {
...OfferingTypeFragment
}
offerGroupId
consents {
...ConsentOutputFragment
}
notes
attachments {
...OpportunityAttachmentFragment
}
supplyPoints {
...LeadSupplyPointTypeFragment
}
assignedToAffiliateNumber
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"opportunityByNumber": {
"opportunityId": "abc123",
"leadNumber": "abc123",
"leadType": "abc123",
"name": "abc123",
"email": "abc123",
"phoneNumber": "abc123",
"number": "abc123",
"funnel": SalesFunnel,
"stage": "abc123",
"extraDetails": {"key": "value"},
"extraDetailItems": [ExtraDetail],
"opportunityAddress": AddressOutput,
"opportunityRichAddress": RichAddressType,
"salesChannel": "abc123",
"assignedToTeam": "abc123",
"assignedToUser": "abc123",
"assignedToUserIdentifier": "abc123",
"assignedToTeamIdentifier": "abc123",
"productOfferingId": "abc123",
"productOffering": OfferingType,
"offerGroupId": "abc123",
"consents": [ConsentOutput],
"notes": "abc123",
"attachments": [OpportunityAttachment],
"supplyPoints": [LeadSupplyPointType],
"assignedToAffiliateNumber": "abc123"
}
}
}opportunityProductSummary
Type:[OpportunityProductSummary!]!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return summaries of all products in opportunity's accepted offer. Supports multi-product offerings like dual fuel.
The possible errors that can be raised are:
- KT-CT-8906: Opportunity not found.
- KT-CT-8923: The opportunity does not have a linked offer group.
- KT-CT-8922: The opportunity does not have an accepted offer.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Opportunity number. |
Query
query OpportunityProductSummary($number: String) {
opportunityProductSummary(number: $number) {
productOfferingIdentifier
productIdentifier
productCode
productCharacteristics
market
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"opportunityProductSummary": {
"productOfferingIdentifier": "abc123",
"productIdentifier": "abc123",
"productCode": "abc123",
"productCharacteristics": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
"market": "abc123"
}
}
}opportunityValueByKey
Type:String
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the value of a given key that is stored in an opportunity's related JSONFields.
The possible errors that can be raised are:
- KT-CT-8903: Unable to update opportunity.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the opportunity to query. |
| The key the a funnel-specific value you wish to obtain. |
Query
query OpportunityValueByKey(
$opportunityId: ID,
$key: String
) {
opportunityValueByKey(
opportunityId: $opportunityId,
key: $key
)
}Variables
{
"opportunityId": "abc123",
"key": "abc123"
}Response
{
"data": {
"opportunityValueByKey": "abc123"
}
}partnerUser
Type:PartnerUserType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Return the details of a given partner user, if any exists.
The possible errors that can be raised are:
- KT-CT-7724: Either number or email must be provided.
- KT-CT-7725: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The partner user number. |
| The partner user email address. |
Query
query PartnerUser(
$number: String,
$email: String
) {
partnerUser(
number: $number,
email: $email
) {
id
number
givenName
familyName
name
email
lastLogin
createdAt
organisation {
...AffiliateOrganisationTypeFragment
}
permissions {
...PartnerUserPermissionFragment
}
}
}Variables
{
"number": "abc123",
"email": "abc123"
}Response
{
"data": {
"partnerUser": {
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"name": "abc123",
"email": "abc123",
"lastLogin": "2020-01-01T00:00:00.000Z",
"createdAt": "2020-01-01T00:00:00.000Z",
"organisation": AffiliateOrganisationType,
"permissions": PartnerUserPermission
}
}
}partnerViewer
Type:PartnerViewerType
URL:https://api.redenergy-kraken.energy/v1/graphql/
The currently authenticated partner user.
This field requires the Authorization header to be set.
Query
query PartnerViewer {
partnerViewer {
name
email
number
permissions {
...PartnerViewerPermissionFragment
}
}
}Response
{
"data": {
"partnerViewer": {
"name": "abc123",
"email": "abc123",
"number": "abc123",
"permissions": [PartnerViewerPermission]
}
}
}passwordValidatorHelpTexts
Type:[String]
URL:https://api.redenergy-kraken.energy/v1/graphql/
The help text of all configured password validators as plain-text or html. Defaults to plain-text.
Arguments
| Name | Description |
|---|---|
| Return the results as html instead of plain-text. Defaults to False. |
Query
query PasswordValidatorHelpTexts($asHtml: Boolean) {
passwordValidatorHelpTexts(asHtml: $asHtml)
}Variables
{
"asHtml": true
}Response
{
"data": {
"passwordValidatorHelpTexts": ["abc123"]
}
}paymentFingerprintChecks
Type:PaymentFingerPrintCheckType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check if a given payment fingerprint already exists and/or is risk-listed.
Arguments
| Name | Description |
|---|---|
| Fingerprint. |
Query
query PaymentFingerprintChecks($fingerprint: String!) {
paymentFingerprintChecks(fingerprint: $fingerprint) {
fingerprint
isFound
isRiskListed
}
}Variables
{
"fingerprint": "abc123"
}Response
{
"data": {
"paymentFingerprintChecks": {
"fingerprint": "abc123",
"isFound": true,
"isRiskListed": true
}
}
}paymentRequests
Type:PaymentRequestsType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all payment requests for the given ledger.
Arguments
| Name | Description |
|---|---|
| Kraken ledger number. |
Query
query PaymentRequests($ledgerNumber: String!) {
paymentRequests(ledgerNumber: $ledgerNumber) {
paymentRequest {
...PaymentRequestConnectionTypeConnectionFragment
}
}
}Variables
{
"ledgerNumber": "abc123"
}Response
{
"data": {
"paymentRequests": {
"paymentRequest": PaymentRequestConnectionTypeConnection
}
}
}portfolio
Type:PortfolioType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about a portfolio, using its portfolio number.
The possible errors that can be raised are:
- KT-CT-9403: Received an invalid portfolioId.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Portfolio number to be retrieved. |
Query
query Portfolio($portfolioNumber: String!) {
portfolio(portfolioNumber: $portfolioNumber) {
id
number
createdAt
updatedAt
billingName
collectiveBilling
operationsTeam {
...OperationsTeamTypeFragment
}
leadAccountNumber
brand
name
depth
parent {
...PortfolioTypeFragment
}
ancestors {
...PortfolioConnectionTypeConnectionFragment
}
descendants {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountConnectionTypeConnectionFragment
}
}
}Variables
{
"portfolioNumber": "abc123"
}Response
{
"data": {
"portfolio": {
"id": "abc123",
"number": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"updatedAt": "2020-01-01T00:00:00.000Z",
"billingName": "abc123",
"collectiveBilling": true,
"operationsTeam": OperationsTeamType,
"leadAccountNumber": "abc123",
"brand": "abc123",
"name": "abc123",
"depth": 1,
"parent": PortfolioType,
"ancestors": PortfolioConnectionTypeConnection,
"descendants": PortfolioConnectionTypeConnection,
"accounts": AccountConnectionTypeConnection
}
}
}portfolioByReference
Type:PortfolioType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get details about a portfolio, using its reference.
The possible errors that can be raised are:
- KT-CT-9409: Invalid portfolio reference.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Portfolio reference namespace-value pair to filter by. |
Query
query PortfolioByReference($portfolioReference: PortfolioReferenceInput!) {
portfolioByReference(portfolioReference: $portfolioReference) {
id
number
createdAt
updatedAt
billingName
collectiveBilling
operationsTeam {
...OperationsTeamTypeFragment
}
leadAccountNumber
brand
name
depth
parent {
...PortfolioTypeFragment
}
ancestors {
...PortfolioConnectionTypeConnectionFragment
}
descendants {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountConnectionTypeConnectionFragment
}
}
}Variables
{
"portfolioReference": PortfolioReferenceInput
}Response
{
"data": {
"portfolioByReference": {
"id": "abc123",
"number": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"updatedAt": "2020-01-01T00:00:00.000Z",
"billingName": "abc123",
"collectiveBilling": true,
"operationsTeam": OperationsTeamType,
"leadAccountNumber": "abc123",
"brand": "abc123",
"name": "abc123",
"depth": 1,
"parent": PortfolioType,
"ancestors": PortfolioConnectionTypeConnection,
"descendants": PortfolioConnectionTypeConnection,
"accounts": AccountConnectionTypeConnection
}
}
}possibleErrors
URL:https://api.redenergy-kraken.energy/v1/graphql/
Possible errors of the requested query/mutation.
The possible errors that can be raised are:
- KT-CT-1606: Query/Mutation not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Query or Mutation for which to get the possible errors list. |
Query
query PossibleErrors($input: PossibleErrorsInputType!) {
possibleErrors(input: $input) {
name
type
authErrors
possibleErrors {
...PossibleErrorTypeFragment
}
}
}Variables
{
"input": PossibleErrorsInputType
}Response
{
"data": {
"possibleErrors": {
"name": "abc123",
"type": "query",
"authErrors": true,
"possibleErrors": [PossibleErrorType]
}
}
}printBatch
Type:PrintBatchType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get print batch details, including messages in the batch.
The possible errors that can be raised are:
- KT-CT-9013: Invalid data.
- KT-CT-9012: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Query
query PrintBatch(
$printBatchId: Int,
$batchId: ID
) {
printBatch(
printBatchId: $printBatchId,
batchId: $batchId
) {
id
status
messages {
...PrintMessageTypeConnectionFragment
}
}
}Variables
{
"printBatchId": 1,
"batchId": "abc123"
}Response
{
"data": {
"printBatch": {
"id": "abc123",
"status": "OPEN",
"messages": PrintMessageTypeConnection
}
}
}product
Type:Product
URL:https://api.redenergy-kraken.energy/v1/graphql/
The possible errors that can be raised are:
- KT-AU-9510: No product found for the inputed code.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query Product($code: String!) {
product(code: $code) {
id
productRates {
...RateInterfaceFragment
}
paginatedRates {
...RatesConnectionFieldConnectionFragment
}
addonRates {
...AddonFamilyTypeFragment
}
dmoReference {
...ProductDmoReferenceTypeFragment
}
code
displayName
fullName
description
isStandingOffer
marketName
isVariable
emissionsReduction
availabilityStatus
availableTo
term
rank
params
clientParams
loyalty {
...LoyaltyTypeFragment
}
error {
... on DoesNotExistErrorType {
...DoesNotExistErrorTypeFragment
}
}
}
}Variables
{
"code": "abc123"
}Response
{
"data": {
"product": {
"id": "abc123",
"productRates": RateInterface,
"paginatedRates": RatesConnectionFieldConnection,
"addonRates": [AddonFamilyType],
"dmoReference": ProductDmoReferenceType,
"code": "abc123",
"displayName": "abc123",
"fullName": "abc123",
"description": "abc123",
"isStandingOffer": true,
"marketName": "AUS_ELECTRICITY",
"isVariable": true,
"emissionsReduction": "1.0",
"availabilityStatus": "EVERYONE",
"availableTo": "2020-01-01T00:00:00.000Z",
"term": 1,
"rank": 1,
"params": {"key": "value"},
"clientParams": {"key": "value"},
"loyalty": LoyaltyType,
"error": DoesNotExistErrorType
}
}
}Query
query Properties(
$accountNumber: String!,
$active: Boolean
) {
properties(
accountNumber: $accountNumber,
active: $active
) {
id
postcode
label
addressLine1
addressLine2
addressLine3
addressLine4
addressLine5
address
richAddress {
...PropertyRichAddressTypeFragment
}
splitAddress
occupancyPeriods {
...OccupancyPeriodTypeFragment
}
coordinates {
...CoordinatesTypeFragment
}
embeddedNetwork {
...EmbeddedNetworkTypeFragment
}
parent {
...PropertyInterfaceFragment
}
descendants {
...PropertyConnectionFragment
}
ancestors {
...PropertyConnectionFragment
}
measurements {
...MeasurementConnectionFragment
}
electricityMeterPoints {
...MeterPointTypeFragment
}
meterPoints {
...MeterPointInterfaceFragment
}
benchmarks
state
}
}Variables
{
"accountNumber": "abc123",
"active": true
}Response
{
"data": {
"properties": [
{
"id": "abc123",
"postcode": "abc123",
"label": "abc123",
"addressLine1": "abc123",
"addressLine2": "abc123",
"addressLine3": "abc123",
"addressLine4": "abc123",
"addressLine5": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"parent": PropertyInterface,
"descendants": PropertyConnection,
"ancestors": PropertyConnection,
"measurements": MeasurementConnection,
"electricityMeterPoints": [MeterPointType],
"meterPoints": MeterPointInterface,
"benchmarks": [EnergyBenchmarkType],
"state": "AUSTRALIAN_CAPITAL_TERRITORY"
}
]
}
}propertiesSearch
URL:https://api.redenergy-kraken.energy/v1/graphql/
Search for properties that are already in Kraken and match the search term.
Arguments
| Name | Description |
|---|---|
| The search term. It can be an address or a meter point identifier. |
Query
query PropertiesSearch($searchTerm: String!) {
propertiesSearch(searchTerm: $searchTerm) {
score
property {
...PropertyTypeFragment
}
}
}Variables
{
"searchTerm": "abc123"
}Response
{
"data": {
"propertiesSearch": {
"score": "1.0",
"property": PropertyType
}
}
}property
Type:PropertyType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve property information by either property id, associated MIRN or NMI identifier.
Arguments
| Name | Description |
|---|---|
| The property ID. |
| Property related gas identifier. |
| Property related electricity identifier. |
Query
query Property(
$id: ID,
$mirn: ID,
$nmi: ID
) {
property(
id: $id,
mirn: $mirn,
nmi: $nmi
) {
id
postcode
label
addressLine1
addressLine2
addressLine3
addressLine4
addressLine5
address
richAddress {
...PropertyRichAddressTypeFragment
}
splitAddress
occupancyPeriods {
...OccupancyPeriodTypeFragment
}
coordinates {
...CoordinatesTypeFragment
}
embeddedNetwork {
...EmbeddedNetworkTypeFragment
}
parent {
...PropertyInterfaceFragment
}
descendants {
...PropertyConnectionFragment
}
ancestors {
...PropertyConnectionFragment
}
measurements {
...MeasurementConnectionFragment
}
electricityMeterPoints {
...MeterPointTypeFragment
}
meterPoints {
...MeterPointInterfaceFragment
}
benchmarks
state
}
}Variables
{
"id": "abc123",
"mirn": "abc123",
"nmi": "abc123"
}Response
{
"data": {
"property": {
"id": "abc123",
"postcode": "abc123",
"label": "abc123",
"addressLine1": "abc123",
"addressLine2": "abc123",
"addressLine3": "abc123",
"addressLine4": "abc123",
"addressLine5": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"parent": PropertyInterface,
"descendants": PropertyConnection,
"ancestors": PropertyConnection,
"measurements": MeasurementConnection,
"electricityMeterPoints": [MeterPointType],
"meterPoints": MeterPointInterface,
"benchmarks": [EnergyBenchmarkType],
"state": "AUSTRALIAN_CAPITAL_TERRITORY"
}
}
}propertySearch
Type:[PropertyType]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Search for properties that are already in Kraken and match the search term.
Deprecated
The 'propertySearch' field is deprecated.
This query is being deprecated in favour of `propertiesSearch`. The latter returns not only the matched properties but the level of confidence in the results through the `score` field.
- Marked as deprecated on 2023-05-23.
- Scheduled for removal on or after 2024-01-01.
Arguments
| Name | Description |
|---|---|
| The search term. It can be an address or a meter point identifier. |
Query
query PropertySearch($searchTerm: String!) {
propertySearch(searchTerm: $searchTerm) {
id
postcode
label
addressLine1
addressLine2
addressLine3
addressLine4
addressLine5
address
richAddress {
...PropertyRichAddressTypeFragment
}
splitAddress
occupancyPeriods {
...OccupancyPeriodTypeFragment
}
coordinates {
...CoordinatesTypeFragment
}
embeddedNetwork {
...EmbeddedNetworkTypeFragment
}
parent {
...PropertyInterfaceFragment
}
descendants {
...PropertyConnectionFragment
}
ancestors {
...PropertyConnectionFragment
}
measurements {
...MeasurementConnectionFragment
}
electricityMeterPoints {
...MeterPointTypeFragment
}
meterPoints {
...MeterPointInterfaceFragment
}
benchmarks
state
}
}Variables
{
"searchTerm": "abc123"
}Response
{
"data": {
"propertySearch": [
{
"id": "abc123",
"postcode": "abc123",
"label": "abc123",
"addressLine1": "abc123",
"addressLine2": "abc123",
"addressLine3": "abc123",
"addressLine4": "abc123",
"addressLine5": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"parent": PropertyInterface,
"descendants": PropertyConnection,
"ancestors": PropertyConnection,
"measurements": MeasurementConnection,
"electricityMeterPoints": [MeterPointType],
"meterPoints": MeterPointInterface,
"benchmarks": [EnergyBenchmarkType],
"state": "AUSTRALIAN_CAPITAL_TERRITORY"
}
]
}
}publicHolidays
Type:[Date]
URL:https://api.redenergy-kraken.energy/v1/graphql/
A list of public holidays that fall within the given date range for the given state. If no state is provided, only Australia-wide holidays will be returned.
Please note that holidays returned for dates prior to 2018, or the following year and after may be incomplete. Some public holidays, such as AFL Grand Final holiday in Victoria, are only determined at the start of a given year, so cannot be provided prior to the start of the year.
Arguments
| Name | Description |
|---|---|
|
Query
query PublicHolidays($input: PublicHolidayInputType!) {
publicHolidays(input: $input)
}Variables
{
"input": PublicHolidayInputType
}Response
{
"data": {
"publicHolidays": ["2020-01-01"]
}
}queryComplexity
Type:QueryComplexityOutputType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the complexity of a query.
Arguments
| Name | Description |
|---|---|
| Query and relevant variables required to calculate the complexity. |
Query
query QueryComplexity($input: QueryComplexityInputType!) {
queryComplexity(input: $input) {
complexityValue
}
}Variables
{
"input": QueryComplexityInputType
}Response
{
"data": {
"queryComplexity": {
"complexityValue": 1
}
}
}question
Type:String
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the customer feedback survey question.
The possible errors that can be raised are:
- KT-CT-5513: Invalid data.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query Question($formId: Int!) {
question(formId: $formId)
}Variables
{
"formId": 1
}Response
{
"data": {
"question": "abc123"
}
}quoteConfigurationByNumber
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a quote configuration by its number.
The possible errors that can be raised are:
- KT-CT-14701: QuoteConfiguration not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Unique number identifying the quote configuration. |
Query
query QuoteConfigurationByNumber($number: String) {
quoteConfigurationByNumber(number: $number) {
number
createdBy
contractStart
contractEnd
expiresAt
opportunityNumber
status
terms {
...QuoteTermInterfaceFragment
}
extraDetailsItems {
...QuoteConfigurationExtraDetailItemTypeFragment
}
}
}Variables
{
"number": "abc123"
}Response
{
"data": {
"quoteConfigurationByNumber": {
"number": "abc123",
"createdBy": "abc123",
"contractStart": "2020-01-01T00:00:00.000Z",
"contractEnd": "2020-01-01T00:00:00.000Z",
"expiresAt": "2020-01-01T00:00:00.000Z",
"opportunityNumber": "abc123",
"status": "DRAFT",
"terms": QuoteTermInterface,
"extraDetailsItems": [QuoteConfigurationExtraDetailItemType]
}
}
}quotingParamDefinitionsForProductOffering
URL:https://api.redenergy-kraken.energy/v1/graphql/
The possible errors that can be raised are:
- KT-CT-12403: Product offering not found.
- KT-CT-12404: Product offering has expired.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the product offering. |
Query
query QuotingParamDefinitionsForProductOffering($productOfferingIdentifier: ID) {
quotingParamDefinitionsForProductOffering(productOfferingIdentifier: $productOfferingIdentifier) {
offeringIdentifier
productComponents {
...QuotedProductComponentTypeFragment
}
offeringComponents {
...QuotedOfferingParamsTypeFragment
}
}
}Variables
{
"productOfferingIdentifier": "abc123"
}Response
{
"data": {
"quotingParamDefinitionsForProductOffering": {
"offeringIdentifier": "abc123",
"productComponents": [QuotedProductComponentType],
"offeringComponents": [QuotedOfferingParamsType]
}
}
}rateLimitInfo
Type:CombinedRateLimitInformation
URL:https://api.redenergy-kraken.energy/v1/graphql/
Combined information about points-allowance rate limiting and request-specific rate limiting.
Query
query RateLimitInfo {
rateLimitInfo {
pointsAllowanceRateLimit {
...PointsAllowanceRateLimitInformationFragment
}
fieldSpecificRateLimits {
...FieldSpecificRateLimitInformationConnectionTypeConnectionFragment
}
}
}Response
{
"data": {
"rateLimitInfo": {
"pointsAllowanceRateLimit": PointsAllowanceRateLimitInformation,
"fieldSpecificRateLimits": FieldSpecificRateLimitInformationConnectionTypeConnection
}
}
}returnSchedule
Type:[DepositReturnScheduleOutput]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get deposit agreement related return schedules for a given account.
The possible errors that can be raised are:
- KT-CT-4177: Unauthorized.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
|
Query
query ReturnSchedule($accountNumber: String!) {
returnSchedule(accountNumber: $accountNumber) {
dueDate
amount
status
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"returnSchedule": [
{
"dueDate": "2020-01-01",
"amount": 1,
"status": "abc123"
}
]
}
}routingAttributes
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get routing attributes available for call routing configuration.
The possible errors that can be raised are:
- KT-CT-11816: Invalid routing attribute category.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Filter by category (LANGUAGE, OPERATIONS_GROUP, SKILL). |
| Filter by friendly name (case-insensitive). |
Query
query RoutingAttributes(
$category: String,
$search: String
) {
routingAttributes(
category: $category,
search: $search
) {
ref
category
subcategory
friendlyName
isActive
}
}Variables
{
"category": "abc123",
"search": "abc123"
}Response
{
"data": {
"routingAttributes": {
"ref": "abc123",
"category": "abc123",
"subcategory": "abc123",
"friendlyName": "abc123",
"isActive": true
}
}
}salesFunnelByCode
Type:SalesFunnel
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the sales funnel by input.
The possible errors that can be raised are:
- KT-CT-8912: Funnel not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Input fields for retrieving the sales funnel. |
Query
query SalesFunnelByCode($input: SalesFunnelInput!) {
salesFunnelByCode(input: $input) {
code
name
funnelType
status
stages {
...SalesFunnelStageFragment
}
collections {
...CollectionFragment
}
uncollectedFields {
...FunnelFieldFragment
}
rules {
...SalesFunnelRuleFragment
}
}
}Variables
{
"input": SalesFunnelInput
}Response
{
"data": {
"salesFunnelByCode": {
"code": "abc123",
"name": "abc123",
"funnelType": "LEAD",
"status": "DRAFT",
"stages": [SalesFunnelStage],
"collections": [Collection],
"uncollectedFields": [FunnelField],
"rules": [SalesFunnelRule]
}
}
}salesFunnels
Type:[SalesFunnel]
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get all sales funnels.
Arguments
| Name | Description |
|---|---|
| Input fields for retrieving the sales funnels. |
Query
query SalesFunnels($input: SalesFunnelsInput) {
salesFunnels(input: $input) {
code
name
funnelType
status
stages {
...SalesFunnelStageFragment
}
collections {
...CollectionFragment
}
uncollectedFields {
...FunnelFieldFragment
}
rules {
...SalesFunnelRuleFragment
}
}
}Variables
{
"input": SalesFunnelsInput
}Response
{
"data": {
"salesFunnels": [
{
"code": "abc123",
"name": "abc123",
"funnelType": "LEAD",
"status": "DRAFT",
"stages": [SalesFunnelStage],
"collections": [Collection],
"uncollectedFields": [FunnelField],
"rules": [SalesFunnelRule]
}
]
}
}searchLead
Type:LeadIdType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Search and return the identifiers of a lead.
The possible errors that can be raised are:
- KT-CT-8920: Search filters are invalid.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Filters to search for leads. All passed filters will be checked against the lead. |
Query
query SearchLead($filters: SearchLeadFilters!) {
searchLead(filters: $filters) {
leadId
number
}
}Variables
{
"filters": SearchLeadFilters
}Response
{
"data": {
"searchLead": {
"leadId": "abc123",
"number": "abc123"
}
}
}Arguments
| Name | Description |
|---|---|
| |
| |
| |
| |
|
Query
query ServiceOrderFees(
$input: ServiceOrderFeeFilterInput,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
serviceOrderFees(
input: $input,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ServiceOrderFeeConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"input": ServiceOrderFeeFilterInput,
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"serviceOrderFees": {
"pageInfo": PageInfo,
"edges": ServiceOrderFeeConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}siteworksRequests
Type:CoreSiteworksRequestConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
A query to get a subset of Requests.
Deprecated
The 'siteworksRequests' field is deprecated.
Please use getOnSiteJobsRequests instead.
- Marked as deprecated on 2026-03-01.
- Scheduled for removal on or after 2026-09-01.
Arguments
| Name | Description |
|---|---|
| A list of request IDs. If provided, only these requests will be returned. |
| Only requests created after this datetime will be included. |
| Only requests with a status in this list will be included. |
| |
| |
| |
|
Query
query SiteworksRequests(
$ids: [UUID],
$createdAfter: DateTime,
$statuses: [RequestStatus],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
siteworksRequests(
ids: $ids,
createdAfter: $createdAfter,
statuses: $statuses,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...CoreSiteworksRequestConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"ids": ["500c164d-38c7-4f74-9ac6-be210197e9e4"],
"createdAfter": "2020-01-01T00:00:00.000Z",
"statuses": "APPROVAL_PENDING",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"siteworksRequests": {
"pageInfo": PageInfo,
"edges": CoreSiteworksRequestConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}supplyPoint
Type:SupplyPointType
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get a supply point by its market specific id.
The possible errors that can be raised are:
- KT-CT-4722: Supply point readings API not configured.
- KT-CT-4719: No supply point found for identifier provided.
- KT-CT-4723: Invalid market name provided.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The market specific supply point id. |
| The name of the market in which this supply point exists. |
Query
query SupplyPoint(
$externalIdentifier: String!,
$marketName: String!
) {
supplyPoint(
externalIdentifier: $externalIdentifier,
marketName: $marketName
) {
id
marketName
externalIdentifier
readings {
...ReadingsFragment
}
property {
...PropertyTypeFragment
}
devices {
...DevicesConnectionFragment
}
}
}Variables
{
"externalIdentifier": "abc123",
"marketName": "abc123"
}Response
{
"data": {
"supplyPoint": {
"id": "abc123",
"marketName": "abc123",
"externalIdentifier": "abc123",
"readings": Readings,
"property": PropertyType,
"devices": DevicesConnection
}
}
}supplyPoints
Type:SupplyPointConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get list of supply points.
Arguments
| Name | Description |
|---|---|
| Filter meter points by account. |
| Filter meter points by portfolio. |
| |
| |
| |
|
Query
query SupplyPoints(
$accountNumber: String,
$portfolioNumber: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
supplyPoints(
accountNumber: $accountNumber,
portfolioNumber: $portfolioNumber,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...SupplyPointConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"portfolioNumber": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"supplyPoints": {
"pageInfo": PageInfo,
"edges": SupplyPointConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}surchargeAmount
Type:Int!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the surcharge amount for the given account and card type (in cents).
This query is deprecated. Please use getSurchargeAmount instead.
The possible errors that can be raised are:
- KT-CT-3820: Received both ledger ID and number.
- KT-CT-1113: Disabled GraphQL field requested.
Deprecated
The 'surchargeAmount' field is deprecated.
Use `getSurchargeAmount` instead.
- Marked as deprecated on 2023-11-19.
- Scheduled for removal on or after 2024-02-19.
Arguments
| Name | Description |
|---|---|
| |
| |
| The id of the ledger. |
| The number of the ledger. |
| |
|
Query
query SurchargeAmount(
$accountNumber: String!,
$amount: Int!,
$ledgerId: Int,
$ledgerNumber: String,
$cardScheme: CardPaymentNetwork,
$cardType: CardType
) {
surchargeAmount(
accountNumber: $accountNumber,
amount: $amount,
ledgerId: $ledgerId,
ledgerNumber: $ledgerNumber,
cardScheme: $cardScheme,
cardType: $cardType
)
}Variables
{
"accountNumber": "abc123",
"amount": 1,
"ledgerId": 1,
"ledgerNumber": "abc123",
"cardScheme": "MASTERCARD",
"cardType": "CREDIT"
}Response
{
"data": {
"surchargeAmount": 1
}
}taskResult
Type:TaskResult
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the status of a background task.
The possible errors that can be raised are:
- KT-CT-10401: Task not found.
- KT-CT-1113: Disabled GraphQL field requested.
Query
query TaskResult(
$taskId: String!,
$accountNumber: String!
) {
taskResult(
taskId: $taskId,
accountNumber: $accountNumber
) {
status
result
error
}
}Variables
{
"taskId": "abc123",
"accountNumber": "abc123"
}Response
{
"data": {
"taskResult": {
"status": "STARTED",
"result": {"key": "value"},
"error": "abc123"
}
}
}termsAndConditionsForProduct
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the active terms and conditions for a market supply product.
The possible errors that can be raised are:
- KT-CT-8501: No active terms and conditions found for product.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The product code of the market supply product. |
Query
query TermsAndConditionsForProduct($productCode: String!) {
termsAndConditionsForProduct(productCode: $productCode) {
name
pdfUrl
brandCode
markdown
html
version
effectiveFrom
}
}Variables
{
"productCode": "abc123"
}Response
{
"data": {
"termsAndConditionsForProduct": [
{
"name": "abc123",
"pdfUrl": "abc123",
"brandCode": "abc123",
"markdown": "abc123",
"html": "abc123",
"version": "abc123",
"effectiveFrom": "2020-01-01T00:00:00.000Z"
}
]
}
}thirdPartyViewer
Type:ThirdPartyOrganizationType
URL:https://api.redenergy-kraken.energy/v1/graphql/
The currently authenticated third party.
This field requires the Authorization header to be set.
Query
query ThirdPartyViewer {
thirdPartyViewer {
name
permissions {
...ThirdPartyPermissionFragment
}
}
}Response
{
"data": {
"thirdPartyViewer": {
"name": "abc123",
"permissions": [ThirdPartyPermission]
}
}
}trigger
Type:Trigger!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the details of a published trigger with a given ID.
The possible errors that can be raised are:
- KT-CT-9904: Trigger not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The ID of the trigger. |
Query
query Trigger($triggerId: ID!) {
trigger(triggerId: $triggerId) {
id
triggerTypeCode
createdAt
accountsLinkedAt
accounts {
...AccountConnectionTypeConnectionFragment
}
messages {
...MessageConnectionFragment
}
processingStatus
}
}Variables
{
"triggerId": "abc123"
}Response
{
"data": {
"trigger": {
"id": "abc123",
"triggerTypeCode": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"accountsLinkedAt": "2020-01-01T00:00:00.000Z",
"accounts": AccountConnectionTypeConnection,
"messages": MessageConnection,
"processingStatus": "UNPROCESSED"
}
}
}userSyncPayload
Type:UserSyncPayloadType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Retrieve an account user sync profile payload by identifier. This query is optimised for performance, and is ideal for users with many accounts. Prefer this query over traversing the graph from the viewer query if all the data you need is available in the return type from this query.
This field requires the Authorization header to be set.
The possible errors that can be raised are:
- KT-AU-5410: This query only supports the
firstargument for pagination. - KT-CT-5412: No account user exists with the given id.
- KT-AU-5415: Exactly one of accountUserId or accountUserEmail must be passed.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| Account user's identifier. |
Query
query UserSyncPayload($input: AccountUserInputType) {
userSyncPayload(input: $input) {
accountUserId
givenName
familyName
dateOfBirth
hasFamilyIssues
familyIssues {
...SyncFamilyIssuesTypeFragment
}
email
mobile
landline
alternativePhoneNumbers
portfolioUserRoles {
...SyncPortfolioUserRoleTypeFragment
}
accountUserRoles {
...SyncAccountUserRoleTypeFragment
}
businessUserRoles {
...SyncBusinessUserRoleTypeFragment
}
accounts {
...SyncAccountConnectionTypeConnectionFragment
}
}
}Variables
{
"input": AccountUserInputType
}Response
{
"data": {
"userSyncPayload": {
"accountUserId": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"dateOfBirth": "abc123",
"hasFamilyIssues": true,
"familyIssues": SyncFamilyIssuesType,
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"alternativePhoneNumbers": ["abc123"],
"portfolioUserRoles": [SyncPortfolioUserRoleType],
"accountUserRoles": [SyncAccountUserRoleType],
"businessUserRoles": [SyncBusinessUserRoleType],
"accounts": SyncAccountConnectionTypeConnection
}
}
}validateReferralCode
URL:https://api.redenergy-kraken.energy/v1/graphql/
Validate referral claim code.
Arguments
| Name | Description |
|---|---|
| Referral claim code value. |
Query
query ValidateReferralCode($value: String!) {
validateReferralCode(value: $value) {
id
value
referralScheme {
...ReferralSchemeTypeFragment
}
accountReferral {
...ReferralTypeFragment
}
isValid
createdAt
}
}Variables
{
"value": "abc123"
}Response
{
"data": {
"validateReferralCode": {
"id": 1,
"value": "abc123",
"referralScheme": ReferralSchemeType,
"accountReferral": ReferralType,
"isValid": true,
"createdAt": "2020-01-01T00:00:00.000Z"
}
}
}verificationStatus
URL:https://api.redenergy-kraken.energy/v1/graphql/
Check the verification status of a given email address.
Arguments
| Name | Description |
|---|---|
| The email address to be checked. |
Query
query VerificationStatus($email: String!) {
verificationStatus(email: $email) {
email
status
}
}Variables
{
"email": "abc123"
}Response
{
"data": {
"verificationStatus": {
"email": "abc123",
"status": "NOT_SENT"
}
}
}viewer
Type:AccountUserType
URL:https://api.redenergy-kraken.energy/v1/graphql/
The currently authenticated user.
This field requires the Authorization header to be set.
Query
query Viewer {
viewer {
id
number
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
createdAt
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
accounts {
...AccountInterfaceFragment
}
address {
...RichAddressTypeFragment
}
dateOfBirth
label
isActive
details {
...AccountUserDetailTypeFragment
}
permissions {
...AccountUserPermissionFragment
}
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
businesses {
...BusinessConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
consents {
...ConsentTypeFragment
}
paymentMethods {
...PaymentInstructionConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
concessions {
...ConcessionTypeFragment
}
applicableConcessionCardTypes {
...ConcessionCardApplicableRegionTypeFragment
}
masqueradeToken
primaryPlacesOfResidence {
...PrimaryResidenceTypeFragment
}
lastUpdatedAt
state
transactions {
...TransactionConnectionTypeConnectionFragment
}
}
}Response
{
"data": {
"viewer": {
"id": "abc123",
"number": "abc123",
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"portfolios": PortfolioConnectionTypeConnection,
"accounts": AccountInterface,
"address": RichAddressType,
"dateOfBirth": "2020-01-01",
"label": "abc123",
"isActive": true,
"details": [AccountUserDetailType],
"permissions": [AccountUserPermission],
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"businesses": BusinessConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"consents": ConsentType,
"paymentMethods": PaymentInstructionConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"concessions": [ConcessionType],
"applicableConcessionCardTypes": [ConcessionCardApplicableRegionType],
"masqueradeToken": "abc123",
"primaryPlacesOfResidence": [PrimaryResidenceType],
"lastUpdatedAt": "2020-01-01T00:00:00.000Z",
"state": "AUSTRALIAN_CAPITAL_TERRITORY",
"transactions": TransactionConnectionTypeConnection
}
}
}voiceCampaign
Type:VoiceCampaignType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the voice campaign for a given ID.
The possible errors that can be raised are:
- KT-CT-11501: Voice campaign not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The campaign ID. |
Query
query VoiceCampaign($campaignId: String!) {
voiceCampaign(campaignId: $campaignId) {
id
name
description
customOutboundPhoneNumber
tags {
...CallTagConnectionTypeConnectionFragment
}
status
campaignType
campaignItems {
...VoiceCampaignItemConnectionTypeConnectionFragment
}
preventDuplicateRecords
}
}Variables
{
"campaignId": "abc123"
}Response
{
"data": {
"voiceCampaign": {
"id": "abc123",
"name": "abc123",
"description": "abc123",
"customOutboundPhoneNumber": "abc123",
"tags": CallTagConnectionTypeConnection,
"status": "ACTIVE",
"campaignType": "PREVIEW",
"campaignItems": VoiceCampaignItemConnectionTypeConnection,
"preventDuplicateRecords": true
}
}
}voiceCampaigns
Type:VoiceCampaignConnectionTypeConnection!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get voice campaigns.
Arguments
| Name | Description |
|---|---|
| Filter by campaign status. |
| Filter by campaign type. |
| Filter by campaign name. |
| |
| |
| |
|
Query
query VoiceCampaigns(
$status: CampaignStatus,
$campaignType: TypeOfVoiceCampaign,
$name: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
voiceCampaigns(
status: $status,
campaignType: $campaignType,
name: $name,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...VoiceCampaignConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"status": "ACTIVE",
"campaignType": "PREVIEW",
"name": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"voiceCampaigns": {
"pageInfo": PageInfo,
"edges": VoiceCampaignConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}vouchersBalanceDetail
URL:https://api.redenergy-kraken.energy/v1/graphql/
Query the detail of vouchers balance for an account.
The possible errors that can be raised are:
- KT-CT-1111: Unauthorized.
- KT-CT-4178: No account found with given account number.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The account number. |
Query
query VouchersBalanceDetail($accountNumber: ID!) {
vouchersBalanceDetail(accountNumber: $accountNumber) {
redeemableToday
redeemableInFuture
}
}Variables
{
"accountNumber": "abc123"
}Response
{
"data": {
"vouchersBalanceDetail": {
"redeemableToday": 1,
"redeemableInFuture": 1
}
}
}vouchersForAccount
Type:VoucherPurchaseConnectionTypeConnection
URL:https://api.redenergy-kraken.energy/v1/graphql/
Query the voucher purchases for an account.
Arguments
| Name | Description |
|---|---|
| The account number. |
| Whether to only return vouchers that can be redeemable. |
| An optional date to limit the response to vouchers that have been purchased from the particular date (inclusive) onwards. |
| An optional date to limit the response to vouchers that have been purchased before the particular date (exclusive). |
| An optional date to limit the response to vouchers that are available from the particular date (inclusive) onwards. |
| An optional date to limit the response to vouchers that are available before the particular date (exclusive). |
| Whether to exclude refunded vouchers from the response. By default, refunded vouchers will be included in the response. |
| An optional list of display names to exclude from the results (case-insensitive). |
| |
| |
| |
|
Query
query VouchersForAccount(
$accountNumber: ID!,
$redeemableOnly: Boolean!,
$purchasedFromDate: Date,
$purchasedBeforeDate: Date,
$availableFromDate: Date,
$availableBeforeDate: Date,
$excludeRefunded: Boolean,
$excludeByDisplayName: [String],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
vouchersForAccount(
accountNumber: $accountNumber,
redeemableOnly: $redeemableOnly,
purchasedFromDate: $purchasedFromDate,
purchasedBeforeDate: $purchasedBeforeDate,
availableFromDate: $availableFromDate,
availableBeforeDate: $availableBeforeDate,
excludeRefunded: $excludeRefunded,
excludeByDisplayName: $excludeByDisplayName,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...VoucherPurchaseConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}Variables
{
"accountNumber": "abc123",
"redeemableOnly": true,
"purchasedFromDate": "2020-01-01",
"purchasedBeforeDate": "2020-01-01",
"availableFromDate": "2020-01-01",
"availableBeforeDate": "2020-01-01",
"excludeRefunded": true,
"excludeByDisplayName": ["abc123"],
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}Response
{
"data": {
"vouchersForAccount": {
"pageInfo": PageInfo,
"edges": VoucherPurchaseConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}workSchedule
Type:WorkScheduleType!
URL:https://api.redenergy-kraken.energy/v1/graphql/
Get the work schedule with the given identifier.
The possible errors that can be raised are:
- KT-CT-11804: Work schedule not found.
- KT-CT-1113: Disabled GraphQL field requested.
Arguments
| Name | Description |
|---|---|
| The identifier of the work schedule (also known as the 'slug'). |
Query
query WorkSchedule($identifier: String!) {
workSchedule(identifier: $identifier) {
identifier
name
isOpen
isPublicHoliday
openOrClosedReason
}
}Variables
{
"identifier": "abc123"
}Response
{
"data": {
"workSchedule": {
"identifier": "abc123",
"name": "abc123",
"isOpen": true,
"isPublicHoliday": true,
"openOrClosedReason": "CLOSED_DUE_TO_PUBLIC_HOLIDAY"
}
}
}