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
Arguments
Name | Description |
---|---|
|
Query
query Account($accountNumber: String!) {
account(accountNumber: $accountNumber) {
id
number
status
paymentSchedules {
...PaymentScheduleConnectionTypeConnectionFragment
}
users {
...AccountUserTypeFragment
}
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
}
paymentForecast {
...PaymentForecastTypeFragment
}
paginatedPaymentForecast {
...PaymentForecastConnectionTypeConnectionFragment
}
referrals {
...ReferralConnectionTypeConnectionFragment
}
referralsCreated
rewards {
...RewardTypeFragment
}
activeReferralSchemes {
...ReferralSchemeTypesFragment
}
transactions {
...TransactionConnectionTypeConnectionFragment
}
provisionalTransactions {
...ProvisionalTransactionConnectionTypeConnectionFragment
}
annualStatements {
...AnnualStatementConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
billingOptions {
...BillingOptionsTypeFragment
}
bill {
...BillInterfaceFragment
}
directDebitInstructions {
...DirectDebitInstructionConnectionTypeConnectionFragment
}
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
}
properties {
...PropertyTypeFragment
}
allProperties {
...PropertyTypeFragment
}
property {
...PropertyTypeFragment
}
electricityBalance
gasBalance
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"account": {
"id": "abc123",
"number": "abc123",
"status": "PENDING",
"paymentSchedules": PaymentScheduleConnectionTypeConnection,
"users": AccountUserType,
"brand": "abc123",
"balance": 1,
"overdueBalance": 1,
"urn": "abc123",
"billingName": "abc123",
"billingSubName": "abc123",
"billingEmail": "abc123",
"billingAddress": "abc123",
"billingAddressLine1": "abc123",
"billingAddressLine2": "abc123",
"billingAddressLine3": "abc123",
"billingAddressLine4": "abc123",
"billingAddressLine5": "abc123",
"billingAddressPostcode": "abc123",
"billingCountryCode": "abc123",
"billingDeliveryPointIdentifier": "abc123",
"splitBillingAddress": ["abc123"],
"address": RichAddressType,
"portfolio": PortfolioType,
"ledgers": [LedgerType],
"metadata": [Metadata],
"canRequestRefund": true,
"requestRefundEligibility": RequestRefundEligibilityType,
"payments": AccountPaymentConnectionTypeConnection,
"repayments": AccountRepaymentConnectionTypeConnection,
"paymentPlans": PaymentPlanConnectionTypeConnection,
"paymentForecast": [PaymentForecastType],
"paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
"referrals": ReferralConnectionTypeConnection,
"referralsCreated": 1,
"rewards": [RewardType],
"activeReferralSchemes": ReferralSchemeTypes,
"transactions": TransactionConnectionTypeConnection,
"provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
"annualStatements": AnnualStatementConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"billingOptions": BillingOptionsType,
"bill": BillInterface,
"directDebitInstructions": DirectDebitInstructionConnectionTypeConnection,
"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,
"properties": [PropertyType],
"allProperties": [PropertyType],
"property": PropertyType,
"electricityBalance": "abc123",
"gasBalance": "abc123"
}
}
}
accountChargeReasons
Type:[ChargeReasonType]
URL:https://api.oeg-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"
}
]
}
}
accountCreditReasons
Type:[CreditReasonType]
URL:https://api.oeg-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"
}
]
}
}
accountIoEligibility
Type:AccountIoEligibility
URL:https://api.oeg-kraken.energy/v1/graphql/
Determines whether an account is eligible to register devices with Intelligent Octopus.
Arguments
Name | Description |
---|---|
| Account number. |
Query
query AccountIoEligibility($accountNumber: String!) {
accountIoEligibility(accountNumber: $accountNumber) {
isEligibleForIo
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"accountIoEligibility": {
"isEligibleForIo": true
}
}
}
Arguments
Name | Description |
---|---|
|
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
}
]
}
}
accounts
Type:[AccountType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Get details about multiple accounts.
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
paymentSchedules {
...PaymentScheduleConnectionTypeConnectionFragment
}
users {
...AccountUserTypeFragment
}
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
}
paymentForecast {
...PaymentForecastTypeFragment
}
paginatedPaymentForecast {
...PaymentForecastConnectionTypeConnectionFragment
}
referrals {
...ReferralConnectionTypeConnectionFragment
}
referralsCreated
rewards {
...RewardTypeFragment
}
activeReferralSchemes {
...ReferralSchemeTypesFragment
}
transactions {
...TransactionConnectionTypeConnectionFragment
}
provisionalTransactions {
...ProvisionalTransactionConnectionTypeConnectionFragment
}
annualStatements {
...AnnualStatementConnectionTypeConnectionFragment
}
bills {
...BillConnectionTypeConnectionFragment
}
billingOptions {
...BillingOptionsTypeFragment
}
bill {
...BillInterfaceFragment
}
directDebitInstructions {
...DirectDebitInstructionConnectionTypeConnectionFragment
}
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
}
properties {
...PropertyTypeFragment
}
allProperties {
...PropertyTypeFragment
}
property {
...PropertyTypeFragment
}
electricityBalance
gasBalance
}
}
Variables
{
"phoneNumber": "abc123",
"portfolioNumber": "abc123"
}
Response
{
"data": {
"accounts": [
{
"id": "abc123",
"number": "abc123",
"status": "PENDING",
"paymentSchedules": PaymentScheduleConnectionTypeConnection,
"users": AccountUserType,
"brand": "abc123",
"balance": 1,
"overdueBalance": 1,
"urn": "abc123",
"billingName": "abc123",
"billingSubName": "abc123",
"billingEmail": "abc123",
"billingAddress": "abc123",
"billingAddressLine1": "abc123",
"billingAddressLine2": "abc123",
"billingAddressLine3": "abc123",
"billingAddressLine4": "abc123",
"billingAddressLine5": "abc123",
"billingAddressPostcode": "abc123",
"billingCountryCode": "abc123",
"billingDeliveryPointIdentifier": "abc123",
"splitBillingAddress": ["abc123"],
"address": RichAddressType,
"portfolio": PortfolioType,
"ledgers": [LedgerType],
"metadata": [Metadata],
"canRequestRefund": true,
"requestRefundEligibility": RequestRefundEligibilityType,
"payments": AccountPaymentConnectionTypeConnection,
"repayments": AccountRepaymentConnectionTypeConnection,
"paymentPlans": PaymentPlanConnectionTypeConnection,
"paymentForecast": [PaymentForecastType],
"paginatedPaymentForecast": PaymentForecastConnectionTypeConnection,
"referrals": ReferralConnectionTypeConnection,
"referralsCreated": 1,
"rewards": [RewardType],
"activeReferralSchemes": ReferralSchemeTypes,
"transactions": TransactionConnectionTypeConnection,
"provisionalTransactions": ProvisionalTransactionConnectionTypeConnection,
"annualStatements": AnnualStatementConnectionTypeConnection,
"bills": BillConnectionTypeConnection,
"billingOptions": BillingOptionsType,
"bill": BillInterface,
"directDebitInstructions": DirectDebitInstructionConnectionTypeConnection,
"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,
"properties": [PropertyType],
"allProperties": [PropertyType],
"property": PropertyType,
"electricityBalance": "abc123",
"gasBalance": "abc123"
}
]
}
}
activeAffiliateReferralScheme
Type:ReferralSchemeType
URL:https://api.oeg-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. |
Query
query ActiveAffiliateReferralScheme($subdomain: String!) {
activeAffiliateReferralScheme(subdomain: $subdomain) {
referralUrl
referralDisplayUrl
referrerRewardAmount
referredRewardAmount
combinedRewardAmount
loyaltyPointsBonus
canBeReferred
code
referrerGivenName
referrerFamilyName
schemeType
isUsageAtCapacity
}
}
Variables
{
"subdomain": "abc123"
}
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",
"isUsageAtCapacity": true
}
}
}
activeDomesticSignupRewardScheme
Type:ReferralSchemeType
URL:https://api.oeg-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
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",
"isUsageAtCapacity": true
}
}
}
Arguments
Name | Description |
---|---|
| The market brand code. |
| The date when product must be available. |
Query
query ActiveTariffs(
$brandCode: String,
$date: Date
) {
activeTariffs(
brandCode: $brandCode,
date: $date
) {
electricityTariffs {
...ProductFragment
}
gasTariffs {
...ProductFragment
}
}
}
Variables
{
"brandCode": "abc123",
"date": "2020-01-01"
}
Arguments
Name | Description |
---|---|
| The agreement Kraken ID. |
Query
query Agreement($id: ID!) {
agreement(id: $id) {
id
product {
...ProductFragment
}
monthlyStandingCharge
netMonthlyStandingCharge
standingChargeGrossRateInformation {
...GrossRateInformationFragment
}
unitRatePerKwh
unitRateGrossRateInformation {
...GrossRateInformationFragment
}
unitRateInformation {
... on SimpleProductUnitRateInformation {
...SimpleProductUnitRateInformationFragment
}
... on TimeOfUseProductUnitRateInformation {
...TimeOfUseProductUnitRateInformationFragment
}
}
estimatedMonthlyBillInEuros
estimatedAnnualConsumption
validFrom
validTo
agreedAt
isRevoked
isActive
isTerminated
cosLossStatus
isAffectedByPriceBrake
}
}
Variables
{
"id": "abc123"
}
Response
{
"data": {
"agreement": {
"id": 1,
"product": Product,
"monthlyStandingCharge": 1.0,
"netMonthlyStandingCharge": 1.0,
"standingChargeGrossRateInformation": [GrossRateInformation],
"unitRatePerKwh": 1.0,
"unitRateGrossRateInformation": [GrossRateInformation],
"unitRateInformation": SimpleProductUnitRateInformation,
"estimatedMonthlyBillInEuros": 1.0,
"estimatedAnnualConsumption": 1,
"validFrom": "2020-01-01T00:00:00.000Z",
"validTo": "2020-01-01T00:00:00.000Z",
"agreedAt": "2020-01-01T00:00:00.000Z",
"isRevoked": true,
"isActive": true,
"isTerminated": true,
"cosLossStatus": "abc123",
"isAffectedByPriceBrake": true
}
}
}
availableProductSwitchDates
Type:[Date]
URL:https://api.oeg-kraken.energy/v1/graphql/
Get available dates for product switch.
Arguments
Name | Description |
---|---|
| Agreement ID. |
Query
query AvailableProductSwitchDates($agreementId: Int!) {
availableProductSwitchDates(agreementId: $agreementId)
}
Variables
{
"agreementId": 1
}
Response
{
"data": {
"availableProductSwitchDates": ["2020-01-01"]
}
}
backendScreen
Type:BackendScreenType
URL:https://api.oeg-kraken.energy/v1/graphql/
Get mobile screen details to render.
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
}
}
}
Variables
{
"screenId": "abc123",
"params": BackendScreenParamInputType,
"maxVersionSupported": 1
}
Response
{
"data": {
"backendScreen": ComponentListType
}
}
backendScreenEventIds
Type:[String]
URL:https://api.oeg-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.oeg-kraken.energy/v1/graphql/
Get all registered backend screen IDs.
Query
query BackendScreenIds {
backendScreenIds
}
Response
{
"data": {
"backendScreenIds": ["abc123"]
}
}
bankHolidays
Type:[Date]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns all German bank holidays for a specified year that are observed in one or more states.
Arguments
Name | Description |
---|---|
|
Query
query BankHolidays($year: Int!) {
bankHolidays(year: $year)
}
Variables
{
"year": 1
}
Response
{
"data": {
"bankHolidays": ["2020-01-01"]
}
}
bankTransferDetails
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the bank transfer details for customers to send monies.
Query
query BankTransferDetails {
bankTransferDetails {
accountHolder
iban
bic
bankName
paymentReference {
...BankTransferReferenceFragment
}
}
}
Response
{
"data": {
"bankTransferDetails": {
"accountHolder": "abc123",
"iban": "abc123",
"bic": "abc123",
"bankName": "abc123",
"paymentReference": BankTransferReference
}
}
}
batteryDevice
Type:BatteryDeviceType
URL:https://api.oeg-kraken.energy/v1/graphql/
The currently active battery device.
Query
query BatteryDevice(
$accountNumber: String!,
$propertyId: Int!
) {
batteryDevice(
accountNumber: $accountNumber,
propertyId: $propertyId
) {
krakenflexDeviceId
deviceType
provider
params {
...BatteryParamsTypeFragment
}
deviceStatus {
...DeviceStatusTypeFragment
}
chargingPreferences {
...BatteryChargingPreferencesTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"propertyId": 1
}
Response
{
"data": {
"batteryDevice": {
"krakenflexDeviceId": "abc123",
"deviceType": "BATTERIES",
"provider": "DAIKIN",
"params": BatteryParamsType,
"deviceStatus": DeviceStatusType,
"chargingPreferences": BatteryChargingPreferencesType
}
}
}
batteryVariants
URL:https://api.oeg-kraken.energy/v1/graphql/
All supported batteries and their details.
Arguments
Name | Description |
---|---|
| Only return batteries of a specific make. |
Query
query BatteryVariants($make: String) {
batteryVariants(make: $make) {
make
models {
...BatteryVariantModelsTypeFragment
}
}
}
Variables
{
"make": "abc123"
}
Response
{
"data": {
"batteryVariants": [
{
"make": "abc123",
"models": [BatteryVariantModelsType]
}
]
}
}
Arguments
Name | Description |
---|---|
| The business ID. |
Query
query Business($id: ID!) {
business(id: $id) {
name
number
businessType
linkedAccountNumber
}
}
Variables
{
"id": "abc123"
}
Response
{
"data": {
"business": {
"name": "abc123",
"number": "abc123",
"businessType": "SOLE_TRADER",
"linkedAccountNumber": "abc123"
}
}
}
chargePointDevices
URL:https://api.oeg-kraken.energy/v1/graphql/
All charge point devices.
Deprecated
The 'chargePointDevices' field is deprecated.
Please use chargePointVariants instead of this query.
- Marked as deprecated on 2023-05-10.
- Scheduled for removal on or after 2024-01-01.
Query
query ChargePointDevices {
chargePointDevices {
make
models {
...ChargePointModelsTypeFragment
}
}
}
Response
{
"data": {
"chargePointDevices": [
{
"make": "abc123",
"models": [ChargePointModelsType]
}
]
}
}
Query
query ChargePointVariants {
chargePointVariants {
make
models {
...ChargePointVariantModelTypeFragment
}
}
}
Response
{
"data": {
"chargePointVariants": [
{
"make": "abc123",
"models": [ChargePointVariantModelType]
}
]
}
}
cityByPostcode
Type:String
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns the respective city of a given postcode. An invalid postcode will return an empty string.
Arguments
Name | Description |
---|---|
|
Query
query CityByPostcode($postcode: String!) {
cityByPostcode(postcode: $postcode)
}
Variables
{
"postcode": "abc123"
}
Response
{
"data": {
"cityByPostcode": "abc123"
}
}
completedDispatches
Type:[UpsideDispatchType]
URL:https://api.oeg-kraken.energy/v1/graphql/
All completed device dispatches 12 hours behind, in reverse time order.
Arguments
Name | Description |
---|---|
|
Query
query CompletedDispatches($accountNumber: String!) {
completedDispatches(accountNumber: $accountNumber) {
start
end
startDt
endDt
deltaKwh
delta
meta {
...UpsideDispatchMetaTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"completedDispatches": [
{
"start": "2020-01-01T00:00:00.000Z",
"end": "2020-01-01T00:00:00.000Z",
"startDt": "abc123",
"endDt": "abc123",
"deltaKwh": 1,
"delta": 1.0,
"meta": UpsideDispatchMetaType
}
]
}
}
Query
query ContributionSchemes {
contributionSchemes {
id
code
displayName
taxable
acceptingContributions
}
}
Response
{
"data": {
"contributionSchemes": [
{
"id": "abc123",
"code": "abc123",
"displayName": "abc123",
"taxable": true,
"acceptingContributions": true
}
]
}
}
costOfCharge
Type:[CostOfChargeType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Aggregated cost of charge for an EV device.
Arguments
Name | Description |
---|---|
| |
| Frequency by day, week, month or year. |
| The date up to which data should be relative to. |
| The start date of the results required. Overrides report date (end date) if provided. |
Query
query CostOfCharge(
$accountNumber: String!,
$frequency: DataFrequency!,
$reportDate: Date,
$startDate: Date
) {
costOfCharge(
accountNumber: $accountNumber,
frequency: $frequency,
reportDate: $reportDate,
startDate: $startDate
) {
costOfChargeId
krakenflexDeviceId
reportDate
isSmartCharge
totalConsumption
totalCostExclTax
totalCostInclTax
}
}
Variables
{
"accountNumber": "abc123",
"frequency": "DAILY",
"reportDate": "2020-01-01",
"startDate": "2020-01-01"
}
Response
{
"data": {
"costOfCharge": [
{
"costOfChargeId": "abc123",
"krakenflexDeviceId": "abc123",
"reportDate": "2020-01-01",
"isSmartCharge": true,
"totalConsumption": 1.0,
"totalCostExclTax": 1.0,
"totalCostInclTax": 1.0
}
]
}
}
dashboardScreen
Type:Dashboard
URL:https://api.oeg-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.
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"
}
}
}
defaultElectricitySuppliers
Type:[DefaultElectricitySupplierType!]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns the default electricity suppliers and their tariffs for a given postcode from the getAG API.
Note that there is usually only one default supplier for a given postcode, but there may be multiple default suppliers for some postcodes.
Arguments
Name | Description |
---|---|
| The customer's postcode. |
| The customer's estimated annual electricity consumption in kWh. |
Query
query DefaultElectricitySuppliers(
$postcode: String!,
$annualConsumption: Int!
) {
defaultElectricitySuppliers(
postcode: $postcode,
annualConsumption: $annualConsumption
) {
supplierName
supplierNumber
tariffs {
...DefaultElectricitySupplierTariffTypeFragment
}
}
}
Variables
{
"postcode": "abc123",
"annualConsumption": 1
}
Response
{
"data": {
"defaultElectricitySuppliers": [
{
"supplierName": "abc123",
"supplierNumber": "abc123",
"tariffs": DefaultElectricitySupplierTariffType
}
]
}
}
defaultPaymentInstruction
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the default payment instruction for the account's main ledger.
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
sortCode
iban
accountHolder
instructionType
cardPaymentNetwork
cardExpiryMonth
cardExpiryYear
bankCode
accountType
validFrom
vendor
cardNumber
cardType
maskedAccountIdentifier
}
}
Variables
{
"accountNumber": "abc123",
"instructionType": "BPAY"
}
Response
{
"data": {
"defaultPaymentInstruction": {
"id": "abc123",
"status": "abc123",
"sortCode": "abc123",
"iban": "abc123",
"accountHolder": "abc123",
"instructionType": "abc123",
"cardPaymentNetwork": "abc123",
"cardExpiryMonth": 1,
"cardExpiryYear": 1,
"bankCode": "abc123",
"accountType": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"vendor": "abc123",
"cardNumber": "abc123",
"cardType": "abc123",
"maskedAccountIdentifier": "abc123"
}
}
}
defaultRawScore
Type:Int
URL:https://api.oeg-kraken.energy/v1/graphql/
Get default raw score for a customer feedback form.
Arguments
Name | Description |
---|---|
|
Query
query DefaultRawScore($formId: Int!) {
defaultRawScore(formId: $formId)
}
Variables
{
"formId": 1
}
Response
{
"data": {
"defaultRawScore": 1
}
}
devices
Type:[SmartFlexDeviceInterface!]
URL:https://api.oeg-kraken.energy/v1/graphql/
A list of devices registered to an account.
Arguments
Name | Description |
---|---|
| The account number, e.g. A-12345678. |
| Only list devices registered to this property. |
| Only list the device with this ID. |
| Only list the device with this integration device ID. |
Query
query Devices(
$accountNumber: String!,
$propertyId: ID,
$deviceId: String,
$integrationDeviceId: String
) {
devices(
accountNumber: $accountNumber,
propertyId: $propertyId,
deviceId: $deviceId,
integrationDeviceId: $integrationDeviceId
) {
id
name
deviceType
provider
integrationDeviceId
status {
...SmartFlexDeviceStatusInterfaceFragment
}
alerts {
...SmartFlexDeviceAlertInterfaceFragment
}
onboardingWizard {
...SmartFlexOnboardingWizardFragment
}
preferences {
...SmartFlexDevicePreferencesInterfaceFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"propertyId": "abc123",
"deviceId": "abc123",
"integrationDeviceId": "abc123"
}
Response
{
"data": {
"devices": [
{
"id": "abc123",
"name": "abc123",
"deviceType": "BATTERIES",
"provider": "DAIKIN",
"integrationDeviceId": "abc123",
"status": SmartFlexDeviceStatusInterface,
"alerts": SmartFlexDeviceAlertInterface,
"onboardingWizard": SmartFlexOnboardingWizard,
"preferences": SmartFlexDevicePreferencesInterface
}
]
}
}
domesticAccountReferralRewardScheme
Type:ReferralSchemeType
URL:https://api.oeg-kraken.energy/v1/graphql/
Return a 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
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",
"isUsageAtCapacity": true
}
}
}
domesticJoiningRewardScheme
Type:ReferralSchemeType
URL:https://api.oeg-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
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",
"isUsageAtCapacity": true
}
}
}
domesticSignupRewardScheme
Type:ReferralSchemeType
URL:https://api.oeg-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
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",
"isUsageAtCapacity": true
}
}
}
electricVehicles
URL:https://api.oeg-kraken.energy/v1/graphql/
All electric vehicle types and their details.
Arguments
Name | Description |
---|---|
| Only return vehicle types for the specified make. |
| Only return vehicle types supported by the specified provider, e.g. Tesla. |
| Only return vehicles that are currently integrated. |
Query
query ElectricVehicles(
$make: String,
$supportedProvider: ProviderChoices,
$isIntegrationLive: Boolean
) {
electricVehicles(
make: $make,
supportedProvider: $supportedProvider,
isIntegrationLive: $isIntegrationLive
) {
make
models {
...ElectricVehicleModelTypeFragment
}
}
}
Variables
{
"make": "abc123",
"supportedProvider": "DAIKIN",
"isIntegrationLive": true
}
Response
{
"data": {
"electricVehicles": [
{
"make": "abc123",
"models": [ElectricVehicleModelType]
}
]
}
}
electricityMeterReadings
Type:ElectricityMeterReadingConnectionTypeConnection
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch electricity meter readings for a given account and meter.
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 |
---|---|
| |
| |
| |
| |
| |
| |
| |
|
Query
query ElectricityMeterReadings(
$accountNumber: String!,
$meterId: ID!,
$typesOfRead: [TypeOfRead],
$readingOrigins: [ReadingOrigin],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
electricityMeterReadings(
accountNumber: $accountNumber,
meterId: $meterId,
typesOfRead: $typesOfRead,
readingOrigins: $readingOrigins,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ElectricityMeterReadingConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"meterId": "abc123",
"typesOfRead": "METER_INSTALLED",
"readingOrigins": "CUSTOMER",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"electricityMeterReadings": {
"pageInfo": PageInfo,
"edges": ElectricityMeterReadingConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
electricityMeterReadingsByRegister
Type:ElectricityMeterForReadingType
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch electricity meter readings for a given account and meter, split up by register.
Query
query ElectricityMeterReadingsByRegister(
$accountNumber: String!,
$meterId: ID!
) {
electricityMeterReadingsByRegister(
accountNumber: $accountNumber,
meterId: $meterId
) {
registers {
...ElectricityRegisterForReadingTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"meterId": "abc123"
}
Response
{
"data": {
"electricityMeterReadingsByRegister": {
"registers": [ElectricityRegisterForReadingType]
}
}
}
electricityMeters
Type:ElectricityMeterConnectionTypeConnection
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch electricity meters for a given account and MeLo.
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 |
---|---|
| |
| |
| |
| |
| |
|
Query
query ElectricityMeters(
$accountNumber: String!,
$meloNumber: String!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
electricityMeters(
accountNumber: $accountNumber,
meloNumber: $meloNumber,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ElectricityMeterConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"meloNumber": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"electricityMeters": {
"pageInfo": PageInfo,
"edges": ElectricityMeterConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
electricitySuppliers
Type:[SupplierType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns all the electricity suppliers directly from the getAG API.
Query
query ElectricitySuppliers {
electricitySuppliers {
brandId
supplierId
supplierName
supplierNumber
}
}
Response
{
"data": {
"electricitySuppliers": [
{
"brandId": 1,
"supplierId": 1,
"supplierName": "abc123",
"supplierNumber": "abc123"
}
]
}
}
eligibleDeviceTypes
URL:https://api.oeg-kraken.energy/v1/graphql/
A list of device types that are eligible for registration.
Arguments
Name | Description |
---|---|
| The account number, e.g. A-12345678. |
Query
query EligibleDeviceTypes($accountNumber: String!) {
eligibleDeviceTypes(accountNumber: $accountNumber)
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"eligibleDeviceTypes": "BATTERIES"
}
}
embeddedNetwork
Type:EmbeddedNetworkType
URL:https://api.oeg-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.oeg-kraken.energy/v1/graphql/
The current energy generation mix.
Query
query EnergyMixData {
energyMixData {
carbonIntensityIndex
}
}
Response
{
"data": {
"energyMixData": {
"carbonIntensityIndex": "abc123"
}
}
}
enodeLinkSession
Type:EnodeLinkSessionType
URL:https://api.oeg-kraken.energy/v1/graphql/
The user specific Enode link session details.
Arguments
Name | Description |
---|---|
| |
|
Query
query EnodeLinkSession(
$accountNumber: String,
$vendor: EnodeVendors
) {
enodeLinkSession(
accountNumber: $accountNumber,
vendor: $vendor
) {
linkState
linkUrl
}
}
Variables
{
"accountNumber": "abc123",
"vendor": "AUDI"
}
Response
{
"data": {
"enodeLinkSession": {
"linkState": "abc123",
"linkUrl": "abc123"
}
}
}
estimatedElectricityConsumption
Type:Decimal
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch the estimated electricity consumption for a given MeLo at a given time period in kWh.
Arguments
Name | Description |
---|---|
| The account number. |
| The MeLo number. |
| The start date for calculating the estimated electricity consumption. |
| The end date (inclusive) for calculating the estimated electricity consumption. |
Query
query EstimatedElectricityConsumption(
$accountNumber: String!,
$meloNumber: String!,
$startDate: Date!,
$endDate: Date!
) {
estimatedElectricityConsumption(
accountNumber: $accountNumber,
meloNumber: $meloNumber,
startDate: $startDate,
endDate: $endDate
)
}
Variables
{
"accountNumber": "abc123",
"meloNumber": "abc123",
"startDate": "2020-01-01",
"endDate": "2020-01-01"
}
Response
{
"data": {
"estimatedElectricityConsumption": 1.0
}
}
estimatedGasConsumption
Type:Decimal
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch the estimated gas consumption for a given MeLo at a given time period in kWh.
Arguments
Name | Description |
---|---|
| The account number. |
| The MeLo number. |
| The start date for calculating the estimated gas consumption. |
| The end date (inclusive) for calculating the estimated gas consumption. |
Query
query EstimatedGasConsumption(
$accountNumber: String!,
$meloNumber: String!,
$startDate: Date!,
$endDate: Date!
) {
estimatedGasConsumption(
accountNumber: $accountNumber,
meloNumber: $meloNumber,
startDate: $startDate,
endDate: $endDate
)
}
Variables
{
"accountNumber": "abc123",
"meloNumber": "abc123",
"startDate": "2020-01-01",
"endDate": "2020-01-01"
}
Response
{
"data": {
"estimatedGasConsumption": 1.0
}
}
fanClubStatus
Type:[FanClubStatus]
URL:https://api.oeg-kraken.energy/v1/graphql/
Get current status, historic discounts and future projections for a Fan Club source.
Arguments
Name | Description |
---|---|
| The account number. |
| The ID of the property. |
Query
query FanClubStatus(
$accountNumber: String,
$propertyId: Int
) {
fanClubStatus(
accountNumber: $accountNumber,
propertyId: $propertyId
) {
discountSource
name
location
windFarm
accountNumbers
propertyIds
catchments
thresholds {
...ThresholdFragment
}
current {
...DiscountDataFragment
}
historic {
...DiscountDataFragment
}
forecast {
...DiscountForecastFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"propertyId": 1
}
Response
{
"data": {
"fanClubStatus": [
{
"discountSource": "abc123",
"name": "abc123",
"location": "abc123",
"windFarm": "abc123",
"accountNumbers": "abc123",
"propertyIds": 1,
"catchments": "abc123",
"thresholds": Threshold,
"current": DiscountData,
"historic": DiscountData,
"forecast": DiscountForecast
}
]
}
}
gasMeterReadings
Type:GasMeterReadingConnectionTypeConnection
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch gas meter readings for a given account and meter.
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 |
---|---|
| |
| |
| |
| |
| |
| |
| |
|
Query
query GasMeterReadings(
$accountNumber: String!,
$meterId: ID!,
$typesOfRead: [TypeOfRead],
$readingOrigins: [ReadingOrigin],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
gasMeterReadings(
accountNumber: $accountNumber,
meterId: $meterId,
typesOfRead: $typesOfRead,
readingOrigins: $readingOrigins,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...GasMeterReadingConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"meterId": "abc123",
"typesOfRead": "METER_INSTALLED",
"readingOrigins": "CUSTOMER",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"gasMeterReadings": {
"pageInfo": PageInfo,
"edges": GasMeterReadingConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
gasMeterReadingsByRegister
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch gas meter readings for a given account and meter, split up by register.
Query
query GasMeterReadingsByRegister(
$accountNumber: String!,
$meterId: ID!
) {
gasMeterReadingsByRegister(
accountNumber: $accountNumber,
meterId: $meterId
) {
registers {
...GasRegisterForReadingTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"meterId": "abc123"
}
Response
{
"data": {
"gasMeterReadingsByRegister": {
"registers": [GasRegisterForReadingType]
}
}
}
gasMeters
Type:GasMeterConnectionTypeConnection
URL:https://api.oeg-kraken.energy/v1/graphql/
Fetch gas meters for a given account and MeLo.
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 |
---|---|
| |
| |
| |
| |
| |
|
Query
query GasMeters(
$accountNumber: String!,
$meloNumber: String!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
gasMeters(
accountNumber: $accountNumber,
meloNumber: $meloNumber,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...GasMeterConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"meloNumber": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"gasMeters": {
"pageInfo": PageInfo,
"edges": GasMeterConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
gasSuppliers
Type:[SupplierType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns all the gas suppliers directly from the getAG API.
Query
query GasSuppliers {
gasSuppliers {
brandId
supplierId
supplierName
supplierNumber
}
}
Response
{
"data": {
"gasSuppliers": [
{
"brandId": 1,
"supplierId": 1,
"supplierName": "abc123",
"supplierNumber": "abc123"
}
]
}
}
getQuoteByCode
Type:CreateQuoteOutput
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns the calculated quotes related to a quote request.
Arguments
Name | Description |
---|---|
| The ID of the quote request. |
Query
query GetQuoteByCode($code: UUID!) {
getQuoteByCode(code: $code) {
code
electricityQuote {
...ElectricityQuoteFragment
}
gasQuote {
...GasQuoteFragment
}
}
}
Variables
{
"code": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}
Response
{
"data": {
"getQuoteByCode": {
"code": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"electricityQuote": ElectricityQuote,
"gasQuote": GasQuote
}
}
}
getQuotedProductById
Type:QuotedProduct
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns a quoted product by id.
Arguments
Name | Description |
---|---|
|
Query
query GetQuotedProductById($id: Int) {
getQuotedProductById(id: $id) {
id
product {
...ProductFragment
}
wasSelected
clientParams {
...QuotedProductClientParamsFragment
}
retentionNumberOfValidDays
retentionOfferGenerationDate
isValidForRetentionProductSwitch
}
}
Variables
{
"id": 1
}
Response
{
"data": {
"getQuotedProductById": {
"id": 1,
"product": Product,
"wasSelected": true,
"clientParams": QuotedProductClientParams,
"retentionNumberOfValidDays": 1,
"retentionOfferGenerationDate": "2020-01-01",
"isValidForRetentionProductSwitch": true
}
}
}
goodsProducts
Type:GoodsProductConnectionTypeConnection
URL:https://api.oeg-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.oeg-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
}
marketParams
clientParams
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"goodsPurchases": [
{
"code": "abc123",
"ledgerId": "abc123",
"ledgerNumber": "abc123",
"goodsSaleItems": [GoodsSaleItem],
"goodsGrants": [GoodsGrant],
"marketParams": {"key": "value"},
"clientParams": {"key": "value"}
}
]
}
}
goodsQuotes
Type:[GoodsQuote]
URL:https://api.oeg-kraken.energy/v1/graphql/
List quotes given an account number or retrieve a Goods quote given a quote code.
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
}
]
}
}
inkConversation
Type:InkConversation!
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the Ink conversation for a given account.
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
}
events {
...InkConversationEventsConnectionFragment
}
buckets {
...InkBucketFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"conversationRelayId": "abc123"
}
Response
{
"data": {
"inkConversation": {
"id": "abc123",
"status": "OPEN",
"contactChannelIdentities": InkContactChannelIdentities,
"accountUsers": [AccountUserType],
"events": InkConversationEventsConnection,
"buckets": [InkBucket]
}
}
}
inkMessage
Type:InkMessage!
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the content for a given message.
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 InkPost {
...InkPostFragment
}
... on InkGenericMessage {
...InkGenericMessageFragment
}
}
}
Variables
{
"messageRelayId": "abc123"
}
Response
{
"data": {
"inkMessage": InkEmail
}
}
isPasswordResetTokenValid
Type:Boolean
URL:https://api.oeg-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
}
}
krakenVersion
Type:KrakenVersionType
URL:https://api.oeg-kraken.energy/v1/graphql/
The current version of kraken.
Query
query KrakenVersion {
krakenVersion {
number
SHA
}
}
Response
{
"data": {
"krakenVersion": {
"number": "abc123",
"SHA": "abc123"
}
}
}
Arguments
Name | Description |
---|---|
| The identifier of the lead to query. |
| The key the a funnel-specific value you wish to obtain. |
Query
query LeadValueByKey(
$leadId: ID,
$key: String
) {
leadValueByKey(
leadId: $leadId,
key: $key
)
}
Variables
{
"leadId": "abc123",
"key": "abc123"
}
Response
{
"data": {
"leadValueByKey": "abc123"
}
}
livePaymentAdequacyCalculation
Type:LivePaymentAdequacyCalculation
URL:https://api.oeg-kraken.energy/v1/graphql/
Get payment adequacy data with an up to date calculation.
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"
}
}
}
loyaltyPointLedgers
Type:[LoyaltyPointLedgerEntryType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the Loyalty Point ledger entries for the passed user.
Query
query LoyaltyPointLedgers {
loyaltyPointLedgers {
id
ledgerType
value
balanceBroughtForward
balanceCarriedForward
reasonCode
postedAt
accountNumber
}
}
Response
{
"data": {
"loyaltyPointLedgers": [
{
"id": "abc123",
"ledgerType": "abc123",
"value": "abc123",
"balanceBroughtForward": "abc123",
"balanceCarriedForward": "abc123",
"reasonCode": "abc123",
"postedAt": "2020-01-01T00:00:00.000Z",
"accountNumber": "abc123"
}
]
}
}
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.oeg-kraken.energy/v1/graphql/
Metadata for a linked object with key.
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"}
}
}
}
node
Type:Node
URL:https://api.oeg-kraken.energy/v1/graphql/
Represents an individual object/resource in the API.
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"
}
}
}
ocppConnection
Type:OCPPConnectionType
URL:https://api.oeg-kraken.energy/v1/graphql/
To confirm whether a device is connected to OCPP.
Arguments
Name | Description |
---|---|
|
Query
query OcppConnection($accountNumber: String!) {
ocppConnection(accountNumber: $accountNumber) {
isConnected
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"ocppConnection": {
"isConnected": true
}
}
}
ocppDetails
Type:OCPPDetailsType
URL:https://api.oeg-kraken.energy/v1/graphql/
The user specific generated OCPP details.
Arguments
Name | Description |
---|---|
|
Query
query OcppDetails($accountNumber: String!) {
ocppDetails(accountNumber: $accountNumber) {
url
username
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"ocppDetails": {
"url": "abc123",
"username": "abc123"
}
}
}
passwordValidatorHelpTexts
Type:[String]
URL:https://api.oeg-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"]
}
}
paymentInstructionByLedger
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the payment instruction for the account's supplementary ledger.
Query
query PaymentInstructionByLedger(
$accountNumber: String!,
$supplyType: String!
) {
paymentInstructionByLedger(
accountNumber: $accountNumber,
supplyType: $supplyType
) {
id
status
sortCode
iban
accountHolder
instructionType
cardPaymentNetwork
cardExpiryMonth
cardExpiryYear
bankCode
accountType
validFrom
vendor
cardNumber
cardType
maskedAccountIdentifier
}
}
Variables
{
"accountNumber": "abc123",
"supplyType": "abc123"
}
Response
{
"data": {
"paymentInstructionByLedger": {
"id": "abc123",
"status": "abc123",
"sortCode": "abc123",
"iban": "abc123",
"accountHolder": "abc123",
"instructionType": "abc123",
"cardPaymentNetwork": "abc123",
"cardExpiryMonth": 1,
"cardExpiryYear": 1,
"bankCode": "abc123",
"accountType": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z",
"vendor": "abc123",
"cardNumber": "abc123",
"cardType": "abc123",
"maskedAccountIdentifier": "abc123"
}
}
}
paymentRequests
Type:PaymentRequestsType
URL:https://api.oeg-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
}
}
}
plannedDispatches
Type:[UpsideDispatchType]
URL:https://api.oeg-kraken.energy/v1/graphql/
All planned device dispatches 24 hours ahead, (usually) in time order.
Arguments
Name | Description |
---|---|
|
Query
query PlannedDispatches($accountNumber: String!) {
plannedDispatches(accountNumber: $accountNumber) {
start
end
startDt
endDt
deltaKwh
delta
meta {
...UpsideDispatchMetaTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"plannedDispatches": [
{
"start": "2020-01-01T00:00:00.000Z",
"end": "2020-01-01T00:00:00.000Z",
"startDt": "abc123",
"endDt": "abc123",
"deltaKwh": 1,
"delta": 1.0,
"meta": UpsideDispatchMetaType
}
]
}
}
portfolio
Type:PortfolioType
URL:https://api.oeg-kraken.energy/v1/graphql/
Get details about a portfolio.
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
}
}
}
possibleErrors
URL:https://api.oeg-kraken.energy/v1/graphql/
Possible errors of the requested query/mutation.
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
possibleErrorsList {
...PossibleErrorTypeFragment
}
}
}
Variables
{
"input": PossibleErrorsInputType
}
Response
{
"data": {
"possibleErrors": {
"name": "abc123",
"type": "query",
"authErrors": true,
"possibleErrorsList": [PossibleErrorType]
}
}
}
propertiesSearch
URL:https://api.oeg-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.oeg-kraken.energy/v1/graphql/
A property with the given ID. Usually associated with supply points.
Arguments
Name | Description |
---|---|
| The property ID. |
Query
query Property($id: ID!) {
property(id: $id) {
id
address
richAddress {
...PropertyRichAddressTypeFragment
}
splitAddress
occupancyPeriods {
...OccupancyPeriodTypeFragment
}
coordinates {
...CoordinatesTypeFragment
}
embeddedNetwork {
...EmbeddedNetworkTypeFragment
}
measurements {
...MeasurementConnectionFragment
}
postcode
electricityMalos {
...MaLoFragment
}
gasMalos {
...MaLoFragment
}
}
}
Variables
{
"id": "abc123"
}
Response
{
"data": {
"property": {
"id": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"measurements": MeasurementConnection,
"postcode": "abc123",
"electricityMalos": [MaLo],
"gasMalos": [MaLo]
}
}
}
propertySearch
Type:[PropertyType]
URL:https://api.oeg-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
address
richAddress {
...PropertyRichAddressTypeFragment
}
splitAddress
occupancyPeriods {
...OccupancyPeriodTypeFragment
}
coordinates {
...CoordinatesTypeFragment
}
embeddedNetwork {
...EmbeddedNetworkTypeFragment
}
measurements {
...MeasurementConnectionFragment
}
postcode
electricityMalos {
...MaLoFragment
}
gasMalos {
...MaLoFragment
}
}
}
Variables
{
"searchTerm": "abc123"
}
Response
{
"data": {
"propertySearch": [
{
"id": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"measurements": MeasurementConnection,
"postcode": "abc123",
"electricityMalos": [MaLo],
"gasMalos": [MaLo]
}
]
}
}
providerAuthDetails
URL:https://api.oeg-kraken.energy/v1/graphql/
Auth details (e.g. OAuth 2.0 URI) for the provider (if available).
Arguments
Name | Description |
---|---|
| The provider to get the auth details for. |
| The device type to get the auth details for (as providers may support multiple). |
| The client type the request originated from. Used when oauth_uri is different between web and app. |
| The account number that will be associated with the device. Required for some providers. |
| The ID of the property the device belongs to. |
Query
query ProviderAuthDetails(
$provider: ProviderChoices!,
$deviceType: KrakenFlexDeviceTypes!,
$clientType: ClientType,
$accountNumber: String,
$propertyId: Int
) {
providerAuthDetails(
provider: $provider,
deviceType: $deviceType,
clientType: $clientType,
accountNumber: $accountNumber,
propertyId: $propertyId
) {
oauthUri
}
}
Variables
{
"provider": "DAIKIN",
"deviceType": "BATTERIES",
"clientType": "APP",
"accountNumber": "abc123",
"propertyId": 1
}
Response
{
"data": {
"providerAuthDetails": {
"oauthUri": "abc123"
}
}
}
providerVirtualKeyDetails
Type:ProviderVirtualKeyDetailsType
URL:https://api.oeg-kraken.energy/v1/graphql/
Virtual key details (e.g. certificate public key) for the provider (if available).
Arguments
Name | Description |
---|---|
| The provider to get the virtual key details for. |
| The device type to get the virtual key details for (as providers may support multiple). |
Query
query ProviderVirtualKeyDetails(
$provider: ProviderChoices!,
$deviceType: KrakenFlexDeviceTypes!
) {
providerVirtualKeyDetails(
provider: $provider,
deviceType: $deviceType
) {
virtualKeyName
virtualKeyUri
}
}
Variables
{
"provider": "DAIKIN",
"deviceType": "BATTERIES"
}
Response
{
"data": {
"providerVirtualKeyDetails": {
"virtualKeyName": "abc123",
"virtualKeyUri": "abc123"
}
}
}
question
Type:String
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the customer feedback survey question.
Arguments
Name | Description |
---|---|
|
Query
query Question($formId: Int!) {
question(formId: $formId)
}
Variables
{
"formId": 1
}
Response
{
"data": {
"question": "abc123"
}
}
quoteinputparams
Type:[QuoteInputParams]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns the input parameters required to generate a quote.
Arguments
Name | Description |
---|---|
| |
| |
| |
| |
| |
|
Query
query Quoteinputparams(
$postcode: String!,
$city: String,
$longCity: String,
$street: String,
$houseNumber: String,
$validFrom: DateTime
) {
quoteinputparams(
postcode: $postcode,
city: $city,
longCity: $longCity,
street: $street,
houseNumber: $houseNumber,
validFrom: $validFrom
) {
postcode
city
street
houseNumber
gasNetworkOperatorNumber
gasNetworkOperatorId
gasNetworkOperatorName
electricityNetworkOperatorNumber
electricityNetworkOperatorId
electricityNetworkOperatorName
supplierId
tariffId
}
}
Variables
{
"postcode": "abc123",
"city": "abc123",
"longCity": "abc123",
"street": "abc123",
"houseNumber": "abc123",
"validFrom": "2020-01-01T00:00:00.000Z"
}
Response
{
"data": {
"quoteinputparams": [
{
"postcode": "abc123",
"city": "abc123",
"street": "abc123",
"houseNumber": "abc123",
"gasNetworkOperatorNumber": "abc123",
"gasNetworkOperatorId": "abc123",
"gasNetworkOperatorName": "abc123",
"electricityNetworkOperatorNumber": "abc123",
"electricityNetworkOperatorId": "abc123",
"electricityNetworkOperatorName": "abc123",
"supplierId": "abc123",
"tariffId": "abc123"
}
]
}
}
rateLimit
Type:RateLimitInformation
URL:https://api.oeg-kraken.energy/v1/graphql/
Information about rate limit for viewer.
Deprecated
The 'rateLimit' field is deprecated.
`rateLimit` has been replaced by 'rateLimitInfo', which contains more detailed info about rate limit than the former one
- Marked as deprecated on 2024-07-17.
- Scheduled for removal on or after 2025-01-01.
Query
query RateLimit {
rateLimit {
limit
remainingPoints
usedPoints
}
}
Response
{
"data": {
"rateLimit": {
"limit": 1,
"remainingPoints": 1,
"usedPoints": 1
}
}
}
rateLimitInfo
Type:CombinedRateLimitInformation
URL:https://api.oeg-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
}
}
}
registeredKrakenflexDevice
Type:KrakenFlexDeviceType
URL:https://api.oeg-kraken.energy/v1/graphql/
A device registered with KrakenFlex for a given account.
Deprecated
The 'registeredKrakenflexDevice' field is deprecated.
Please use 'devices' instead.
- Marked as deprecated on 2024-04-23.
- Scheduled for removal on or after 2024-11-01.
Arguments
Name | Description |
---|---|
|
Query
query RegisteredKrakenflexDevice($accountNumber: String!) {
registeredKrakenflexDevice(accountNumber: $accountNumber) {
krakenflexDeviceId
provider
vehicleMake
vehicleModel
vehicleBatterySizeInKwh
chargePointMake
chargePointModel
chargePointPowerInKw
status
suspended
hasToken
createdAt
stateOfChargeLimit {
...StateOfChargeLimitFragment
}
testDispatchFailureReason
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"registeredKrakenflexDevice": {
"krakenflexDeviceId": "abc123",
"provider": "DAIKIN",
"vehicleMake": "abc123",
"vehicleModel": "abc123",
"vehicleBatterySizeInKwh": 1.0,
"chargePointMake": "abc123",
"chargePointModel": "abc123",
"chargePointPowerInKw": 1.0,
"status": "abc123",
"suspended": true,
"hasToken": true,
"createdAt": "2020-01-01T00:00:00.000Z",
"stateOfChargeLimit": StateOfChargeLimit,
"testDispatchFailureReason": "NONE"
}
}
}
retentionQuote
Type:RetentionQuoteType
URL:https://api.oeg-kraken.energy/v1/graphql/
The quoted products already offered to the customer for retention.
Arguments
Name | Description |
---|---|
|
Query
query RetentionQuote($input: RetentionQuoteInput!) {
retentionQuote(input: $input) {
quotedProductIds
quotedProductSwitchUrl
quotedProductSwitchExpiryDate
}
}
Variables
{
"input": RetentionQuoteInput
}
Response
{
"data": {
"retentionQuote": {
"quotedProductIds": ["abc123"],
"quotedProductSwitchUrl": "abc123",
"quotedProductSwitchExpiryDate": "abc123"
}
}
}
smartFlexOnboardingWizards
Type:[SmartFlexOnboardingWizard!]
URL:https://api.oeg-kraken.energy/v1/graphql/
A list of wizards for onboarding devices for an account and property.
Arguments
Name | Description |
---|---|
| The account number, e.g. A-12345678. |
| Only list wizards for this property. |
| To get a specific wizard by ID, if it exists. |
| Include cancelled wizards. |
| Include completed wizards. |
Query
query SmartFlexOnboardingWizards(
$accountNumber: String!,
$propertyId: Int,
$wizardId: ID,
$includeCancelled: Boolean,
$includeCompleted: Boolean
) {
smartFlexOnboardingWizards(
accountNumber: $accountNumber,
propertyId: $propertyId,
wizardId: $wizardId,
includeCancelled: $includeCancelled,
includeCompleted: $includeCompleted
) {
id
backendScreen {
... on ComponentListType {
...ComponentListTypeFragment
}
... on GenericBackendScreen {
...GenericBackendScreenFragment
}
... on Dashboard {
...DashboardFragment
}
}
currentStep {
...SmartFlexOnboardingStepInterfaceFragment
}
completedSteps {
...SmartFlexOnboardingStepInterfaceFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"propertyId": 1,
"wizardId": "abc123",
"includeCancelled": true,
"includeCompleted": true
}
Response
{
"data": {
"smartFlexOnboardingWizards": [
{
"id": "abc123",
"backendScreen": ComponentListType,
"currentStep": SmartFlexOnboardingStepInterface,
"completedSteps": SmartFlexOnboardingStepInterface
}
]
}
}
taskResult
Type:TaskResult
URL:https://api.oeg-kraken.energy/v1/graphql/
Get the status of a background task.
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.oeg-kraken.energy/v1/graphql/
Get the active terms and conditions for a product.
Arguments
Name | Description |
---|---|
|
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"
}
}
}
termsandconditions
Type:OEDETermsAndConditionsType
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns the terms and conditions based on the code and version. If a brand code is provided without version numbers, the latest terms and conditions are returned.
Query
query Termsandconditions(
$brandCode: String,
$versionMajor: Int,
$versionMinor: Int
) {
termsandconditions(
brandCode: $brandCode,
versionMajor: $versionMajor,
versionMinor: $versionMinor
) {
text
createdAt
name
pdfUrl
brandCode
markdown
html
version
effectiveFrom
}
}
Variables
{
"brandCode": "abc123",
"versionMajor": 1,
"versionMinor": 1
}
Response
{
"data": {
"termsandconditions": {
"text": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"name": "abc123",
"pdfUrl": "abc123",
"brandCode": "abc123",
"markdown": "abc123",
"html": "abc123",
"version": "abc123",
"effectiveFrom": "2020-01-01T00:00:00.000Z"
}
}
}
termsandconditionsforproduct
Type:[OEDETermsAndConditionsType]
URL:https://api.oeg-kraken.energy/v1/graphql/
Returns a list of the active terms and conditions for a product.
Arguments
Name | Description |
---|---|
| The code of the product we are interested in. |
Query
query Termsandconditionsforproduct($productCode: String!) {
termsandconditionsforproduct(productCode: $productCode) {
text
createdAt
name
pdfUrl
brandCode
markdown
html
version
effectiveFrom
}
}
Variables
{
"productCode": "abc123"
}
Response
{
"data": {
"termsandconditionsforproduct": [
{
"text": "abc123",
"createdAt": "2020-01-01T00:00:00.000Z",
"name": "abc123",
"pdfUrl": "abc123",
"brandCode": "abc123",
"markdown": "abc123",
"html": "abc123",
"version": "abc123",
"effectiveFrom": "2020-01-01T00:00:00.000Z"
}
]
}
}
userVehicles
Type:[UserVehiclesType]
URL:https://api.oeg-kraken.energy/v1/graphql/
A list of vehicles available to the user.
Note: If the API returns an empty list, there might be a delay between the vehicle being registered in the provider's system, and data being fetched from the vehicle's manufacturer. In such cases, the query should be retried after a few seconds.
Arguments
Name | Description |
---|---|
| |
| The provider used to authenticate the device (default Enode). |
| The authentication details required given the chosen provider. |
Query
query UserVehicles(
$accountNumber: String,
$supportedProvider: ProviderChoices,
$authentication: AuthenticationInput
) {
userVehicles(
accountNumber: $accountNumber,
supportedProvider: $supportedProvider,
authentication: $authentication
) {
vehicleId
information {
...VehicleInformationTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123",
"supportedProvider": "DAIKIN",
"authentication": AuthenticationInput
}
Response
{
"data": {
"userVehicles": [
{
"vehicleId": "abc123",
"information": VehicleInformationType
}
]
}
}
vehicleChargingPreferences
Type:VehicleChargingPreferencesType
URL:https://api.oeg-kraken.energy/v1/graphql/
Vehicle charging preference details.
Deprecated
The 'vehicleChargingPreferences' field is deprecated.
Please use 'devices.preferences' instead.
- Marked as deprecated on 2024-04-23.
- Scheduled for removal on or after 2024-11-01.
Arguments
Name | Description |
---|---|
|
Query
query VehicleChargingPreferences($accountNumber: String!) {
vehicleChargingPreferences(accountNumber: $accountNumber) {
weekdayTargetTime
weekdayTargetSoc
weekendTargetTime
weekendTargetSoc
minimumSocPercentage
maximumSocPercentage
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"vehicleChargingPreferences": {
"weekdayTargetTime": "abc123",
"weekdayTargetSoc": 1,
"weekendTargetTime": "abc123",
"weekendTargetSoc": 1,
"minimumSocPercentage": 1,
"maximumSocPercentage": 1
}
}
}
viewer
Type:AccountUserType
URL:https://api.oeg-kraken.energy/v1/graphql/
The currently authenticated user.
This field requires the Authorization
header to be set.
Query
query Viewer {
viewer {
id
accounts {
...AccountInterfaceFragment
}
givenName
familyName
email
mobile
landline
title
pronouns
isDeceased
liveSecretKey
displayName
firstName
lastName
fullName
preferredName
portfolioId
portfolioIds
portfolios {
...PortfolioConnectionTypeConnectionFragment
}
specialCircumstances {
...SpecialCircumstancesTypeFragment
}
preferences {
...AccountUserCommsPreferencesFragment
}
dateOfBirth
landlinePhoneNumber
alternativePhoneNumbers
hasFamilyIssues
isInHardship
accountUserRoles {
...AccountUserRoleTypeFragment
}
portfolioUserRoles {
...PortfolioUserRoleTypeFragment
}
details {
...AccountUserDetailTypeFragment
}
consents {
...ConsentTypeFragment
}
}
}
Response
{
"data": {
"viewer": {
"id": "abc123",
"accounts": AccountInterface,
"givenName": "abc123",
"familyName": "abc123",
"email": "abc123",
"mobile": "abc123",
"landline": "abc123",
"title": "abc123",
"pronouns": "abc123",
"isDeceased": true,
"liveSecretKey": "abc123",
"displayName": "abc123",
"firstName": "abc123",
"lastName": "abc123",
"fullName": "abc123",
"preferredName": "abc123",
"portfolioId": "abc123",
"portfolioIds": ["abc123"],
"portfolios": PortfolioConnectionTypeConnection,
"specialCircumstances": SpecialCircumstancesType,
"preferences": AccountUserCommsPreferences,
"dateOfBirth": "2020-01-01",
"landlinePhoneNumber": "abc123",
"alternativePhoneNumbers": ["abc123"],
"hasFamilyIssues": true,
"isInHardship": true,
"accountUserRoles": [AccountUserRoleType],
"portfolioUserRoles": [PortfolioUserRoleType],
"details": [AccountUserDetailType],
"consents": ConsentType
}
}
}
wheelOfFortuneSegments
Type:WheelSegmentsType!
URL:https://api.oeg-kraken.energy/v1/graphql/
Retrieve the segments to be displayed on the Wheel of Fortune.
This field requires the Authorization
header to be set.
Query
query WheelOfFortuneSegments {
wheelOfFortuneSegments {
segments
}
}
Response
{
"data": {
"wheelOfFortuneSegments": {
"segments": [1]
}
}
}
wheelOfFortuneSpins
Type:AvailableSpinsType!
URL:https://api.oeg-kraken.energy/v1/graphql/
Retrieve the number of available Wheel of Fortune spins, per energy type, of an account by the account number.
This field requires the Authorization
header to be set.
Arguments
Name | Description |
---|---|
| The account number for which the available spins are gathered. |
Query
query WheelOfFortuneSpins($accountNumber: String!) {
wheelOfFortuneSpins(accountNumber: $accountNumber) {
electricity {
...SupplyTypeSpecificSpinsTypeFragment
}
gas {
...SupplyTypeSpecificSpinsTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"wheelOfFortuneSpins": {
"electricity": SupplyTypeSpecificSpinsType,
"gas": SupplyTypeSpecificSpinsType
}
}
}
Authentication Server
krakenVersion
Type:KrakenVersionType
URL:https://auth.oeg-kraken.energy/graphql/
The current version of kraken.
Query
query KrakenVersion {
krakenVersion {
number
SHA
}
}
Response
{
"data": {
"krakenVersion": {
"number": "abc123",
"SHA": "abc123"
}
}
}
mfaDevices
Type:[MfaDevice]
URL:https://auth.oeg-kraken.energy/graphql/
Get all MFA devices for the current user.
Query
query MfaDevices {
mfaDevices {
deviceType
isConfirmed
}
}
Response
{
"data": {
"mfaDevices": [
{
"deviceType": "abc123",
"isConfirmed": true
}
]
}
}