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
users {
...AccountUserTypeFragment
}
brand
status
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
}
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
}
consentData {
...FraConsentDataFragment
}
energyCheques {
...EnergyChequeFragment
}
energyChequeCertificates {
...EnergyChequeCertificateFragment
}
nextPaymentOrRepayment {
...FraPaymentsInterfaceFragment
}
creditStorage {
...CreditStorageFragment
}
supplyContracts {
...SupplyContractConnectionTypeConnectionFragment
}
agreements {
...AgreementConnectionTypeConnectionFragment
}
fraPotLedger {
...SupplementaryLedgerTypeFragment
}
}
}
Variables
{
"accountNumber": "abc123"
}
Response
{
"data": {
"account": {
"id": "abc123",
"number": "abc123",
"users": AccountUserType,
"brand": "abc123",
"status": "PENDING",
"balance": 1,
"overdueBalance": 1,
"urn": "abc123",
"billingName": "abc123",
"billingSubName": "abc123",
"billingEmail": "abc123",
"billingAddress": "abc123",
"billingAddressLine1": "abc123",
"billingAddressLine2": "abc123",
"billingAddressLine3": "abc123",
"billingAddressLine4": "abc123",
"billingAddressLine5": "abc123",
"billingAddressPostcode": "abc123",
"billingCountryCode": "abc123",
"billingDeliveryPointIdentifier": "abc123",
"splitBillingAddress": ["abc123"],
"address": RichAddressType,
"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,
"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],
"consentData": FraConsentData,
"energyCheques": [EnergyCheque],
"energyChequeCertificates": [EnergyChequeCertificate],
"nextPaymentOrRepayment": FraPaymentsInterface,
"creditStorage": CreditStorage,
"supplyContracts": SupplyContractConnectionTypeConnection,
"agreements": AgreementConnectionTypeConnection,
"fraPotLedger": SupplementaryLedgerType
}
}
}
accountChargeReasons
Type:[ChargeReasonType]
URL:https://api.oefr-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.oefr-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.oefr-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.oefr-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
users {
...AccountUserTypeFragment
}
brand
status
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
}
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
}
consentData {
...FraConsentDataFragment
}
energyCheques {
...EnergyChequeFragment
}
energyChequeCertificates {
...EnergyChequeCertificateFragment
}
nextPaymentOrRepayment {
...FraPaymentsInterfaceFragment
}
creditStorage {
...CreditStorageFragment
}
supplyContracts {
...SupplyContractConnectionTypeConnectionFragment
}
agreements {
...AgreementConnectionTypeConnectionFragment
}
fraPotLedger {
...SupplementaryLedgerTypeFragment
}
}
}
Variables
{
"phoneNumber": "abc123",
"portfolioNumber": "abc123"
}
Response
{
"data": {
"accounts": [
{
"id": "abc123",
"number": "abc123",
"users": AccountUserType,
"brand": "abc123",
"status": "PENDING",
"balance": 1,
"overdueBalance": 1,
"urn": "abc123",
"billingName": "abc123",
"billingSubName": "abc123",
"billingEmail": "abc123",
"billingAddress": "abc123",
"billingAddressLine1": "abc123",
"billingAddressLine2": "abc123",
"billingAddressLine3": "abc123",
"billingAddressLine4": "abc123",
"billingAddressLine5": "abc123",
"billingAddressPostcode": "abc123",
"billingCountryCode": "abc123",
"billingDeliveryPointIdentifier": "abc123",
"splitBillingAddress": ["abc123"],
"address": RichAddressType,
"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,
"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],
"consentData": FraConsentData,
"energyCheques": [EnergyCheque],
"energyChequeCertificates": [EnergyChequeCertificate],
"nextPaymentOrRepayment": FraPaymentsInterface,
"creditStorage": CreditStorage,
"supplyContracts": SupplyContractConnectionTypeConnection,
"agreements": AgreementConnectionTypeConnection,
"fraPotLedger": SupplementaryLedgerType
}
]
}
}
activationProcesses
Type:ActivationProcessesConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
List of activation processes linked to quote code.
Arguments
Name | Description |
---|---|
| The quote code related to the activation processes. |
| |
| |
| |
|
Query
query ActivationProcesses(
$quoteCode: UUID!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
activationProcesses(
quoteCode: $quoteCode,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ActivationProcessesConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"quoteCode": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"activationProcesses": {
"pageInfo": PageInfo,
"edges": ActivationProcessesConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
activeAffiliateReferralScheme
Type:ReferralSchemeType
URL:https://api.oefr-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.oefr-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
}
}
}
agreementCertificate
Type:AgreementCertificate
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the agreement certificate for an agreement.
Arguments
Name | Description |
---|---|
| ID of the account. |
| ID of the agreement. |
Query
query AgreementCertificate(
$accountNumber: String!,
$agreementId: Int!
) {
agreementCertificate(
accountNumber: $accountNumber,
agreementId: $agreementId
) {
temporaryUrl
}
}
Variables
{
"accountNumber": "abc123",
"agreementId": 1
}
Response
{
"data": {
"agreementCertificate": {
"temporaryUrl": "abc123"
}
}
}
agreements
Type:AgreementConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Additional data for french agreements.
Arguments
Name | Description |
---|---|
| The account number linked to the agreements. |
| The supply contract number linked to the agreements. |
| Filter agreements related to this specific supply point. |
| Filter agreements related to this property. |
| Fetch this specific agreement. |
| Filter agreements on the date (validfrom <= date <= validto). |
| |
| |
| |
|
Query
query Agreements(
$accountNumber: String!,
$supplyContractNumber: String,
$supplyPointId: ID,
$propertyId: ID,
$agreementId: ID,
$activeAt: DateTime,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
agreements(
accountNumber: $accountNumber,
supplyContractNumber: $supplyContractNumber,
supplyPointId: $supplyPointId,
propertyId: $propertyId,
agreementId: $agreementId,
activeAt: $activeAt,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...AgreementConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"supplyContractNumber": "abc123",
"supplyPointId": "abc123",
"propertyId": "abc123",
"agreementId": "abc123",
"activeAt": "2020-01-01T00:00:00.000Z",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"agreements": {
"pageInfo": PageInfo,
"edges": AgreementConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
availableProductSwitchDates
Type:[Date]
URL:https://api.oefr-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.oefr-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.oefr-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.oefr-kraken.energy/v1/graphql/
Get all registered backend screen IDs.
Query
query BackendScreenIds {
backendScreenIds
}
Response
{
"data": {
"backendScreenIds": ["abc123"]
}
}
bills
Type:FraBillsConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the bills for an account and requested parameters.
Arguments
Name | Description |
---|---|
| The account number. |
| The ID of the supply point. |
| Filter bills related to this property. |
| Filter bills related to this supply contract. |
| Optional document id used to get a specific billing document. This parameter take precedence over the dates parameters. |
| Optional date representing the beginning of the search results. This date value is inclusive. |
| Optional date representing the end of the search results. This date value is exclusive. |
| |
| |
| |
|
Query
query Bills(
$accountNumber: String!,
$supplyPointId: ID,
$propertyId: ID,
$supplyContractNumber: String,
$documentId: ID,
$fromDate: Date,
$toDate: Date,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
bills(
accountNumber: $accountNumber,
supplyPointId: $supplyPointId,
propertyId: $propertyId,
supplyContractNumber: $supplyContractNumber,
documentId: $documentId,
fromDate: $fromDate,
toDate: $toDate,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...FraBillsEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"supplyPointId": "abc123",
"propertyId": "abc123",
"supplyContractNumber": "abc123",
"documentId": "abc123",
"fromDate": "2020-01-01",
"toDate": "2020-01-01",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"bills": {
"pageInfo": PageInfo,
"edges": FraBillsEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
business
Type:BusinessType
URL:https://api.oefr-kraken.energy/v1/graphql/
Get details about a business.
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.oefr-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]
}
]
}
}
completedDispatches
Type:[UpsideDispatchType]
URL:https://api.oefr-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
}
]
}
}
consumptionForecast
Type:ConsumptionForecastConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
List of forecasted consumption data.
Arguments
Name | Description |
---|---|
| The supply point id to obtain consumption forecast for. The supply point in an abstract representation of all types of industry meters. |
| The account number to obtain consumption forecast for. |
| The start date time of forecasted data to get, this field is inclusive of the data range. |
| The end date time of forecasted data to get, this field is exclusive of the data range. |
| Frequency by day, month or year to aggregate forecasted data. |
| |
| |
| |
|
Query
query ConsumptionForecast(
$supplyPointId: String!,
$accountNumber: String!,
$startAt: DateTime!,
$endAt: DateTime!,
$aggregationTimeInterval: ConsumptionDataAggregationTimeInterval!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
consumptionForecast(
supplyPointId: $supplyPointId,
accountNumber: $accountNumber,
startAt: $startAt,
endAt: $endAt,
aggregationTimeInterval: $aggregationTimeInterval,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ConsumptionForecastConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"supplyPointId": "abc123",
"accountNumber": "abc123",
"startAt": "2020-01-01T00:00:00.000Z",
"endAt": "2020-01-01T00:00:00.000Z",
"aggregationTimeInterval": "DAILY",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"consumptionForecast": {
"pageInfo": PageInfo,
"edges": ConsumptionForecastConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
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.oefr-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.oefr-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"
}
}
}
defaultPaymentInstruction
URL:https://api.oefr-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.oefr-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.oefr-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.oefr-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.oefr-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.oefr-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.oefr-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]
}
]
}
}
electricityConsumption
Type:ElectricityConsumptionConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
List of electricity consumption data.
Arguments
Name | Description |
---|---|
| ID of the PRM. |
| ID of the account. |
| Starting date (inclusive) for the query. |
| End date (exclusive) for the query. |
| |
| |
| |
|
Query
query ElectricityConsumption(
$prmId: String!,
$accountNumber: String!,
$startDate: Date!,
$endDate: Date!,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
electricityConsumption(
prmId: $prmId,
accountNumber: $accountNumber,
startDate: $startDate,
endDate: $endDate,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ElectricityConsumptionEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"prmId": "abc123",
"accountNumber": "abc123",
"startDate": "2020-01-01",
"endDate": "2020-01-01",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"electricityConsumption": {
"pageInfo": PageInfo,
"edges": ElectricityConsumptionEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
electricityReading
Type:ElectricityReadingConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
List of electricity readings.
Arguments
Name | Description |
---|---|
| ID of the PRM. |
| ID of the account. |
| Starting period date (inclusive) of the reading. |
| End period date (exclusive) of the reading. |
| The calendar type of the reading. |
| The processing status of the reading. |
| |
| |
| |
|
Query
query ElectricityReading(
$prmId: String!,
$accountNumber: String!,
$periodStartAt: Date,
$periodEndAt: Date,
$calendarType: ReadingCalendarType,
$statusProcessed: ReadingStatus,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
electricityReading(
prmId: $prmId,
accountNumber: $accountNumber,
periodStartAt: $periodStartAt,
periodEndAt: $periodEndAt,
calendarType: $calendarType,
statusProcessed: $statusProcessed,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ElectricityReadingEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"prmId": "abc123",
"accountNumber": "abc123",
"periodStartAt": "2020-01-01",
"periodEndAt": "2020-01-01",
"calendarType": "DISTRIBUTOR",
"statusProcessed": "OK",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"electricityReading": {
"pageInfo": PageInfo,
"edges": ElectricityReadingEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
eligibleDeviceTypes
URL:https://api.oefr-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.oefr-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.oefr-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.oefr-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"
}
}
}
fanClubStatus
Type:[FanClubStatus]
URL:https://api.oefr-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
}
]
}
}
fraTermsAndConditionsForProduct
Type:FraTermsAndConditionsType
URL:https://api.oefr-kraken.energy/v1/graphql/
The terms and conditions for the product.
Arguments
Name | Description |
---|---|
| The product code to fetch the terms and conditions for. |
Query
query FraTermsAndConditionsForProduct($productCode: String!) {
fraTermsAndConditionsForProduct(productCode: $productCode) {
name
documentUrl
version
effectiveFrom
}
}
Variables
{
"productCode": "abc123"
}
Response
{
"data": {
"fraTermsAndConditionsForProduct": {
"name": "abc123",
"documentUrl": "abc123",
"version": "abc123",
"effectiveFrom": "2020-01-01T00:00:00.000Z"
}
}
}
gasReading
Type:GasReadingConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
List of gas readings.
Arguments
Name | Description |
---|---|
| ID of the PCE. |
| ID of the account. |
| Starting period date (inclusive) of the reading. |
| End period date (exclusive) of the reading. |
| The processing status of the reading. |
| The type of the reading. |
| The reading's energy qualification. |
| |
| |
| |
|
Query
query GasReading(
$pceRef: String!,
$accountNumber: String!,
$periodStartAt: Date,
$periodEndAt: Date,
$statusProcessed: ReadingStatus,
$readingType: ReadingType,
$energyQualification: ReadingQualification,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
gasReading(
pceRef: $pceRef,
accountNumber: $accountNumber,
periodStartAt: $periodStartAt,
periodEndAt: $periodEndAt,
statusProcessed: $statusProcessed,
readingType: $readingType,
energyQualification: $energyQualification,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...GasReadingEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"pceRef": "abc123",
"accountNumber": "abc123",
"periodStartAt": "2020-01-01",
"periodEndAt": "2020-01-01",
"statusProcessed": "OK",
"readingType": "A",
"energyQualification": "M",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"gasReading": {
"pageInfo": PageInfo,
"edges": GasReadingEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
goodsProducts
Type:GoodsProductConnectionTypeConnection
URL:https://api.oefr-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.oefr-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.oefr-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.oefr-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.oefr-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.oefr-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
}
}
isValidUfcMember
URL:https://api.oefr-kraken.energy/v1/graphql/
Check if a given UFC member number is valid.
Arguments
Name | Description |
---|---|
|
Query
query IsValidUfcMember($input: IsValidUFCMemberInputType!) {
isValidUfcMember(input: $input)
}
Variables
{
"input": IsValidUFCMemberInputType
}
Response
{
"data": {
"isValidUfcMember": "UNKNOWN"
}
}
krakenVersion
Type:KrakenVersionType
URL:https://api.oefr-kraken.energy/v1/graphql/
The current version of kraken.
Query
query KrakenVersion {
krakenVersion {
number
SHA
}
}
Response
{
"data": {
"krakenVersion": {
"number": "abc123",
"SHA": "abc123"
}
}
}
lastReadingDateForMeasurements
Type:Date
URL:https://api.oefr-kraken.energy/v1/graphql/
The last reading date for the measurements.
Arguments
Name | Description |
---|---|
| The account number linked to the agreements. |
| The supply point ID. |
| Frequency for the reading. |
Query
query LastReadingDateForMeasurements(
$accountNumber: String!,
$marketSupplyPointId: ID!,
$readingFrequencyType: ReadingFrequencyType
) {
lastReadingDateForMeasurements(
accountNumber: $accountNumber,
marketSupplyPointId: $marketSupplyPointId,
readingFrequencyType: $readingFrequencyType
)
}
Variables
{
"accountNumber": "abc123",
"marketSupplyPointId": "abc123",
"readingFrequencyType": "RAW_INTERVAL"
}
Response
{
"data": {
"lastReadingDateForMeasurements": "2020-01-01"
}
}
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"
}
}
leaveSupplierProcess
URL:https://api.oefr-kraken.energy/v1/graphql/
Details associated with a LeaveSupplier process.
Arguments
Name | Description |
---|---|
| The leave supplier process ID. |
Query
query LeaveSupplierProcess($leaveSupplierProcessId: ID!) {
leaveSupplierProcess(leaveSupplierProcessId: $leaveSupplierProcessId) {
id
status
supplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
}
}
Variables
{
"leaveSupplierProcessId": "abc123"
}
Response
{
"data": {
"leaveSupplierProcess": {
"id": "abc123",
"status": "COMPLETED",
"supplyPoints": SupplyPointConnectionTypeConnection
}
}
}
lifecycleProcesses
URL:https://api.oefr-kraken.energy/v1/graphql/
Get all lifecycle processes associated with an account.
Arguments
Name | Description |
---|---|
| A flag to filter out only active/current processes. |
| The account number, e.g. A-12345678. |
Query
query LifecycleProcesses(
$onlyActive: Boolean,
$accountNumber: String!
) {
lifecycleProcesses(
onlyActive: $onlyActive,
accountNumber: $accountNumber
) {
leaveSupplierProcesses {
...LeaveSupplierProcessConnectionTypeConnectionFragment
}
joinSupplierProcesses {
...JoinSupplierProcessConnectionTypeConnectionFragment
}
occupyPropertyProcesses {
...OccupyPropertyProcessConnectionTypeConnectionFragment
}
leavePropertyProcesses {
...LeavePropertyProcessConnectionTypeConnectionFragment
}
}
}
Variables
{
"onlyActive": true,
"accountNumber": "abc123"
}
Response
{
"data": {
"lifecycleProcesses": {
"leaveSupplierProcesses": LeaveSupplierProcessConnectionTypeConnection,
"joinSupplierProcesses": JoinSupplierProcessConnectionTypeConnection,
"occupyPropertyProcesses": OccupyPropertyProcessConnectionTypeConnection,
"leavePropertyProcesses": LeavePropertyProcessConnectionTypeConnection
}
}
}
livePaymentAdequacyCalculation
Type:LivePaymentAdequacyCalculation
URL:https://api.oefr-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.oefr-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.oefr-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"}
}
}
}
meterPointNumberByAddress
Type:String
URL:https://api.oefr-kraken.energy/v1/graphql/
The number of the meter point for the given address.
Arguments
Name | Description |
---|---|
Query
query MeterPointNumberByAddress($input: MeterPointNumberByAddressInputType!) {
meterPointNumberByAddress(input: $input)
}
Variables
{
"input": MeterPointNumberByAddressInputType
}
Response
{
"data": {
"meterPointNumberByAddress": "abc123"
}
}
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.oefr-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.oefr-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.oefr-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"]
}
}
paymentRequests
Type:PaymentRequestsType
URL:https://api.oefr-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
}
}
}
paymentSchedule
Type:PaymentSchedule
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the payment schedule for an agreement.
Arguments
Name | Description |
---|---|
| ID of the account. |
| ID of the agreement. |
Query
query PaymentSchedule(
$accountNumber: String!,
$agreementId: Int!
) {
paymentSchedule(
accountNumber: $accountNumber,
agreementId: $agreementId
) {
temporaryUrl
}
}
Variables
{
"accountNumber": "abc123",
"agreementId": 1
}
Response
{
"data": {
"paymentSchedule": {
"temporaryUrl": "abc123"
}
}
}
paymentsAndRepayments
Type:FraAccountPaymentConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the payments and repayments for an account.
Arguments
Name | Description |
---|---|
| ID of the account. |
| The ID of the supply point. |
| Filter payments and repayments related to this property. |
| Filter bills related to this supply contract. |
| Optional date representing the beginning of the search results. This date value is inclusive. |
| Optional date representing the end of the search results. This date value is exclusive. |
| Filter on the payments status. |
| Filter for payments that were taken for a particular reason. |
| Only return repayments whose status matches one of these statuses. |
| |
| |
| |
|
Query
query PaymentsAndRepayments(
$accountNumber: String!,
$supplyPointId: ID,
$propertyId: ID,
$supplyContractNumber: String,
$fromDate: Date,
$toDate: Date,
$paymentStatus: AccountPaymentStatusOptions,
$paymentReason: PaymentReasonOptions,
$repaymentStatuses: [AccountRepaymentStatusOptions],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
paymentsAndRepayments(
accountNumber: $accountNumber,
supplyPointId: $supplyPointId,
propertyId: $propertyId,
supplyContractNumber: $supplyContractNumber,
fromDate: $fromDate,
toDate: $toDate,
paymentStatus: $paymentStatus,
paymentReason: $paymentReason,
repaymentStatuses: $repaymentStatuses,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...FraAccountPaymentConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"supplyPointId": "abc123",
"propertyId": "abc123",
"supplyContractNumber": "abc123",
"fromDate": "2020-01-01",
"toDate": "2020-01-01",
"paymentStatus": "SCHEDULED",
"paymentReason": "BALANCE_THRESHOLD_CROSSED",
"repaymentStatuses": "REQUESTED",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"paymentsAndRepayments": {
"pageInfo": PageInfo,
"edges": FraAccountPaymentConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
paymentsAndRepaymentsForPrm
Type:FraAccountPaymentConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the payments and repayments for an account and for a specific PRM.
Deprecated
The 'paymentsAndRepaymentsForPrm' field is deprecated.
Replaced for a generic query to obtain payments and repayments. Please use 'paymentsAndRepayments' instead.
- Marked as deprecated on 2024-04-01.
- Scheduled for removal on or after 2024-12-01.
Arguments
Name | Description |
---|---|
| ID of the account. |
| ID of the PRM. |
| Optional date representing the beginning of the search results. This date value is inclusive. |
| Optional date representing the end of the search results. This date value is exclusive. |
| Filter on the payments status. |
| Filter for payments that were taken for a particular reason. |
| Only return repayments whose status matches one of these statuses. |
| |
| |
| |
|
Query
query PaymentsAndRepaymentsForPrm(
$accountNumber: String!,
$prmId: String!,
$fromDate: Date,
$toDate: Date,
$paymentStatus: AccountPaymentStatusOptions,
$paymentReason: PaymentReasonOptions,
$repaymentStatuses: [AccountRepaymentStatusOptions],
$before: String,
$after: String,
$first: Int,
$last: Int
) {
paymentsAndRepaymentsForPrm(
accountNumber: $accountNumber,
prmId: $prmId,
fromDate: $fromDate,
toDate: $toDate,
paymentStatus: $paymentStatus,
paymentReason: $paymentReason,
repaymentStatuses: $repaymentStatuses,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...FraAccountPaymentConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"prmId": "abc123",
"fromDate": "2020-01-01",
"toDate": "2020-01-01",
"paymentStatus": "SCHEDULED",
"paymentReason": "BALANCE_THRESHOLD_CROSSED",
"repaymentStatuses": "REQUESTED",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"paymentsAndRepaymentsForPrm": {
"pageInfo": PageInfo,
"edges": FraAccountPaymentConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
plannedDispatches
Type:[UpsideDispatchType]
URL:https://api.oefr-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
}
]
}
}
pmaxAnalysis
Type:PMAXAnalysisType
URL:https://api.oefr-kraken.energy/v1/graphql/
Get PMAX analysis by token
Arguments
Name | Description |
---|---|
| Unique identifier of the analysis. |
Query
query PmaxAnalysis($token: UUID!) {
pmaxAnalysis(token: $token) {
token
recommendedSubscribedMaxPower
yearlyProfitAmountCents
currentSubscribedMaxPower
firstName
lastName
suggestedPowerAdjustment
meterPoint {
...MeterPointInterfaceFragment
}
product {
...ProductFragment
}
}
}
Variables
{
"token": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}
Response
{
"data": {
"pmaxAnalysis": {
"token": "500c164d-38c7-4f74-9ac6-be210197e9e4",
"recommendedSubscribedMaxPower": 1,
"yearlyProfitAmountCents": 1.0,
"currentSubscribedMaxPower": 1,
"firstName": "abc123",
"lastName": "abc123",
"suggestedPowerAdjustment": "NONE",
"meterPoint": MeterPointInterface,
"product": Product
}
}
}
portfolio
Type:PortfolioType
URL:https://api.oefr-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.oefr-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]
}
}
}
proofOfResidence
Type:ProofOfResidence
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the proof of residence of an user.
Arguments
Name | Description |
---|---|
| ID of the account. |
| ID of the agreement. |
Query
query ProofOfResidence(
$accountNumber: String!,
$agreementId: Int!
) {
proofOfResidence(
accountNumber: $accountNumber,
agreementId: $agreementId
) {
temporaryUrl
}
}
Variables
{
"accountNumber": "abc123",
"agreementId": 1
}
Response
{
"data": {
"proofOfResidence": {
"temporaryUrl": "abc123"
}
}
}
propertiesSearch
URL:https://api.oefr-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.oefr-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
supplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
}
}
Variables
{
"id": "abc123"
}
Response
{
"data": {
"property": {
"id": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"measurements": MeasurementConnection,
"postcode": "abc123",
"supplyPoints": SupplyPointConnectionTypeConnection
}
}
}
propertySearch
Type:[PropertyType]
URL:https://api.oefr-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
supplyPoints {
...SupplyPointConnectionTypeConnectionFragment
}
}
}
Variables
{
"searchTerm": "abc123"
}
Response
{
"data": {
"propertySearch": [
{
"id": "abc123",
"address": "abc123",
"richAddress": PropertyRichAddressType,
"splitAddress": ["abc123"],
"occupancyPeriods": [OccupancyPeriodType],
"coordinates": CoordinatesType,
"embeddedNetwork": EmbeddedNetworkType,
"measurements": MeasurementConnection,
"postcode": "abc123",
"supplyPoints": SupplyPointConnectionTypeConnection
}
]
}
}
providerAuthDetails
URL:https://api.oefr-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.oefr-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.oefr-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"
}
}
rateLimit
Type:RateLimitInformation
URL:https://api.oefr-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.oefr-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.oefr-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"
}
}
}
smartFlexOnboardingWizards
Type:[SmartFlexOnboardingWizard!]
URL:https://api.oefr-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
}
]
}
}
supplyContracts
Type:SupplyContractConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch supply contracts.
Arguments
Name | Description |
---|---|
| The account number linked to the supply contracts. |
| Specific supply contract to display. |
| Filter supply contracts related to this specific supply point. |
| Filter supply contracts related to this property. |
| Fetch supply contracts related to this specific agreement. |
| |
| |
| |
|
Query
query SupplyContracts(
$accountNumber: String!,
$supplyContractNumber: String,
$supplyPointId: ID,
$propertyId: ID,
$agreementId: ID,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
supplyContracts(
accountNumber: $accountNumber,
supplyContractNumber: $supplyContractNumber,
supplyPointId: $supplyPointId,
propertyId: $propertyId,
agreementId: $agreementId,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...SupplyContractConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"accountNumber": "abc123",
"supplyContractNumber": "abc123",
"supplyPointId": "abc123",
"propertyId": "abc123",
"agreementId": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"supplyContracts": {
"pageInfo": PageInfo,
"edges": SupplyContractConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
supplyPoints
Type:SupplyPointConnectionTypeConnection
URL:https://api.oefr-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
}
}
}
supplyProducts
Type:ProductConnectionTypeConnection
URL:https://api.oefr-kraken.energy/v1/graphql/
Available supply products.
Arguments
Name | Description |
---|---|
| The market for which we want to list products. |
| |
| |
| |
|
Query
query SupplyProducts(
$marketName: String,
$before: String,
$after: String,
$first: Int,
$last: Int
) {
supplyProducts(
marketName: $marketName,
before: $before,
after: $after,
first: $first,
last: $last
) {
pageInfo {
...PageInfoFragment
}
edges {
...ProductConnectionTypeEdgeFragment
}
totalCount
edgeCount
}
}
Variables
{
"marketName": "abc123",
"before": "abc123",
"after": "abc123",
"first": 1,
"last": 1
}
Response
{
"data": {
"supplyProducts": {
"pageInfo": PageInfo,
"edges": ProductConnectionTypeEdge,
"totalCount": 1,
"edgeCount": 1
}
}
}
tariffGrid
Type:TariffGrid
URL:https://api.oefr-kraken.energy/v1/graphql/
Fetch the payment schedule for an agreement.
Arguments
Name | Description |
---|---|
| ID of the account. |
| ID of the agreement. |
Query
query TariffGrid(
$accountNumber: String!,
$agreementId: Int!
) {
tariffGrid(
accountNumber: $accountNumber,
agreementId: $agreementId
) {
temporaryUrl
}
}
Variables
{
"accountNumber": "abc123",
"agreementId": 1
}
Response
{
"data": {
"tariffGrid": {
"temporaryUrl": "abc123"
}
}
}
taskResult
Type:TaskResult
URL:https://api.oefr-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.oefr-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"
}
}
}
ufcContractsCount
Type:Int
URL:https://api.oefr-kraken.energy/v1/graphql/
Returns the current number of UFC contracts.
Query
query UfcContractsCount {
ufcContractsCount
}
Response
{
"data": {
"ufcContractsCount": 1
}
}
userEmailCheckForCheckout
Type:Boolean
URL:https://api.oefr-kraken.energy/v1/graphql/
Check email address before checkout. Return true is the email address is free, false if it's attached to an active user account.
Arguments
Name | Description |
---|---|
Query
query UserEmailCheckForCheckout($input: UserEmailCheckForCheckoutInputType!) {
userEmailCheckForCheckout(input: $input)
}
Variables
{
"input": UserEmailCheckForCheckoutInputType
}
Response
{
"data": {
"userEmailCheckForCheckout": true
}
}
userVehicles
Type:[UserVehiclesType]
URL:https://api.oefr-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.oefr-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.oefr-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
}
}
}
Authentication Server
krakenVersion
Type:KrakenVersionType
URL:https://auth.oefr-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.oefr-kraken.energy/graphql/
Get all MFA devices for the current user.
Query
query MfaDevices {
mfaDevices {
deviceType
isConfirmed
}
}
Response
{
"data": {
"mfaDevices": [
{
"deviceType": "abc123",
"isConfirmed": true
}
]
}
}