Skip to main content

Mutations

In this section

About Mutations

Every GraphQL schema has a root type for both queries and mutations. The mutation type defines GraphQL operations that change data on the server. It is analogous to performing HTTP verbs such as POST, PATCH, and DELETE.

API Site

acceptGoodsQuote

Type:AcceptGoodsQuote

URL:https://api.octopus.energy/v1/graphql/

Accept a goods quote.

The possible errors that can be raised are:

  • KT-CT-8223: Unauthorized.
  • KT-CT-8201: Received an invalid quoteId.
  • KT-CT-8224: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AcceptGoodsQuoteInput!)

Input fields for accepting a quote.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

goodsPurchase (GoodsPurchase)

Goods purchase created.

Mutation

mutation AcceptGoodsQuote($input: AcceptGoodsQuoteInput!) {
  acceptGoodsQuote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    goodsPurchase {
      ...GoodsPurchaseFragment
    }
  }
}

Variables

Response

{
  "data": {
    "acceptGoodsQuote": {
      "possibleErrors": [PossibleErrorType],
      "goodsPurchase": GoodsPurchase
    }
  }
}

acceptOfferForQuoting

Type:AcceptOfferForQuoting

URL:https://api.octopus.energy/v1/graphql/

Accept a quoting offer in an offer group.

The possible errors that can be raised are:

  • KT-CT-12402: Unable to accept offer.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AcceptOfferForQuotingInput!)

Input fields for accepting a quoting offer.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

offer (OfferType)

Accepted quoting offer.

Mutation

mutation AcceptOfferForQuoting($input: AcceptOfferForQuotingInput!) {
  acceptOfferForQuoting(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    offer {
      ...OfferTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "acceptOfferForQuoting": {
      "possibleErrors": [PossibleErrorType],
      "offer": OfferType
    }
  }
}

Arguments

NameDescription

input (AcceptTermsAndConditionsInput!)

Input fields for accepting terms and conditions.

Return fields

NameDescription

acceptedVersion (String)

Version of terms and conditions that were accepted.

Mutation

mutation AcceptTermsAndConditions($input: AcceptTermsAndConditionsInput!) {
  acceptTermsAndConditions(input: $input) {
    acceptedVersion
  }
}

Variables

Response

{
  "data": {
    "acceptTermsAndConditions": {
      "acceptedVersion": "abc123"
    }
  }
}

actualizeContract

Type:ActualizeContractOutput!

URL:https://api.octopus.energy/v1/graphql/

Actualize a contract for an account or business.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10007: Unable to terminate contract.
  • KT-CT-10008: The contract is currently undergoing an active journey.
  • KT-CT-10022: Contract already terminated.
  • KT-CT-10023: Contract is already revoked.
  • KT-CT-10024: Contract already expired.
  • KT-CT-10026: Contract actualization implies breach.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ActualizeContractInput!)

Return fields

NameDescription

Mutation

mutation ActualizeContract($input: ActualizeContractInput!) {
  actualizeContract(input: $input) {
    contract {
      ...ContractFragment
    }
  }
}

Variables

Response

{
  "data": {
    "actualizeContract": {
      "contract": Contract
    }
  }
}

addBusinessToSegment

Type:AddBusinessToSegmentMutation

URL:https://api.octopus.energy/v1/graphql/

Add a business to a segment.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11107: Unauthorized.
  • KT-CT-11111: Segment does not exist.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddBusinessToSegmentInput!)

Input fields for adding a business to a segment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

businessSegmentPeriod (BusinessSegmentPeriodType)

The business segment period that was created.

Mutation

mutation AddBusinessToSegment($input: AddBusinessToSegmentInput!) {
  addBusinessToSegment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    businessSegmentPeriod {
      ...BusinessSegmentPeriodTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addBusinessToSegment": {
      "possibleErrors": [PossibleErrorType],
      "businessSegmentPeriod": BusinessSegmentPeriodType
    }
  }
}

addCampaignToAccount

Type:AddCampaignToAccount

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4123: Unauthorized.
  • KT-CT-7427: No campaign found with given slug.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddCampaignToAccountInput!)

Input variables needed for adding a campaign to an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

campaignAdded (Boolean)

Whether the campaign was successfully added.

Mutation

mutation AddCampaignToAccount($input: AddCampaignToAccountInput!) {
  addCampaignToAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    campaignAdded
  }
}

Variables

Response

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

addChildToProperty

Type:AddChildToProperty

URL:https://api.octopus.energy/v1/graphql/

Add a child property to a parent property in a hierarchy.

If the child is already in the hierarchy with a different parent, it will be reparented. If the child is already a child of the specified parent, this operation is idempotent and does nothing.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-6622: Unauthorized.
  • KT-CT-6634: Unable to add child to property.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddChildToPropertyInput!)

Input fields for adding a child to a parent property.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

child (PropertyType)

The child property that was added to the parent.

Mutation

mutation AddChildToProperty($input: AddChildToPropertyInput!) {
  addChildToProperty(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    child {
      ...PropertyTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addChildToProperty": {
      "possibleErrors": [PossibleErrorType],
      "child": PropertyType
    }
  }
}

Arguments

NameDescription

input (SmartPrepayMeterAmountInput!)

Controls which meter to top-up and by how much.

Return fields

NameDescription

amount (Int!)

Top-up amount in pence to add to smart meter.

Mutation

mutation AddCreditToSmartMeter($input: SmartPrepayMeterAmountInput!) {
  addCreditToSmartMeter(input: $input) {
    amount
  }
}

Variables

Response

{
  "data": {
    "addCreditToSmartMeter": {
      "amount": 1
    }
  }
}

addEvPublicChargingToken

Type:AddEvPublicChargingToken

URL:https://api.octopus.energy/v1/graphql/

Add EV public charging token.

The possible errors that can be raised are:

  • KT-CT-5817: External Account not found.
  • KT-CT-5812: Token with this value already exists within this period.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddEvPublicChargingTokenInput!)

Input fields for adding a token.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (Token)

Mutation

mutation AddEvPublicChargingToken($input: AddEvPublicChargingTokenInput!) {
  addEvPublicChargingToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token {
      ...TokenFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addEvPublicChargingToken": {
      "possibleErrors": [PossibleErrorType],
      "token": Token
    }
  }
}

addItemsToRiskList

Type:AddItemsToRiskList

URL:https://api.octopus.energy/v1/graphql/

Add items to the risk list.

The possible errors that can be raised are:

  • KT-CT-12105: Risk list item addition failed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input ([RiskListItemInputType]!)

A list of risk list items to add.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

riskIdentifiers ([RiskListItemType])

List of successfully added risk identifiers.

Mutation

mutation AddItemsToRiskList($input: [RiskListItemInputType]!) {
  addItemsToRiskList(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    riskIdentifiers {
      ...RiskListItemTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addItemsToRiskList": {
      "possibleErrors": [PossibleErrorType],
      "riskIdentifiers": [RiskListItemType]
    }
  }
}

addNoteToInkConversation

Type:AddNoteToInkConversation

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7612: The Ink conversation was not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddNoteToInkConversationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

note (InkNote)

The ink conversation note.

Mutation

mutation AddNoteToInkConversation($input: AddNoteToInkConversationInput) {
  addNoteToInkConversation(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    note {
      ...InkNoteFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addNoteToInkConversation": {
      "possibleErrors": [PossibleErrorType],
      "note": InkNote
    }
  }
}

addParentToProperty

Type:AddParentToProperty

URL:https://api.octopus.energy/v1/graphql/

Add a parent property to a child property in a hierarchy.

If the child is already in the hierarchy with a different parent, it will be reparented. If the child is already a child of the specified parent, this operation is idempotent and does nothing.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-6622: Unauthorized.
  • KT-CT-6635: Unable to add parent to property.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddParentToPropertyInput!)

Input fields for adding a parent to a child property.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

parent (PropertyType)

The parent property that was added to the child.

Mutation

mutation AddParentToProperty($input: AddParentToPropertyInput!) {
  addParentToProperty(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    parent {
      ...PropertyTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addParentToProperty": {
      "possibleErrors": [PossibleErrorType],
      "parent": PropertyType
    }
  }
}

addPortfolioReference

Type:AddPortfolioReference

URL:https://api.octopus.energy/v1/graphql/

Mutation to add a reference to an existing portfolio.

The possible errors that can be raised are:

  • KT-CT-9403: Received an invalid portfolioId.
  • KT-CT-9410: Conflicting portfolio reference.
  • KT-CT-9408: Invalid portfolio number format.
  • KT-CT-9409: Invalid portfolio reference.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddPortfolioReferenceInput)

Input fields for adding a reference to a portfolio.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation AddPortfolioReference($input: AddPortfolioReferenceInput) {
  addPortfolioReference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addPortfolioReference": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

addProperty

Type:AddProperty

URL:https://api.octopus.energy/v1/graphql/

Add a property to an account.

The possible errors that can be raised are:

  • KT-CT-6623: Unauthorized.
  • KT-CT-6629: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddPropertyInput!)

Input fields for adding a property to an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

property (PropertyType)

The property that was added to the account.

Mutation

mutation AddProperty($input: AddPropertyInput!) {
  addProperty(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    property {
      ...PropertyTypeFragment
    }
  }
}

Variables

{
  "input": AddPropertyInput
}

Response

{
  "data": {
    "addProperty": {
      "possibleErrors": [PossibleErrorType],
      "property": PropertyType
    }
  }
}

addPropertyToHierarchy

Type:AddPropertyToHierarchy

URL:https://api.octopus.energy/v1/graphql/

Add a property to a hierarchy as a root node.

If the property is already a root node in the hierarchy, this operation is idempotent. If the property is already in the hierarchy as a child, an error will be raised.

The possible errors that can be raised are:

  • KT-CT-6622: Unauthorized.
  • KT-CT-6633: Property is already in the hierarchy as a child.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddPropertyToHierarchyInput!)

Input fields for adding a property to a hierarchy.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

property (PropertyType)

The property that was added to the hierarchy.

Mutation

mutation AddPropertyToHierarchy($input: AddPropertyToHierarchyInput!) {
  addPropertyToHierarchy(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    property {
      ...PropertyTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addPropertyToHierarchy": {
      "possibleErrors": [PossibleErrorType],
      "property": PropertyType
    }
  }
}

addSignupReferralOnAccount

Type:AddSignupReferralOnAccount

URL:https://api.octopus.energy/v1/graphql/

Add a one-way signup reward to a referral.

The possible errors that can be raised are:

  • KT-CT-6723: Unauthorized.
  • KT-CT-6729: This scheme cannot be applied to given account.
  • KT-CT-6710: Unable to create referral.
  • KT-CT-6728: This referral scheme's usage is at capacity.
  • KT-CT-6712: Invalid reference.
  • KT-CT-6713: Referring and referred account brands do not match.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddSignupReferralOnAccountInput!)

Input fields for creating a signup reward for an organization.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReferral (ReferralType)

The created account referral instance.

Mutation

mutation AddSignupReferralOnAccount($input: AddSignupReferralOnAccountInput!) {
  addSignupReferralOnAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReferral {
      ...ReferralTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addSignupReferralOnAccount": {
      "possibleErrors": [PossibleErrorType],
      "accountReferral": ReferralType
    }
  }
}

addStorylineToInkConversation

Type:AddStorylineToInkConversation

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7612: The Ink conversation was not found.
  • KT-CT-7651: Only one storyline entry can be marked as the root cause.
  • KT-CT-7657: The provided analyzer result data is invalid.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddStorylineToInkConversationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

storyline (InkStoryline)

The storyline that was added to the conversation.

Mutation

mutation AddStorylineToInkConversation($input: AddStorylineToInkConversationInput) {
  addStorylineToInkConversation(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    storyline {
      ...InkStorylineFragment
    }
  }
}

Response

{
  "data": {
    "addStorylineToInkConversation": {
      "possibleErrors": [PossibleErrorType],
      "storyline": InkStoryline
    }
  }
}

addUserToPortfolio

Type:AddUserToPortfolio

URL:https://api.octopus.energy/v1/graphql/

Add an user to a portfolio with a specified role.

The possible errors that can be raised are:

  • KT-CT-5461: Invalid role code.
  • KT-CT-5462: Invalid user number format.
  • KT-CT-5463: Unauthorized.
  • KT-CT-9407: Unauthorized.
  • KT-CT-9408: Invalid portfolio number format.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AddUserToPortfolioInput!)

Input fields for adding a user to a portfolio.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation AddUserToPortfolio($input: AddUserToPortfolioInput!) {
  addUserToPortfolio(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "addUserToPortfolio": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

allowRepaymentSubmission

Type:AllowRepaymentSubmission

URL:https://api.octopus.energy/v1/graphql/

Allow a repayment to be submitted.

The possible errors that can be raised are:

  • KT-CT-3944: Account repayment does not exist.
  • KT-CT-3945: Unable to allow a repayment to be submitted.
  • KT-CT-3950: The provided reason text is too long.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RepaymentInput!)

Input variable needed for allowing repayment submission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repaymentId (ID)

The repayment ID.

repaymentIntervention (RepaymentInterventionType)

Resulting Repayment Intervention details.

Mutation

mutation AllowRepaymentSubmission($input: RepaymentInput!) {
  allowRepaymentSubmission(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repaymentId
    repaymentIntervention {
      ...RepaymentInterventionTypeFragment
    }
  }
}

Variables

{
  "input": RepaymentInput
}

Response

{
  "data": {
    "allowRepaymentSubmission": {
      "possibleErrors": [PossibleErrorType],
      "repaymentId": "abc123",
      "repaymentIntervention": RepaymentInterventionType
    }
  }
}

amendPayment

Type:AmendPayment

URL:https://api.octopus.energy/v1/graphql/

Amend an existing payment.

The possible errors that can be raised are:

  • KT-CT-3924: Unauthorized.
  • KT-CT-4123: Unauthorized.
  • KT-CT-3970: The account cannot amend payments.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AmendPaymentInput!)

Input fields for amending an existing payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (AccountPaymentType)

Mutation

mutation AmendPayment($input: AmendPaymentInput!) {
  amendPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...AccountPaymentTypeFragment
    }
  }
}

Variables

{
  "input": AmendPaymentInput
}

Response

{
  "data": {
    "amendPayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": AccountPaymentType
    }
  }
}

Arguments

NameDescription

input (AmendUnbilledReadingInput!)

Input fields for amending unbilled electricity reading.

Return fields

NameDescription

readingAmended (Boolean)

Mutation

mutation AmendUnbilledElectricityReading($input: AmendUnbilledReadingInput!) {
  amendUnbilledElectricityReading(input: $input) {
    readingAmended
  }
}

Variables

Response

{
  "data": {
    "amendUnbilledElectricityReading": {
      "readingAmended": true
    }
  }
}

approveRepayment

Type:ApproveRepayment

URL:https://api.octopus.energy/v1/graphql/

Approve a repayment.

The possible errors that can be raised are:

  • KT-CT-3934: Repayment request already approved.
  • KT-CT-3935: Repayment request cannot be paid.
  • KT-CT-3959: Unauthorized.
  • KT-CT-3973: Repayment request is not in a state to be approved.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ApproveRepaymentInput!)

Input fields for approving a repayment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repayment (AccountRepaymentType)

The approved repayment.

Mutation

mutation ApproveRepayment($input: ApproveRepaymentInput!) {
  approveRepayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repayment {
      ...AccountRepaymentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "approveRepayment": {
      "possibleErrors": [PossibleErrorType],
      "repayment": AccountRepaymentType
    }
  }
}

assessCollectionProcessRecordForPause

Type:AssessCollectionProcessRecordForPause

URL:https://api.octopus.energy/v1/graphql/

Assess a collection process record for pause.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AssessCollectionProcessRecordForPauseInputType!)

Details of collection process to run the pause assessment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessProcessed (AssessCollectionProcessRecordForPauseOutputType)

Details of collection process after running the pause assessment.

Mutation

mutation AssessCollectionProcessRecordForPause($input: AssessCollectionProcessRecordForPauseInputType!) {
  assessCollectionProcessRecordForPause(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessProcessed {
      ...AssessCollectionProcessRecordForPauseOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "assessCollectionProcessRecordForPause": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessProcessed": AssessCollectionProcessRecordForPauseOutputType
    }
  }
}

assignInkBucket

Type:AssignInkBucket

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7612: The Ink conversation was not found.
  • KT-CT-7613: The Ink bucket was not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AssignInkBucketInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

conversation (InkConversation!)

The conversation that will be assigned to the bucket.

bucket (InkBucket!)

The bucket that the conversation will be assigned to.

Mutation

mutation AssignInkBucket($input: AssignInkBucketInput) {
  assignInkBucket(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    conversation {
      ...InkConversationFragment
    }
    bucket {
      ...InkBucketFragment
    }
  }
}

Variables

Response

{
  "data": {
    "assignInkBucket": {
      "possibleErrors": [PossibleErrorType],
      "conversation": InkConversation,
      "bucket": InkBucket
    }
  }
}

assignSupplyPointToEstimationGroup

Type:AssignSupplyPointToEstimationGroup

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-13601: Estimation Group does not exist.
  • KT-CT-13602: Supply Point already has an Estimation Group.
  • KT-CT-13603: Supply Point does not exist.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AssignSupplyPointToEstimationGroupInput!)

Input fields for assigning a supply point to an estimation group.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

supplyPointEstimationGroup (AssignedSupplyPointEstimationGroupType)

The created supply point estimation group mapping.

Mutation

mutation AssignSupplyPointToEstimationGroup($input: AssignSupplyPointToEstimationGroupInput!) {
  assignSupplyPointToEstimationGroup(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    supplyPointEstimationGroup {
      ...AssignedSupplyPointEstimationGroupTypeFragment
    }
  }
}

Response

{
  "data": {
    "assignSupplyPointToEstimationGroup": {
      "possibleErrors": [PossibleErrorType],
      "supplyPointEstimationGroup": AssignedSupplyPointEstimationGroupType
    }
  }
}

associateCallWithAccount

Type:AssociateCallWithAccount

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-11802: Call not found.
  • KT-CT-11808: Unable to associate account to call.
  • KT-CT-11817: Invalid call ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AssociateCallWithAccountInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

call (InboundCallType)

The call.

Mutation

mutation AssociateCallWithAccount($input: AssociateCallWithAccountInput!) {
  associateCallWithAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    call {
      ...InboundCallTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "associateCallWithAccount": {
      "possibleErrors": [PossibleErrorType],
      "call": InboundCallType
    }
  }
}

associateItemToCollectionProcess

Type:AssociateItemToCollectionProcess

URL:https://api.octopus.energy/v1/graphql/

Associate item to a collection process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11205: Item already associated to collection process.
  • KT-CT-11216: Invalid extra_details for associated item type.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AssociateItemToCollectionProcessInputType!)

Input variables needed for associating an item to collection process.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessAssociatedItem (AssociateItemToCollectionProcessOutputType)

Item associated to the collection process.

Mutation

mutation AssociateItemToCollectionProcess($input: AssociateItemToCollectionProcessInputType!) {
  associateItemToCollectionProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessAssociatedItem {
      ...AssociateItemToCollectionProcessOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "associateItemToCollectionProcess": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessAssociatedItem": AssociateItemToCollectionProcessOutputType
    }
  }
}

awardLoyaltyPoints

Type:AwardLoyaltyPoints

URL:https://api.octopus.energy/v1/graphql/

Award the passed number of Loyalty Points to the account.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9202: Loyalty Points adapter not configured.
  • KT-CT-9204: Negative or zero points set.
  • KT-CT-9208: Invalid posted at datetime.
  • KT-CT-9210: Unhandled Loyalty Points exception.
  • KT-CT-9212: Points exceed maximum limit.
  • KT-CT-9219: Loyalty points user not found.
  • KT-CT-9221: Idempotency key already used on ledger entry.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AwardLoyaltyPointsInput!)

Input fields for awarding Loyalty Points.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pointsAwarded (Int)

The number of loyalty points that were awarded.

ledgerEntry (LoyaltyPointLedgerEntryType)

The ledger entry for the awarded loyalty points.

Mutation

mutation AwardLoyaltyPoints($input: AwardLoyaltyPointsInput!) {
  awardLoyaltyPoints(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pointsAwarded
    ledgerEntry {
      ...LoyaltyPointLedgerEntryTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "awardLoyaltyPoints": {
      "possibleErrors": [PossibleErrorType],
      "pointsAwarded": 1,
      "ledgerEntry": LoyaltyPointLedgerEntryType
    }
  }
}

backendScreenEvent

Type:BackendScreenEvent

URL:https://api.octopus.energy/v1/graphql/

Look up an event to perform from its event_id, and return the next action to perform.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-8002: No event found.
  • KT-CT-8003: Event has no execute function.
  • KT-CT-8004: Error executing event in the backend.
  • KT-CT-8007: Incorrect or missing parameters for backend screen event.
  • KT-GB-9310: Account ineligible for joining Octoplus.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (BackendScreenEventInput!)

Input fields for performing a backend action.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

action (ActionType)

An action to perform.

Mutation

mutation BackendScreenEvent($input: BackendScreenEventInput!) {
  backendScreenEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    action {
      ... on DeeplinkActionType {
        ...DeeplinkActionTypeFragment
      }
      ... on LinkActionType {
        ...LinkActionTypeFragment
      }
      ... on BackendScreenEventActionType {
        ...BackendScreenEventActionTypeFragment
      }
      ... on CloseActionType {
        ...CloseActionTypeFragment
      }
      ... on ScreenActionType {
        ...ScreenActionTypeFragment
      }
      ... on ShowInputFieldErrorsActionType {
        ...ShowInputFieldErrorsActionTypeFragment
      }
    }
  }
}

Variables

Response

{
  "data": {
    "backendScreenEvent": {
      "possibleErrors": [PossibleErrorType],
      "action": DeeplinkActionType
    }
  }
}

Arguments

NameDescription

input (BillToLatestSmartMeterSnapshotInput!)

Input fields for billing to latest smart meter snapshot.

Return fields

NameDescription

billedToDate (Date)

The date that has been billed up to.

currentBalance (Decimal)

The balance after attempting to bill.

Mutation

mutation BillToLatestSmartMeterSnapshot($input: BillToLatestSmartMeterSnapshotInput!) {
  billToLatestSmartMeterSnapshot(input: $input) {
    billedToDate
    currentBalance
  }
}

Response

{
  "data": {
    "billToLatestSmartMeterSnapshot": {
      "billedToDate": "2020-01-01",
      "currentBalance": "1.0"
    }
  }
}

blockRepaymentSubmission

Type:BlockRepaymentSubmission

URL:https://api.octopus.energy/v1/graphql/

Block a repayment from being submitted.

The possible errors that can be raised are:

  • KT-CT-3944: Account repayment does not exist.
  • KT-CT-3946: Unable to block a repayment from being submitted.
  • KT-CT-3950: The provided reason text is too long.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RepaymentInput!)

Input variable needed for blocking repayment submission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repaymentId (ID)

The repayment ID.

repaymentIntervention (RepaymentInterventionType)

Resulting Repayment Intervention details.

Mutation

mutation BlockRepaymentSubmission($input: RepaymentInput!) {
  blockRepaymentSubmission(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repaymentId
    repaymentIntervention {
      ...RepaymentInterventionTypeFragment
    }
  }
}

Variables

{
  "input": RepaymentInput
}

Response

{
  "data": {
    "blockRepaymentSubmission": {
      "possibleErrors": [PossibleErrorType],
      "repaymentId": "abc123",
      "repaymentIntervention": RepaymentInterventionType
    }
  }
}

bulkUpdateSensorDisplayName

Type:BulkUpdateSensorDisplayName

URL:https://api.octopus.energy/v1/graphql/

Update the display name of multiple sensors.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'bulkUpdateSensorDisplayName' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

updates ([SensorDisplayNameUpdate]!)

A list of sensor codes and display names to set.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionIds ([SensorUpdateTransactionId])

A mapping of transaction ids for each sensor.

Mutation

mutation BulkUpdateSensorDisplayName(
  $accountNumber: String!,
  $euid: ID!,
  $updates: [SensorDisplayNameUpdate]!
) {
  bulkUpdateSensorDisplayName(
    accountNumber: $accountNumber,
    euid: $euid,
    updates: $updates
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionIds {
      ...SensorUpdateTransactionIdFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "updates": SensorDisplayNameUpdate
}

Response

{
  "data": {
    "bulkUpdateSensorDisplayName": {
      "possibleErrors": [PossibleErrorType],
      "transactionIds": [SensorUpdateTransactionId]
    }
  }
}

calculateDepositAmount

Type:CalculateDepositAmount

URL:https://api.octopus.energy/v1/graphql/

Calculate the deposit amount. Record the deposit amount and return the key

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

calculateDepositAmountInput (CalculateDepositAmountInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

depositAmount (Int)

Security deposit amount in pence.

key (String)

unique key of the record inserted in DepositAmount model.

Mutation

mutation CalculateDepositAmount($calculateDepositAmountInput: CalculateDepositAmountInput!) {
  calculateDepositAmount(calculateDepositAmountInput: $calculateDepositAmountInput) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    depositAmount
    key
  }
}

Variables

{
  "calculateDepositAmountInput": CalculateDepositAmountInput
}

Response

{
  "data": {
    "calculateDepositAmount": {
      "possibleErrors": [PossibleErrorType],
      "depositAmount": 1,
      "key": "abc123"
    }
  }
}

cancelEnrollment

Type:EnrollmentCancelled!

URL:https://api.octopus.energy/v1/graphql/

Cancel an enrollment for an account and a set of supply points.

The possible errors that can be raised are:

  • KT-CT-10312: Mutation not enabled in this environment.
  • KT-CT-10318: Enrollment process not found.
  • KT-CT-10319: Enrollment process failed to cancel.
  • KT-CT-10320: Enrollment process not cancellable.
  • KT-CT-10321: Enrollment cancellation workflow not defined.
  • KT-CT-10323: Enrollment process failed to cancel.
  • KT-CT-10338: Enrollment process cannot be cancelled.
  • KT-CT-10331: Missing required process number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelEnrollmentInput!)

Return fields

NameDescription

Mutation

mutation CancelEnrollment($input: CancelEnrollmentInput!) {
  cancelEnrollment(input: $input) {
    message
    enrollmentProcess {
      ... on JoinSupplierProcessType {
        ...JoinSupplierProcessTypeFragment
      }
      ... on OccupyPropertyProcessType {
        ...OccupyPropertyProcessTypeFragment
      }
    }
  }
}

Variables

Response

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

cancelEnrolment

Type:CancelEnrolment

URL:https://api.octopus.energy/v1/graphql/

Cancel the enrolment of an account to a supplier.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-GB-4136: Account cannot be withdrawn.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelEnrolmentInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountNumber (String)

The number of the account whose enrolment was cancelled.

Mutation

mutation CancelEnrolment($input: CancelEnrolmentInput) {
  cancelEnrolment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountNumber
  }
}

Variables

Response

{
  "data": {
    "cancelEnrolment": {
      "possibleErrors": [PossibleErrorType],
      "accountNumber": "abc123"
    }
  }
}

cancelLeaveSupplier

Type:LeaveSupplierCancelled!

URL:https://api.octopus.energy/v1/graphql/

Cancel a leave supplier process.

The possible errors that can be raised are:

  • KT-CT-10304: Mutation not enabled in this environment.
  • KT-CT-10302: Invalid data.
  • KT-CT-10305: Failed to cancel leave supplier process - market actions are no longer cancellable.
  • KT-CT-10306: Failed to cancel leave supplier process - the cancellation workflow has not been configured.
  • KT-CT-10307: Failed to cancel leave supplier process - failed to cancel market actions.
  • KT-CT-10308: Failed to cancel leave supplier process.
  • KT-CT-10311: Failed to cancel leave supplier process. The process status is not in cancellable status.
  • KT-CT-1607: Value cannot be empty.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelLeaveSupplierInput!)

Return fields

NameDescription

Mutation

mutation CancelLeaveSupplier($input: CancelLeaveSupplierInput!) {
  cancelLeaveSupplier(input: $input) {
    message
  }
}

Variables

Response

{
  "data": {
    "cancelLeaveSupplier": {
      "message": "abc123"
    }
  }
}

cancelOnSiteJobsAppointment

Type:CancelOnSiteJobsAppointment

URL:https://api.octopus.energy/v1/graphql/

Cancel an Appointment.

The possible errors that can be raised are:

  • KT-CT-13001: Appointment does not exist.
  • KT-CT-13019: Vendor not found.
  • KT-CT-13017: Appointment cancellation not supported.
  • KT-CT-13053: Failed to cancel the appointment with the agent.
  • KT-CT-13018: Unable to record cancellationcategory/cancellationsub_category.
  • KT-CT-13043: Cannot update appointment as it has terminal status.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelOnSiteJobsAppointmentInputType!)

The input objects required to cancel an Appointment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsAppointment (OnSiteJobsAppointmentType)

The Appointment that was cancelled.

Mutation

mutation CancelOnSiteJobsAppointment($input: CancelOnSiteJobsAppointmentInputType!) {
  cancelOnSiteJobsAppointment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsAppointment {
      ...OnSiteJobsAppointmentTypeFragment
    }
  }
}

Response

{
  "data": {
    "cancelOnSiteJobsAppointment": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsAppointment": OnSiteJobsAppointmentType
    }
  }
}

cancelPayment

Type:CancelPayment

URL:https://api.octopus.energy/v1/graphql/

Cancel an in-flight payment.

The possible errors that can be raised are:

  • KT-CT-3924: Unauthorized.
  • KT-CT-3954: Payment cancellation failed.
  • KT-CT-3955: Payment cannot be cancelled.
  • KT-CT-3956: Temporary error occurred.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelPaymentInput!)

Input fields for cancelling a pending payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (AccountPaymentType)

The cancelled payment.

Mutation

mutation CancelPayment($input: CancelPaymentInput!) {
  cancelPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...AccountPaymentTypeFragment
    }
  }
}

Variables

{
  "input": CancelPaymentInput
}

Response

{
  "data": {
    "cancelPayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": AccountPaymentType
    }
  }
}

cancelRepaymentRequest

Type:CancelRepaymentRequest

URL:https://api.octopus.energy/v1/graphql/

Cancel a repayment or refund request.

The possible errors that can be raised are:

  • KT-CT-4231: Unauthorized.
  • KT-CT-3930: The repayment or refund request does not exist.
  • KT-CT-3931: This repayment or refund request cannot be cancelled.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (CancelRepaymentRequestInputType!)

Input fields for cancelling a repayment request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repaymentRequest (CancelRepaymentRequestOutputType)

The cancelled repayment/refund request.

Mutation

mutation CancelRepaymentRequest($input: CancelRepaymentRequestInputType!) {
  cancelRepaymentRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repaymentRequest {
      ...CancelRepaymentRequestOutputTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "cancelRepaymentRequest": {
      "possibleErrors": [PossibleErrorType],
      "repaymentRequest": CancelRepaymentRequestOutputType
    }
  }
}

cancelSiteworksAppointment

Type:CancelSiteworksAppointment

URL:https://api.octopus.energy/v1/graphql/

Cancel a Siteworks appointment.

Deprecated

The 'cancelSiteworksAppointment' field is deprecated.

Please use cancelOnSiteJobsAppointment instead.

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

Arguments

NameDescription

input (CancelSiteworksAppointmentInput!)

Input fields for cancelling a siteworks appointment.

Return fields

NameDescription

siteworksAppointment (ActiveAppointmentType)

Mutation

mutation CancelSiteworksAppointment($input: CancelSiteworksAppointmentInput!) {
  cancelSiteworksAppointment(input: $input) {
    siteworksAppointment {
      ...ActiveAppointmentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "cancelSiteworksAppointment": {
      "siteworksAppointment": ActiveAppointmentType
    }
  }
}

cancelSmartFlexOnboarding

Type:CancelSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Cancel onboarding of a device with SmartFlex.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CancelSmartFlexOnboardingInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation CancelSmartFlexOnboarding($input: CancelSmartFlexOnboardingInput!) {
  cancelSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "cancelSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

checkBusinessCreditRisk

Type:CheckBusinessCreditRisk

URL:https://api.octopus.energy/v1/graphql/

Create and retrieve a business credit risk analysis using a creditscore for LTDs.

Arguments

NameDescription

checkBusinessCreditRiskInput (CheckBusinessCreditRiskInput!)

Input for checking business credit risk.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentMultiplier (Int)

PaymentMultiplier to determine deposit amount.

Mutation

mutation CheckBusinessCreditRisk($checkBusinessCreditRiskInput: CheckBusinessCreditRiskInput!) {
  checkBusinessCreditRisk(checkBusinessCreditRiskInput: $checkBusinessCreditRiskInput) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentMultiplier
  }
}

Variables

{
  "checkBusinessCreditRiskInput": CheckBusinessCreditRiskInput
}

Response

{
  "data": {
    "checkBusinessCreditRisk": {
      "possibleErrors": [PossibleErrorType],
      "paymentMultiplier": 1
    }
  }
}

checkDeviceConnection

Type:CheckDeviceConnection

URL:https://api.octopus.energy/v1/graphql/

Triggers an asynchronous request to check the connection of a device. The request reference is returned, which can be used to track the status of the request.

Arguments

NameDescription

input (CheckDeviceConnectionInput!)

Input field for checking device connection.

Return fields

NameDescription

requestReference (String)

The reference of the request in Kraken.

Mutation

mutation CheckDeviceConnection($input: CheckDeviceConnectionInput!) {
  checkDeviceConnection(input: $input) {
    requestReference
  }
}

Variables

Response

{
  "data": {
    "checkDeviceConnection": {
      "requestReference": "abc123"
    }
  }
}

claimOctoplusReward

Type:ClaimOctoplusReward

URL:https://api.octopus.energy/v1/graphql/

Claim an Octoplus Reward.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.
  • KT-GB-9319: This feature is not currently available.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'claimOctoplusReward' field is deprecated.

The Octoplus feature is going through changes. This mutation is no longer available.

- Marked as deprecated on 2026-02-10.
- Scheduled for removal on or after 2026-08-10.

Arguments

NameDescription

accountNumber (String!)

The account number for the Octoplus-enrolled account.

offerSlug (String!)

The unique string identifier for the offer to be claimed.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

rewardId (String)

The ID of the claimed reward.

Mutation

mutation ClaimOctoplusReward(
  $accountNumber: String!,
  $offerSlug: String!
) {
  claimOctoplusReward(
    accountNumber: $accountNumber,
    offerSlug: $offerSlug
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    rewardId
  }
}

Variables

{
  "accountNumber": "abc123",
  "offerSlug": "abc123"
}

Response

{
  "data": {
    "claimOctoplusReward": {
      "possibleErrors": [PossibleErrorType],
      "rewardId": "abc123"
    }
  }
}

claimShoptopusVoucher

Type:ClaimShoptopusVoucher

URL:https://api.octopus.energy/v1/graphql/

Claim a Shoptopus Voucher using Octopoints.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.
  • KT-GB-9319: This feature is not currently available.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'claimShoptopusVoucher' field is deprecated.

The Octoplus feature is going through changes. This mutation is no longer available.

- Marked as deprecated on 2026-02-10.
- Scheduled for removal on or after 2026-08-10.

Arguments

NameDescription

accountNumber (String!)

The account number for the Octoplus-enrolled account.

points (Int!)

The number of Octopoints to exchange for a reward.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

code (String)

The Reward Voucher code.

Mutation

mutation ClaimShoptopusVoucher(
  $accountNumber: String!,
  $points: Int!
) {
  claimShoptopusVoucher(
    accountNumber: $accountNumber,
    points: $points
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    code
  }
}

Variables

{
  "accountNumber": "abc123",
  "points": 1
}

Response

{
  "data": {
    "claimShoptopusVoucher": {
      "possibleErrors": [PossibleErrorType],
      "code": "abc123"
    }
  }
}

closeDcaProceeding

Type:CloseDCAProceeding

URL:https://api.octopus.energy/v1/graphql/

Close the DCA proceeding for an account.

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-11602: Could not find DCA with that name.
  • KT-CT-11603: Could not stop debt collection proceeding.
  • KT-CT-11604: Active debt collection proceeding does not exist for account.
  • KT-CT-11605: Multiple active Proceeding's found for same agency and campaign on account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CloseDCAProceedingInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

dcaProceedingClosureStatus (DCAProceedingClosureStatus)

Whether the closure could be applied.

Mutation

mutation CloseDcaProceeding($input: CloseDCAProceedingInputType!) {
  closeDcaProceeding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    dcaProceedingClosureStatus {
      ...DCAProceedingClosureStatusFragment
    }
  }
}

Variables

Response

{
  "data": {
    "closeDcaProceeding": {
      "possibleErrors": [PossibleErrorType],
      "dcaProceedingClosureStatus": DCAProceedingClosureStatus
    }
  }
}

closeInkConversation

Type:CloseInkConversation

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7612: The Ink conversation was not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CloseInkConversationInput)

Input for closing an Ink conversation.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

conversation (InkConversation)

The conversation that was closed.

Mutation

mutation CloseInkConversation($input: CloseInkConversationInput) {
  closeInkConversation(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    conversation {
      ...InkConversationFragment
    }
  }
}

Variables

Response

{
  "data": {
    "closeInkConversation": {
      "possibleErrors": [PossibleErrorType],
      "conversation": InkConversation
    }
  }
}

closeInkLiveChat

Type:CloseInkLiveChatConversation

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7616: Not yet implemented.
  • KT-CT-7643: The Live Chat was not found.
  • KT-CT-7644: Ink Live Chat conversation not found.
  • KT-CT-7652: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CloseInkLiveChaConversationtInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

liveChatConversation (InkLiveChatConversation)

The live chat conversation.

Mutation

mutation CloseInkLiveChat($input: CloseInkLiveChaConversationtInput) {
  closeInkLiveChat(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    liveChatConversation {
      ...InkLiveChatConversationFragment
    }
  }
}

Variables

Response

{
  "data": {
    "closeInkLiveChat": {
      "possibleErrors": [PossibleErrorType],
      "liveChatConversation": InkLiveChatConversation
    }
  }
}

closeOpenPrintBatch

Type:CloseOpenPrintBatch!

URL:https://api.octopus.energy/v1/graphql/

Close the Open Print Batch if any.

The possible errors that can be raised are:

  • KT-CT-9010: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Return fields

NameDescription

Mutation

mutation CloseOpenPrintBatch {
  closeOpenPrintBatch {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    printBatch {
      ...PrintBatchTypeFragment
    }
  }
}

Response

{
  "data": {
    "closeOpenPrintBatch": {
      "possibleErrors": [PossibleErrorType],
      "printBatch": PrintBatchType
    }
  }
}

collectDeposit

Type:CollectDeposit

URL:https://api.octopus.energy/v1/graphql/

Collect deposit for the given account.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-5711: No collection is required.
  • KT-CT-5712: Deposit agreement does not exist or has not been accepted.
  • KT-CT-5713: Payment instruction is not usable.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CollectDepositInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (CollectDepositOutput)

Mutation

mutation CollectDeposit($input: CollectDepositInput!) {
  collectDeposit(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...CollectDepositOutputFragment
    }
  }
}

Variables

{
  "input": CollectDepositInput
}

Response

{
  "data": {
    "collectDeposit": {
      "possibleErrors": [PossibleErrorType],
      "payment": CollectDepositOutput
    }
  }
}

collectPayment

Type:CollectPayment

URL:https://api.octopus.energy/v1/graphql/

Attempt to collect a one-off payment. If an instruction type is provided and there is an existing payment instruction, the payment can be collected immediately. A request to collect a payment at a future date can also be made, in which case the instruction input type is not necessary, but an instruction must exist at the specified collection date for the payment to be collected successfully.

The possible errors that can be raised are:

  • KT-CT-3932: Invalid data.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CollectPaymentInput!)

Input fields for collecting a payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (AccountPaymentType)

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

Mutation

mutation CollectPayment($input: CollectPaymentInput!) {
  collectPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...AccountPaymentTypeFragment
    }
  }
}

Variables

{
  "input": CollectPaymentInput
}

Response

{
  "data": {
    "collectPayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": AccountPaymentType
    }
  }
}

commenceDcaProceeding

Type:CommenceDCAProceeding

URL:https://api.octopus.energy/v1/graphql/

Add commencement to an account.

The possible errors that can be raised are:

  • KT-CT-11606: Debt Collection Agency cannot use campaign.
  • KT-CT-11601: Cannot start collection proceeding, proceeding for this account already exists.
  • KT-CT-11602: Could not find DCA with that name.
  • KT-CT-11607: Invalid ledger number for debt collection proceeding.
  • KT-CT-11608: Ledger does not belong to account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CommenceDCAProceedingInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

dcaProceedingCommencementStatus (DCAProceedingCommencementStatus)

Whether the commencement could be applied.

Mutation

mutation CommenceDcaProceeding($input: CommenceDCAProceedingInputType!) {
  commenceDcaProceeding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    dcaProceedingCommencementStatus {
      ...DCAProceedingCommencementStatusFragment
    }
  }
}

Variables

Response

{
  "data": {
    "commenceDcaProceeding": {
      "possibleErrors": [PossibleErrorType],
      "dcaProceedingCommencementStatus": DCAProceedingCommencementStatus
    }
  }
}

commissionMeter

Type:CommissionMeter

URL:https://api.octopus.energy/v1/graphql/

Commissions the device after the meter has been physically installed.

The possible errors that can be raised are:

  • KT-GB-4021: Invalid MPxN.
  • KT-GB-4022: MPxN not recognised.
  • KT-GB-4023: Error sending the request to commission the device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CommissionMeterInput!)

Input fields for commission meters.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The id of the SMETS Commission Request in Kraken.

Mutation

mutation CommissionMeter($input: CommissionMeterInput!) {
  commissionMeter(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "commissionMeter": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

completeAuthFlowForSmartFlexOnboarding

Type:CompleteAuthFlowForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Complete the authentication flow to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CompleteAuthFlowInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation CompleteAuthFlowForSmartFlexOnboarding($input: CompleteAuthFlowInput!) {
  completeAuthFlowForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "completeAuthFlowForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

completeEnrollment

Type:CompleteEnrollment

URL:https://api.octopus.energy/v1/graphql/

Complete the enrollment of a property on the account that was missing meter point details by supplying the required meter point information.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-6622: Unauthorized.
  • KT-GB-4138: Unable to complete enrollment for account.
  • KT-GB-4139: Unable to complete enrollment.
  • KT-GB-4140: MPAN number is required for enrollment.
  • KT-GB-4141: MPRN number is required for enrollment.
  • KT-GB-4142: Prepay meter could not be enrolled.
  • KT-GB-4143: MPAN not required to complete enrollment.
  • KT-GB-4144: MPRN not required to complete enrollment.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CompleteEnrollmentInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountNumber (String)

The number of the account whose enrollment was completed.

Mutation

mutation CompleteEnrollment($input: CompleteEnrollmentInput) {
  completeEnrollment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountNumber
  }
}

Variables

Response

{
  "data": {
    "completeEnrollment": {
      "possibleErrors": [PossibleErrorType],
      "accountNumber": "abc123"
    }
  }
}

completeStandalonePayment

Type:CompleteStandalonePayment

URL:https://api.octopus.energy/v1/graphql/

Complete a standalone payment.

The possible errors that can be raised are:

  • KT-CT-3822: Unauthorized.
  • KT-CT-3823: Unauthorized.
  • KT-CT-3974: Unauthorized.
  • KT-CT-3975: Unable to complete standalone payment.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CompleteStandalonePaymentInput!)

Input fields for completing a standalone payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (CompleteStandalonePaymentOutput)

The completed standalone payment.

Mutation

mutation CompleteStandalonePayment($input: CompleteStandalonePaymentInput!) {
  completeStandalonePayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...CompleteStandalonePaymentOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "completeStandalonePayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": CompleteStandalonePaymentOutput
    }
  }
}

completeTeslaSetupVirtualKeyForSmartFlexOnboarding

Type:CompleteTeslaSetupVirtualKeyForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Complete the Tesla virtual key setup onboarding step.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CompleteSmartFlexOnboardingStepInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation CompleteTeslaSetupVirtualKeyForSmartFlexOnboarding($input: CompleteSmartFlexOnboardingStepInput!) {
  completeTeslaSetupVirtualKeyForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Response

{
  "data": {
    "completeTeslaSetupVirtualKeyForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

completeUserActionForSmartFlexOnboarding

Type:CompleteUserActionRequiredForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Complete the user action required step to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CompleteSmartFlexOnboardingStepInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation CompleteUserActionForSmartFlexOnboarding($input: CompleteSmartFlexOnboardingStepInput!) {
  completeUserActionForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Response

{
  "data": {
    "completeUserActionForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

completeUserInputRequiredForSmartFlexOnboarding

Type:CompleteUserInputRequiredForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Complete the user input required step to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UserInputRequiredInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation CompleteUserInputRequiredForSmartFlexOnboarding($input: UserInputRequiredInput!) {
  completeUserInputRequiredForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "completeUserInputRequiredForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

confirmDoubleOptIn

Type:ConfirmDoubleOptIn

URL:https://api.octopus.energy/v1/graphql/

Confirm a double opt in

The possible errors that can be raised are:

  • KT-CT-9016: Consent management not enabled.
  • KT-CT-9020: Invalid consent expiring token.
  • KT-CT-9021: Consent expiring token not found.
  • KT-CT-9022: Consent for given token already accepted.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ConfirmDoubleOptInInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

consent (ConsentType)

The consent that was created or updated.

Mutation

mutation ConfirmDoubleOptIn($input: ConfirmDoubleOptInInput) {
  confirmDoubleOptIn(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    consent {
      ...ConsentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "confirmDoubleOptIn": {
      "possibleErrors": [PossibleErrorType],
      "consent": ConsentType
    }
  }
}

confirmSiteworksAppointmentSlot

Type:ConfirmSiteworksAppointmentSlot

URL:https://api.octopus.energy/v1/graphql/

Confirm an appointment slot returned by the appointment slots query.

The possible errors that can be raised are:

  • KT-GB-4219: Property does not exist.
  • KT-GB-4220: No account currently active at property.
  • KT-GB-4221: Could not confirm duplicate property.
  • KT-GB-4228: Cannot currently book appointments for legacy prepay meters.
  • KT-GB-4229: A smart meter exchange appointment for this date already exists.
  • KT-GB-4210: Bookings not supported for agent appointed at property.
  • KT-GB-4211: Timeslot no longer available.
  • KT-GB-4212: Missing or invalid data for account or property.
  • KT-GB-4234: Booking service currently unavailable.
  • KT-GB-4217: Unknown agent carrying out the appointment.
  • KT-GB-4240: Job type entry is not enabled.
  • KT-GB-4239: Job type value is not supported by the agent appointed at property.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ConfirmSiteworksAppointmentSlotInput!)

Input fields for booking a siteworks appointment slot.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

siteworksAppointment (ActiveAppointmentType)

Mutation

mutation ConfirmSiteworksAppointmentSlot($input: ConfirmSiteworksAppointmentSlotInput!) {
  confirmSiteworksAppointmentSlot(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    siteworksAppointment {
      ...ActiveAppointmentTypeFragment
    }
  }
}

Response

{
  "data": {
    "confirmSiteworksAppointmentSlot": {
      "possibleErrors": [PossibleErrorType],
      "siteworksAppointment": ActiveAppointmentType
    }
  }
}

connectAiAgentToCall

Type:ConnectAiAgentToCall

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-11802: Call not found.
  • KT-CT-11815: Unable to connect a call to an AI agent.
  • KT-CT-11817: Invalid call ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ConnectAiAgentToCallInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

call (InboundCallType)

The call the AI agent was connected to.

Mutation

mutation ConnectAiAgentToCall($input: ConnectAiAgentToCallInput!) {
  connectAiAgentToCall(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    call {
      ...InboundCallTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "connectAiAgentToCall": {
      "possibleErrors": [PossibleErrorType],
      "call": InboundCallType
    }
  }
}

createAccountCharge

Type:CreateAccountCharge

URL:https://api.octopus.energy/v1/graphql/

Add charge to an account.

The possible errors that can be raised are:

  • KT-CT-5211: The charge reason with the requested code is deprecated.
  • KT-CT-5212: The charge reason with the requested code does not exist.
  • KT-CT-5213: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAccountChargeInput!)

Input fields for creating an account charge.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountCharge (AccountChargeType)

Mutation

mutation CreateAccountCharge($input: CreateAccountChargeInput!) {
  createAccountCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountCharge {
      ...AccountChargeTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAccountCharge": {
      "possibleErrors": [PossibleErrorType],
      "accountCharge": AccountChargeType
    }
  }
}

Arguments

NameDescription

input (CreateAccountFileAttachmentInput!)

Return fields

NameDescription

Mutation

mutation CreateAccountFileAttachment($input: CreateAccountFileAttachmentInput!) {
  createAccountFileAttachment(input: $input) {
    postRequest {
      ...UploadPostRequestFragment
    }
    clientMutationId
  }
}

Variables

Response

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

createAccountNote

Type:CreateAccountNote

URL:https://api.octopus.energy/v1/graphql/

Add a note to an account.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-4180: Account note must be a valid string.
  • KT-CT-4196: Unpin at date provided is in the past.
  • KT-CT-4195: Unpin at date provided for an unpinned note.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAccountNoteInput!)

Input variables needed for adding a note to an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

Account, which has the added note.

Mutation

mutation CreateAccountNote($input: CreateAccountNoteInput!) {
  createAccountNote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

createAccountPaymentSchedule

Type:CreateAccountPaymentSchedule

URL:https://api.octopus.energy/v1/graphql/

Replace an existing payment schedule with a new one that updates either the payment amount or payment day.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-3815: No active payment schedule found for this account.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3923: Unauthorized.
  • KT-CT-3941: Invalid data.
  • KT-CT-3942: An unexpected error occurred.
  • KT-CT-3947: An unexpected error occurred.
  • KT-CT-3960: Invalid value for payment day.
  • KT-CT-3961: Cannot update plan-associated payment schedule.
  • KT-CT-3962: No new value provided to update payment schedule.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAccountPaymentScheduleInput!)

Input fields for updating a payment schedule.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

schedule (PaymentScheduleType!)

New payment schedule.

Mutation

mutation CreateAccountPaymentSchedule($input: CreateAccountPaymentScheduleInput!) {
  createAccountPaymentSchedule(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    schedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAccountPaymentSchedule": {
      "possibleErrors": [PossibleErrorType],
      "schedule": PaymentScheduleType
    }
  }
}

createAccountReference

Type:CreateAccountReference

URL:https://api.octopus.energy/v1/graphql/

Create an account reference.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-8310: Invalid data.
  • KT-CT-8311: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AccountReferenceInput!)

Input fields for creating an account reference.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReference (AccountReferenceType)

Mutation

mutation CreateAccountReference($input: AccountReferenceInput!) {
  createAccountReference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReference {
      ...AccountReferenceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAccountReference": {
      "possibleErrors": [PossibleErrorType],
      "accountReference": AccountReferenceType
    }
  }
}

createAccountReminder

Type:CreateAccountReminder

URL:https://api.octopus.energy/v1/graphql/

Create an account reminder.

The possible errors that can be raised are:

  • KT-CT-1401: Invalid data.
  • KT-CT-1402: Unable to create account reminder.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'createAccountReminder' field is deprecated.


This mutation rely on legacy reminder types.
Please use the createReminder mutation which uses the new registry based reminder types instead.


- Marked as deprecated on 2024-11-14.
- Scheduled for removal on or after 2025-04-16.

Arguments

NameDescription

input (CreateAccountReminderInput!)

Input variables needed for creating an account reminder.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReminder (AccountReminder)

Account reminder.

Mutation

mutation CreateAccountReminder($input: CreateAccountReminderInput!) {
  createAccountReminder(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReminder {
      ...AccountReminderFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAccountReminder": {
      "possibleErrors": [PossibleErrorType],
      "accountReminder": AccountReminder
    }
  }
}

createAcquisitionQuoteRequestForProducts

Type:CreateAcquisitionQuoteRequestForProducts

URL:https://api.octopus.energy/v1/graphql/

Create an acquisition quote request for requested products without persisting to the database.

The possible errors that can be raised are:

  • KT-GB-4625: Unable to create quote request.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (CreateAcquisitionQuoteRequestForProductsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (QuoteRequestBase)

Returns a quote request for the requested product codes. Does not persist the quote.

Mutation

mutation CreateAcquisitionQuoteRequestForProducts($input: CreateAcquisitionQuoteRequestForProductsInput!) {
  createAcquisitionQuoteRequestForProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...QuoteRequestBaseFragment
    }
  }
}

Response

{
  "data": {
    "createAcquisitionQuoteRequestForProducts": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": QuoteRequestBase
    }
  }
}

Type:CreateAffiliateLink!

URL:https://api.octopus.energy/v1/graphql/

Create an affiliate link for a new sales agent.

The possible errors that can be raised are:

  • KT-CT-7711: Invalid data.
  • KT-CT-7713: Invalid data.
  • KT-CT-7714: Invalid data.
  • KT-CT-7715: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAffiliateLinkInputType!)

Input fields for creating an affiliate link for an organisation.

Return fields

NameDescription

Mutation

mutation CreateAffiliateLink($input: CreateAffiliateLinkInputType!) {
  createAffiliateLink(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    affiliateLink {
      ...AffiliateLinkTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAffiliateLink": {
      "possibleErrors": [PossibleErrorType],
      "affiliateLink": AffiliateLinkType
    }
  }
}

createAffiliateOrganisation

Type:CreateAffiliateOrganisation!

URL:https://api.octopus.energy/v1/graphql/

Create an affiliate organisation.

The possible errors that can be raised are:

  • KT-CT-7716: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAffiliateOrganisationInputType!)

Input fields for creating an affiliate organisation.

Return fields

NameDescription

Mutation

mutation CreateAffiliateOrganisation($input: CreateAffiliateOrganisationInputType!) {
  createAffiliateOrganisation(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    affiliateOrganisation {
      ...AffiliateOrganisationTypeFragment
    }
  }
}

Response

{
  "data": {
    "createAffiliateOrganisation": {
      "possibleErrors": [PossibleErrorType],
      "affiliateOrganisation": AffiliateOrganisationType
    }
  }
}

Arguments

NameDescription

input (CreateAffiliateSessionInputType!)

Input fields for creating a session for an affiliate link.

Return fields

NameDescription

Mutation

mutation CreateAffiliateSession($input: CreateAffiliateSessionInputType!) {
  createAffiliateSession(input: $input) {
    affiliateSession {
      ...AffiliateSessionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAffiliateSession": {
      "affiliateSession": AffiliateSessionType
    }
  }
}

createAgreement

Type:CreateAgreement

URL:https://api.octopus.energy/v1/graphql/

Create a new agreement.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-4719: No supply point found for identifier provided.
  • KT-CT-4910: No product exists with the given input.
  • KT-CT-1503: Agreement validto date must be later than validfrom date.
  • KT-CT-1509: Unable to create agreement.
  • KT-CT-1511: Cannot create overlapping agreement.
  • KT-CT-1512: Account type does not support agreements.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAgreementInput!)

Input fields for creating an agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreement (CommonAgreementType)

The created agreement.

Mutation

mutation CreateAgreement($input: CreateAgreementInput!) {
  createAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreement {
      ...CommonAgreementTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAgreement": {
      "possibleErrors": [PossibleErrorType],
      "agreement": CommonAgreementType
    }
  }
}

createAgreementRollover

Type:CreateAgreementRollover

URL:https://api.octopus.energy/v1/graphql/

Create an agreement rollover for a specific account and agreement.

The possible errors that can be raised are:

  • KT-CT-1501: Agreement not found.
  • KT-CT-4910: No product exists with the given input.
  • KT-CT-4924: Unauthorized.
  • KT-CT-13701: An active agreement rollover already exists for this agreement.
  • KT-CT-13702: Expected send date cannot be in the past.
  • KT-CT-13703: Rollover date cannot be in the past.
  • KT-CT-13704: Unable to create agreement rollover.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAgreementRolloverInput!)

Create an agreement rollover for a specific account and agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreementRollover (AgreementRolloverType)

The new agreement rollover.

Mutation

mutation CreateAgreementRollover($input: CreateAgreementRolloverInput!) {
  createAgreementRollover(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreementRollover {
      ...AgreementRolloverTypeFragment
    }
  }
}

Variables

Response

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

createApiCall

Type:CreateAPICall

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new APICall instance.

The possible errors that can be raised are:

  • KT-CT-7803: Received an invalid apiExceptionId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAPICallInput!)

Input fields for creating an API call.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiCall (APICallType)

The created APICall.

Mutation

mutation CreateApiCall($input: CreateAPICallInput!) {
  createApiCall(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiCall {
      ...APICallTypeFragment
    }
  }
}

Variables

{
  "input": CreateAPICallInput
}

Response

{
  "data": {
    "createApiCall": {
      "possibleErrors": [PossibleErrorType],
      "apiCall": APICallType
    }
  }
}

createApiException

Type:CreateAPIException

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new APIException instance.

The possible errors that can be raised are:

  • KT-CT-7801: Received an invalid operationsTeamId.
  • KT-CT-7802: The external identifier already exists.
  • KT-CT-7805: Too many tags associated with this API Exception.
  • KT-CT-7806: Cannot create duplicate tags for the same API exception.
  • KT-CT-7811: Received an invalid assignedUserId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAPIExceptionInput!)

Input fields for creating an API exception.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiException (APIExceptionType)

The created APIException.

Mutation

mutation CreateApiException($input: CreateAPIExceptionInput!) {
  createApiException(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiException {
      ...APIExceptionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createApiException": {
      "possibleErrors": [PossibleErrorType],
      "apiException": APIExceptionType
    }
  }
}

createApiExceptionEvent

Type:CreateAPIExceptionEvent

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new APIExceptionEvent instance.

The possible errors that can be raised are:

  • KT-CT-7803: Received an invalid apiExceptionId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAPIExceptionEventInput!)

Input fields for creating an API exception event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiExceptionEvent (APIExceptionEventType)

The created APIExceptionEvent.

Mutation

mutation CreateApiExceptionEvent($input: CreateAPIExceptionEventInput!) {
  createApiExceptionEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiExceptionEvent {
      ...APIExceptionEventTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createApiExceptionEvent": {
      "possibleErrors": [PossibleErrorType],
      "apiExceptionEvent": APIExceptionEventType
    }
  }
}

createApiExceptionNote

Type:CreateAPIExceptionNote

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new APIExceptionNote instance.

The possible errors that can be raised are:

  • KT-CT-7803: Received an invalid apiExceptionId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAPIExceptionNoteInput!)

Input fields for creating an API exception note.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiException (APIExceptionType)

The created APIExceptionNote.

Mutation

mutation CreateApiExceptionNote($input: CreateAPIExceptionNoteInput!) {
  createApiExceptionNote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiException {
      ...APIExceptionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createApiExceptionNote": {
      "possibleErrors": [PossibleErrorType],
      "apiException": APIExceptionType
    }
  }
}

createAudioRecording

Type:CreateAudioRecording!

URL:https://api.octopus.energy/v1/graphql/

Create an audio recording for an affiliate session.

The possible errors that can be raised are:

  • KT-CT-7720: Invalid S3 key format.
  • KT-CT-7721: Link not found.
  • KT-CT-7722: Invalid input for audio recording upload.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AudioRecordingInputType!)

Input fields required to create an audio recording.

Return fields

NameDescription

Mutation

mutation CreateAudioRecording($input: AudioRecordingInputType!) {
  createAudioRecording(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    audioRecording {
      ...AudioRecordingTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAudioRecording": {
      "possibleErrors": [PossibleErrorType],
      "audioRecording": AudioRecordingType
    }
  }
}

createAutoTopupConfig

Type:CreateAutoTopupConfig

URL:https://api.octopus.energy/v1/graphql/

Create a new auto top-up config for SPAYG meter.

Arguments

NameDescription

input (CreateAutoTopupConfigInput!)

Input fields for creating an auto top-up config.

Return fields

NameDescription

autoTopupConfig (AutoTopupConfigType!)

The created auto top-up config.

Mutation

mutation CreateAutoTopupConfig($input: CreateAutoTopupConfigInput!) {
  createAutoTopupConfig(input: $input) {
    autoTopupConfig {
      ...AutoTopupConfigTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createAutoTopupConfig": {
      "autoTopupConfig": AutoTopupConfigType
    }
  }
}

createBusiness

Type:CreateBusiness

URL:https://api.octopus.energy/v1/graphql/

Create a business.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11108: Invalid data.
  • KT-CT-11109: Invalid data.
  • KT-CT-11110: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateBusinessInput!)

Input for creating a business.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

business (BusinessType)

The created business.

Mutation

mutation CreateBusiness($input: CreateBusinessInput!) {
  createBusiness(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    business {
      ...BusinessTypeFragment
    }
  }
}

Variables

{
  "input": CreateBusinessInput
}

Response

{
  "data": {
    "createBusiness": {
      "possibleErrors": [PossibleErrorType],
      "business": BusinessType
    }
  }
}

createCallMetadata

Type:CreateCallMetadata

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-11802: Call not found.
  • KT-CT-11806: Call metadata item key cannot be an empty string.
  • KT-CT-11807: A call metadata item with this key already exists for this call.
  • KT-CT-11817: Invalid call ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CallMetadataInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

call (CallInterface)

The call metadata was attached to.

Mutation

mutation CreateCallMetadata($input: CallMetadataInput!) {
  createCallMetadata(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    call {
      ...CallInterfaceFragment
    }
  }
}

Variables

{
  "input": CallMetadataInput
}

Response

{
  "data": {
    "createCallMetadata": {
      "possibleErrors": [PossibleErrorType],
      "call": CallInterface
    }
  }
}

createCampaignItems

Type:CreateCampaignItems

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-11501: Voice campaign not found.
  • KT-CT-11503: One or more campaign items are invalid and cannot be created.
  • KT-CT-11504: The batch of campaign items is too large.
  • KT-CT-11506: Invalid campaign ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateCampaignItemsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

campaignItems ([VoiceCampaignItemType])

batchIdentifier (String)

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

Mutation

mutation CreateCampaignItems($input: CreateCampaignItemsInput!) {
  createCampaignItems(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    campaignItems {
      ...VoiceCampaignItemTypeFragment
    }
    batchIdentifier
  }
}

Variables

Response

{
  "data": {
    "createCampaignItems": {
      "possibleErrors": [PossibleErrorType],
      "campaignItems": [VoiceCampaignItemType],
      "batchIdentifier": "abc123"
    }
  }
}

createCollectionProcessEvent

Type:CreateCollectionProcessEvent

URL:https://api.octopus.energy/v1/graphql/

Create an event for a collection process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-1605: Invalid input.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateCollectionProcessEventInputType!)

Input variables needed for creating a collection process event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessEvent (CollectionProcessEventOutputType)

The created collection process event.

Mutation

mutation CreateCollectionProcessEvent($input: CreateCollectionProcessEventInputType!) {
  createCollectionProcessEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessEvent {
      ...CollectionProcessEventOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "createCollectionProcessEvent": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessEvent": CollectionProcessEventOutputType
    }
  }
}

createComplaint

Type:CreateComplaint

URL:https://api.octopus.energy/v1/graphql/

Create a complaint.

The possible errors that can be raised are:

  • KT-CT-10801: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

complaint (CreateComplaintInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

complaint (ComplaintType)

The complaint that has been created.

Mutation

mutation CreateComplaint($complaint: CreateComplaintInputType!) {
  createComplaint(complaint: $complaint) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    complaint {
      ...ComplaintTypeFragment
    }
  }
}

Variables

{
  "complaint": CreateComplaintInputType
}

Response

{
  "data": {
    "createComplaint": {
      "possibleErrors": [PossibleErrorType],
      "complaint": ComplaintType
    }
  }
}

createContract

Type:CreateContractOutput!

URL:https://api.octopus.energy/v1/graphql/

Create and actualize a new contract for an account or business.

The possible errors that can be raised are:

  • KT-CT-10001: Party is already under contract.
  • KT-CT-10006: Account not found.
  • KT-CT-10021: Business not found.
  • KT-CT-10018: The provided contract subject is invalid.
  • KT-CT-10019: Contract creation implies breach.
  • KT-CT-10020: The provided contract party payload is invalid.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateContractInput!)

Return fields

NameDescription

Mutation

mutation CreateContract($input: CreateContractInput!) {
  createContract(input: $input) {
    identifier
    wasCreated
  }
}

Variables

{
  "input": CreateContractInput
}

Response

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

createContributionAgreement

Type:CreateContributionAgreement

URL:https://api.octopus.energy/v1/graphql/

Create a contribution agreement for an account.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-9601: Invalid data.
  • KT-CT-9602: Unable to create contribution agreement.
  • KT-CT-9605: Contribution amount cannot be 0 or negative.
  • KT-CT-9606: Scheme is not accepting contributions at this time.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateContributionAgreementInput!)

Input variables needed for creating a contribution agreement on an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

contributionAgreement (ContributionAgreementType)

The created contribution agreement.

Mutation

mutation CreateContributionAgreement($input: CreateContributionAgreementInput!) {
  createContributionAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    contributionAgreement {
      ...ContributionAgreementTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createContributionAgreement": {
      "possibleErrors": [PossibleErrorType],
      "contributionAgreement": ContributionAgreementType
    }
  }
}

createCreditTransferPermission

Type:CreateCreditTransferPermission

URL:https://api.octopus.energy/v1/graphql/

Create a credit transfer permission.

The possible errors that can be raised are:

  • KT-CT-3822: Unauthorized.
  • KT-CT-3827: The ledger is not valid.
  • KT-CT-3828: At least one of the provided ledgers must be a credit storage ledger.
  • KT-CT-3829: The credit transfer permission already exists.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateCreditTransferPermissionInput!)

Input fields to create a credit transfer permission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

validFrom (DateTime)

Datetime when the credit transfer permission is valid.

Mutation

mutation CreateCreditTransferPermission($input: CreateCreditTransferPermissionInput!) {
  createCreditTransferPermission(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    validFrom
  }
}

Response

{
  "data": {
    "createCreditTransferPermission": {
      "possibleErrors": [PossibleErrorType],
      "validFrom": "2020-01-01T00:00:00.000Z"
    }
  }
}

createCustomerFeedback

Type:CreateCustomerFeedback

URL:https://api.octopus.energy/v1/graphql/

Create unsubmitted customer feedback object.

The possible errors that can be raised are:

  • KT-CT-5516: Invalid data.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateCustomerFeedbackInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

customerFeedback (CustomerFeedbackType)

The created customer feedback object.

Mutation

mutation CreateCustomerFeedback($input: CreateCustomerFeedbackInputType!) {
  createCustomerFeedback(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    customerFeedback {
      ...CustomerFeedbackTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createCustomerFeedback": {
      "possibleErrors": [PossibleErrorType],
      "customerFeedback": CustomerFeedbackType
    }
  }
}

createDepositAgreement

Type:CreateDepositAgreement

URL:https://api.octopus.energy/v1/graphql/

Create a new deposit agreement for the account if it needs one.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateDepositAgreementInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

depositAgreement (CreateDepositAgreementOutput)

Mutation

mutation CreateDepositAgreement($input: CreateDepositAgreementInput!) {
  createDepositAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    depositAgreement {
      ...CreateDepositAgreementOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createDepositAgreement": {
      "possibleErrors": [PossibleErrorType],
      "depositAgreement": CreateDepositAgreementOutput
    }
  }
}

createDirectDebitInstruction

Type:CreateDirectDebitInstruction

URL:https://api.octopus.energy/v1/graphql/

Create new direct debit instruction

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-CT-3940: Invalid data.
  • KT-CT-3923: Unauthorized.
  • KT-CT-3979: Invalid ledger.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateDirectDebitInstructionInput!)

Input fields for creating a new direct debit instruction.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

directDebitInstruction (DirectDebitInstructionType)

Mutation

mutation CreateDirectDebitInstruction($input: CreateDirectDebitInstructionInput!) {
  createDirectDebitInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    directDebitInstruction {
      ...DirectDebitInstructionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createDirectDebitInstruction": {
      "possibleErrors": [PossibleErrorType],
      "directDebitInstruction": DirectDebitInstructionType
    }
  }
}

Arguments

NameDescription

input (CreateElectricJuiceAgreementInput!)

Input fields for creating an Electric Juice agreement for an account.

Return fields

NameDescription

agreement (Agreement)

Mutation

mutation CreateElectricJuiceAgreement($input: CreateElectricJuiceAgreementInput!) {
  createElectricJuiceAgreement(input: $input) {
    agreement {
      ...AgreementFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createElectricJuiceAgreement": {
      "agreement": Agreement
    }
  }
}

Arguments

NameDescription

input (CreateElectricJuiceChargeInput!)

Input fields for creating an account charge.

Return fields

NameDescription

accountCharge (AccountChargeType)

Mutation

mutation CreateElectricJuiceCharge($input: CreateElectricJuiceChargeInput!) {
  createElectricJuiceCharge(input: $input) {
    accountCharge {
      ...AccountChargeTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createElectricJuiceCharge": {
      "accountCharge": AccountChargeType
    }
  }
}

Arguments

NameDescription

input (CreateElectricJuiceChargeCardInput!)

Input fields for creating an Electric Juice charge card.

Return fields

NameDescription

chargeCard (ChargeCardType)

Mutation

mutation CreateElectricJuiceChargeCard($input: CreateElectricJuiceChargeCardInput!) {
  createElectricJuiceChargeCard(input: $input) {
    chargeCard {
      ...ChargeCardTypeFragment
    }
  }
}

Response

{
  "data": {
    "createElectricJuiceChargeCard": {
      "chargeCard": ChargeCardType
    }
  }
}

Arguments

NameDescription

input (CreateElectricJuiceCreditInput!)

Input fields for creating an Electric Juice credit.

Return fields

NameDescription

accountCredit (AccountCreditType)

Mutation

mutation CreateElectricJuiceCredit($input: CreateElectricJuiceCreditInput!) {
  createElectricJuiceCredit(input: $input) {
    accountCredit {
      ...AccountCreditTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createElectricJuiceCredit": {
      "accountCredit": AccountCreditType
    }
  }
}

createElectricityMeterAccumulationReading

Type:CreateMeterReadingOutputType

URL:https://api.octopus.energy/v1/graphql/

Create an electricity meter accumulation reading with the given value for the given meter. This is intended to be used for non-communicating smart meters that need their accumulation readings forwarded to their smart data service.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-11007: Electricity meter cannot be found for the given serial number.
  • KT-GB-6411: Could not create electricity meter reading.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

mpan (String!)

MPAN of the meter.

readAt (Date!)

The date of the electricity meter reading.

readingValueInKwh (Int!)

The reading value in kWh.

serialNumber (String!)

Serial number of the meter.

Return fields

NameDescription

readingErrors ([SerializerFieldErrorsType])

id (String)

Deprecated

The 'id' field is deprecated.

The `ID` field is depreciated.

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

Mutation

mutation CreateElectricityMeterAccumulationReading(
  $mpan: String!,
  $readAt: Date!,
  $readingValueInKwh: Int!,
  $serialNumber: String!
) {
  createElectricityMeterAccumulationReading(
    mpan: $mpan,
    readAt: $readAt,
    readingValueInKwh: $readingValueInKwh,
    serialNumber: $serialNumber
  ) {
    readingErrors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "mpan": "abc123",
  "readAt": "2020-01-01",
  "readingValueInKwh": 1,
  "serialNumber": "abc123"
}

Response

{
  "data": {
    "createElectricityMeterAccumulationReading": {
      "readingErrors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

createElectricityMeterReading

Type:CreateMeterReadingOutputType

URL:https://api.octopus.energy/v1/graphql/

Create electricity meter reading(s) with the given value(s) for the given meter(s).

This field requires the Authorization header to be set.

Arguments

NameDescription

mpan (String)

MPAN of the meter.

readAt (Date)

The date of the electricity meter readings.

readings ([ReadingInputType])

List of the provided readings.

serialNumber (String)

Serial number of the meter.

Return fields

NameDescription

readingErrors ([SerializerFieldErrorsType])

id (String)

Deprecated

The 'id' field is deprecated.

The `ID` field is depreciated.

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

Mutation

mutation CreateElectricityMeterReading(
  $mpan: String,
  $readAt: Date,
  $readings: [ReadingInputType],
  $serialNumber: String
) {
  createElectricityMeterReading(
    mpan: $mpan,
    readAt: $readAt,
    readings: $readings,
    serialNumber: $serialNumber
  ) {
    readingErrors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "mpan": "abc123",
  "readAt": "2020-01-01",
  "readings": ReadingInputType,
  "serialNumber": "abc123"
}

Response

{
  "data": {
    "createElectricityMeterReading": {
      "readingErrors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

createElectricityMeterReadingViaIvr

Type:CreateMeterReadingOutputType

URL:https://api.octopus.energy/v1/graphql/

Create electricity meter reading(s) with the given value(s) for the given meter(s) via IVR.

This field requires the Authorization header to be set.

Arguments

NameDescription

mpan (String)

MPAN of the meter.

readAt (Date)

The date of the electricity meter readings.

readings ([ReadingInputType])

List of the provided readings.

serialNumber (String)

Serial number of the meter.

Return fields

NameDescription

readingErrors ([SerializerFieldErrorsType])

id (String)

Deprecated

The 'id' field is deprecated.

The `ID` field is depreciated.

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

Mutation

mutation CreateElectricityMeterReadingViaIvr(
  $mpan: String,
  $readAt: Date,
  $readings: [ReadingInputType],
  $serialNumber: String
) {
  createElectricityMeterReadingViaIvr(
    mpan: $mpan,
    readAt: $readAt,
    readings: $readings,
    serialNumber: $serialNumber
  ) {
    readingErrors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "mpan": "abc123",
  "readAt": "2020-01-01",
  "readings": ReadingInputType,
  "serialNumber": "abc123"
}

Response

{
  "data": {
    "createElectricityMeterReadingViaIvr": {
      "readingErrors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

createEvPublicChargingAgreement

Type:CreateEvPublicChargingAgreement

URL:https://api.octopus.energy/v1/graphql/

Create EV public charging agreement.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-5811: Active agreement already exists.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateEvPublicChargingAgreementInput!)

Input fields for creating an agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreement (Agreement)

Mutation

mutation CreateEvPublicChargingAgreement($input: CreateEvPublicChargingAgreementInput!) {
  createEvPublicChargingAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreement {
      ...AgreementFragment
    }
  }
}

Response

{
  "data": {
    "createEvPublicChargingAgreement": {
      "possibleErrors": [PossibleErrorType],
      "agreement": Agreement
    }
  }
}

createExternalAccountEvent

Type:CreateExternalAccountEvent

URL:https://api.octopus.energy/v1/graphql/

Create an external account event.

The possible errors that can be raised are:

  • KT-CT-7123: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateExternalAccountEventInput!)

Input fields for creating an external account event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

event (ExternalAccountEvent)

The new event data.

Mutation

mutation CreateExternalAccountEvent($input: CreateExternalAccountEventInput!) {
  createExternalAccountEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    event {
      ...ExternalAccountEventFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createExternalAccountEvent": {
      "possibleErrors": [PossibleErrorType],
      "event": ExternalAccountEvent
    }
  }
}

createExternalAccountUserEvent

Type:CreateExternalAccountUserEvent

URL:https://api.octopus.energy/v1/graphql/

Create an external account user event.

The possible errors that can be raised are:

  • KT-CT-7123: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateExternalAccountUserEventInput!)

Input fields for creating an external account event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

event (ExternalAccountUserEvent)

The new event data.

Mutation

mutation CreateExternalAccountUserEvent($input: CreateExternalAccountUserEventInput!) {
  createExternalAccountUserEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    event {
      ...ExternalAccountUserEventFragment
    }
  }
}

Response

{
  "data": {
    "createExternalAccountUserEvent": {
      "possibleErrors": [PossibleErrorType],
      "event": ExternalAccountUserEvent
    }
  }
}

createExternalMessage

Type:CreateExternalMessage

URL:https://api.octopus.energy/v1/graphql/

Create an external message to record communications sent by external vendors. This allows you to import messages, such as emails, sent using other tools into Kraken.

The possible errors that can be raised are:

  • KT-CT-14201: Vendor is empty.
  • KT-CT-14202: Vendor message ID is empty.
  • KT-CT-14203: Account number is empty.
  • KT-CT-14204: Message already exists.
  • KT-CT-14205: Unable to create the external message.
  • KT-CT-14206: An email body is missing.
  • KT-CT-14207: To email is empty.
  • KT-CT-14208: To email is not a valid email address.
  • KT-CT-14209: From email is empty.
  • KT-CT-14210: From email is an invalid format.
  • KT-CT-14211: A reply to email address is empty.
  • KT-CT-14212: A reply to email address is not a valid email address.
  • KT-CT-14213: The external messaging API is not enabled.
  • KT-CT-14214: An account number was provided, but no corresponding account could be found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateExternalMessageInput!)

Input variables needed for creating an external message.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

externalMessage (ExternalMessageType)

The external message that was created.

Mutation

mutation CreateExternalMessage($input: CreateExternalMessageInput!) {
  createExternalMessage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    externalMessage {
      ...ExternalMessageTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createExternalMessage": {
      "possibleErrors": [PossibleErrorType],
      "externalMessage": ExternalMessageType
    }
  }
}

createFormSubmission

Type:FormSubmissionOuput

URL:https://api.octopus.energy/v1/graphql/

Create a "form submission" entity. This is only meant to be used as a quick way of putting together a form and submit data for it, in the form of JSON - it is not expected that all form submissions will come through this path.

This field requires the Authorization header to be set.

Arguments

NameDescription

input (FormSubmissionInput!)

Return fields

NameDescription

id (Int)

content (JSONString)

errors ([SerializerFieldErrorsType])

Mutation

mutation CreateFormSubmission($input: FormSubmissionInput!) {
  createFormSubmission(input: $input) {
    id
    content
    errors {
      ...SerializerFieldErrorsTypeFragment
    }
  }
}

Variables

{
  "input": FormSubmissionInput
}

Response

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

createGasMeterReading

Type:CreateMeterReadingOutputType

URL:https://api.octopus.energy/v1/graphql/

Create gas meter reading with the given value for the given meter.

This field requires the Authorization header to be set.

Arguments

NameDescription

mprn (String)

MPRN of the meter.

readAt (Date)

The date of the gas meter reading.

reading (Int)

Value of the provided reading.

serialNumber (String)

Serial number of the meter.

Return fields

NameDescription

readingErrors ([SerializerFieldErrorsType])

id (String)

Deprecated

The 'id' field is deprecated.

The `ID` field is depreciated.

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

Mutation

mutation CreateGasMeterReading(
  $mprn: String,
  $readAt: Date,
  $reading: Int,
  $serialNumber: String
) {
  createGasMeterReading(
    mprn: $mprn,
    readAt: $readAt,
    reading: $reading,
    serialNumber: $serialNumber
  ) {
    readingErrors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "mprn": "abc123",
  "readAt": "2020-01-01",
  "reading": 1,
  "serialNumber": "abc123"
}

Response

{
  "data": {
    "createGasMeterReading": {
      "readingErrors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

createGasMeterReadingViaIvr

Type:CreateMeterReadingOutputType

URL:https://api.octopus.energy/v1/graphql/

Create gas meter reading with the given value for the given meter via IVR.

This field requires the Authorization header to be set.

Arguments

NameDescription

mprn (String)

MPRN of the meter.

readAt (Date)

The date of the gas meter reading.

reading (Int)

Value of the provided reading.

serialNumber (String)

Serial number of the meter.

Return fields

NameDescription

readingErrors ([SerializerFieldErrorsType])

id (String)

Deprecated

The 'id' field is deprecated.

The `ID` field is depreciated.

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

Mutation

mutation CreateGasMeterReadingViaIvr(
  $mprn: String,
  $readAt: Date,
  $reading: Int,
  $serialNumber: String
) {
  createGasMeterReadingViaIvr(
    mprn: $mprn,
    readAt: $readAt,
    reading: $reading,
    serialNumber: $serialNumber
  ) {
    readingErrors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "mprn": "abc123",
  "readAt": "2020-01-01",
  "reading": 1,
  "serialNumber": "abc123"
}

Response

{
  "data": {
    "createGasMeterReadingViaIvr": {
      "readingErrors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

createGoodsPurchase

Type:CreateGoodsPurchase

URL:https://api.octopus.energy/v1/graphql/

Create a goods purchase.

The possible errors that can be raised are:

  • KT-CT-8206: Invalid data.
  • KT-CT-1131: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreatePurchaseInput!)

Input fields for creating a purchase without a quote.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

goodsPurchase (GoodsPurchase)

Goods purchase created.

Mutation

mutation CreateGoodsPurchase($input: CreatePurchaseInput!) {
  createGoodsPurchase(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    goodsPurchase {
      ...GoodsPurchaseFragment
    }
  }
}

Variables

{
  "input": CreatePurchaseInput
}

Response

{
  "data": {
    "createGoodsPurchase": {
      "possibleErrors": [PossibleErrorType],
      "goodsPurchase": GoodsPurchase
    }
  }
}

createGoodsQuote

Type:CreateGoodsQuote

URL:https://api.octopus.energy/v1/graphql/

Create a goods quote.

The possible errors that can be raised are:

  • KT-CT-8202: Invalid data.
  • KT-CT-8205: Unable to create quote.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateGoodsQuoteInput!)

Input fields for creating a goods quote.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

goodsQuote (GoodsQuote)

Goods quote created for the customer.

Mutation

mutation CreateGoodsQuote($input: CreateGoodsQuoteInput!) {
  createGoodsQuote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    goodsQuote {
      ...GoodsQuoteFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createGoodsQuote": {
      "possibleErrors": [PossibleErrorType],
      "goodsQuote": GoodsQuote
    }
  }
}

createGoodsQuoteWithoutAccount

Type:CreateGoodsQuoteWithoutAccount

URL:https://api.octopus.energy/v1/graphql/

Create a goods quote without an account.

The possible errors that can be raised are:

  • KT-CT-8202: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateGoodsQuoteWithoutAccountInput!)

Input fields for creating a goods quote without an existing account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

goodsQuote (GoodsQuote)

Goods quote created for the customer.

Mutation

mutation CreateGoodsQuoteWithoutAccount($input: CreateGoodsQuoteWithoutAccountInput!) {
  createGoodsQuoteWithoutAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    goodsQuote {
      ...GoodsQuoteFragment
    }
  }
}

Response

{
  "data": {
    "createGoodsQuoteWithoutAccount": {
      "possibleErrors": [PossibleErrorType],
      "goodsQuote": GoodsQuote
    }
  }
}

createInboundCall

Type:CreateInboundCall

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-11805: Invalid input for creating an inbound call.
  • KT-CT-11810: Caller is blocked.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateInboundCallInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

call (InboundCallType)

The call that was created.

Mutation

mutation CreateInboundCall($input: CreateInboundCallInput!) {
  createInboundCall(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    call {
      ...InboundCallTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createInboundCall": {
      "possibleErrors": [PossibleErrorType],
      "call": InboundCallType
    }
  }
}

createInkInboundMessage

Type:CreateInkInboundMessage

URL:https://api.octopus.energy/v1/graphql/

Register an Ink inbound message.

The possible errors that can be raised are:

  • KT-CT-7622: Attachment bucket is invalid.
  • KT-CT-7623: Attachment path is invalid.
  • KT-CT-7621: Attachment not found.
  • KT-CT-7618: Unable to process message.
  • KT-CT-7625: Invalid email address.
  • KT-CT-7630: Message with this message ID has already been processed.
  • KT-CT-7632: The text content of the Ink Inbound Generic Message is too long.
  • KT-CT-7620: Channel not supported.
  • KT-CT-7627: The 'email' object is missing from the payload.
  • KT-CT-7628: The 'generic' object is missing from the payload.
  • KT-CT-7629: The 'post' object is missing from the payload.
  • KT-CT-7653: Account numbers on the message and message type must match if both are supplied.
  • KT-CT-7654: An account number was provided, but no corresponding account could be found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateInkInboundMessageInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

message (InkMessage!)

The Ink message that was created.

Mutation

mutation CreateInkInboundMessage($input: CreateInkInboundMessageInput) {
  createInkInboundMessage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    message {
      ... on InkEmail {
        ...InkEmailFragment
      }
      ... on InkSMS {
        ...InkSMSFragment
      }
      ... on InkLine {
        ...InkLineFragment
      }
      ... on InkWhatsApp {
        ...InkWhatsAppFragment
      }
      ... on InkTwilioWhatsApp {
        ...InkTwilioWhatsAppFragment
      }
      ... on InkPost {
        ...InkPostFragment
      }
      ... on InkGenericMessage {
        ...InkGenericMessageFragment
      }
      ... on InkLiveChatMessage {
        ...InkLiveChatMessageFragment
      }
    }
  }
}

Variables

Response

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

createInkLiveChatMessage

Type:CreateInkLiveChatMessage

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7616: Not yet implemented.
  • KT-CT-1111: Unauthorized.
  • KT-CT-4123: Unauthorized.
  • KT-CT-7642: No account user was found for the given fromHandle.
  • KT-CT-7641: Live Chat message with this message ID has already been processed.
  • KT-CT-7645: The user is not authorized to access this Live Chat.
  • KT-CT-7622: Attachment bucket is invalid.
  • KT-CT-7623: Attachment path is invalid.
  • KT-CT-7621: Attachment not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateInkLiveChatMessageInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

liveChatConversation (InkLiveChatConversation)

The live chat conversation.

messageRelayId (String!)

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

Mutation

mutation CreateInkLiveChatMessage($input: CreateInkLiveChatMessageInput) {
  createInkLiveChatMessage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    liveChatConversation {
      ...InkLiveChatConversationFragment
    }
    messageRelayId
  }
}

Variables

Response

{
  "data": {
    "createInkLiveChatMessage": {
      "possibleErrors": [PossibleErrorType],
      "liveChatConversation": InkLiveChatConversation,
      "messageRelayId": "abc123"
    }
  }
}

createInternalCompany

Type:CreateInternalCompany

URL:https://api.octopus.energy/v1/graphql/

Create a new internal company.

The possible errors that can be raised are:

  • KT-CT-14402: Duplicated internal company.
  • KT-CT-14403: Invalid address.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateInternalCompanyInput!)

The input required to create an internal company.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

internalCompany (CreateInternalCompanyResultType)

The result of the create internal company operation.

Mutation

mutation CreateInternalCompany($input: CreateInternalCompanyInput!) {
  createInternalCompany(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    internalCompany {
      ...CreateInternalCompanyResultTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createInternalCompany": {
      "possibleErrors": [PossibleErrorType],
      "internalCompany": CreateInternalCompanyResultType
    }
  }
}

createLead

Type:CreateLead

URL:https://api.octopus.energy/v1/graphql/

Create a lead with the provided details.

The possible errors that can be raised are:

  • KT-CT-8912: Funnel not found.
  • KT-CT-8930: Unable to parse address.
  • KT-CT-8928: The funnel is not active and cannot be used to create this entity.
  • KT-CT-8931: Extra detail value is invalid.
  • KT-CT-8919: Funnel initial stage not set.
  • KT-CT-9017: Consent type not found.
  • KT-CT-8932: Lead contact details missing legal contact.
  • KT-CT-8934: Lead contact details missing communications contact.
  • KT-CT-8935: National ID bad input.
  • KT-CT-4121: Invalid phone number.
  • KT-CT-8913: Organisation is not valid to be assigned.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateLeadInput!)

Input fields for creating a lead.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

leadNumber (String)

The unique number of the lead.

Mutation

mutation CreateLead($input: CreateLeadInput!) {
  createLead(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    leadNumber
  }
}

Variables

{
  "input": CreateLeadInput
}

Response

{
  "data": {
    "createLead": {
      "possibleErrors": [PossibleErrorType],
      "leadNumber": "abc123"
    }
  }
}

createMetadata

Type:CreateMetadata

URL:https://api.octopus.energy/v1/graphql/

Create metadata on an object.

The possible errors that can be raised are:

  • KT-CT-8412: Invalid data.
  • KT-CT-8414: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (MetadataInput!)

Input fields for creating metadata.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

metadata (Metadata)

Mutation

mutation CreateMetadata($input: MetadataInput!) {
  createMetadata(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    metadata {
      ...MetadataFragment
    }
  }
}

Variables

{
  "input": MetadataInput
}

Response

{
  "data": {
    "createMetadata": {
      "possibleErrors": [PossibleErrorType],
      "metadata": Metadata
    }
  }
}

createMfaDevice

Type:CreateMfaDevice

URL:https://api.octopus.energy/v1/graphql/

Create MFA Device for user.

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-1151: MFA device not found.
  • KT-CT-1153: Unable to create MFA device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateMfaDeviceInputType!)

Input fields for creating a new multi-factor authentication device for the logged user.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

deviceEmail (String)

Email address to send the MFA code by default.

devicePhone (String)

Phone number to send the MFA code by default.

totpSecret (String)

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

Mutation

mutation CreateMfaDevice($input: CreateMfaDeviceInputType!) {
  createMfaDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    deviceEmail
    devicePhone
    totpSecret
  }
}

Variables

Response

{
  "data": {
    "createMfaDevice": {
      "possibleErrors": [PossibleErrorType],
      "deviceEmail": "abc123",
      "devicePhone": "abc123",
      "totpSecret": "abc123"
    }
  }
}

createNewAgreementFromProductSwitchProcess

Type:CreateNewAgreementFromProductSwitchProcess

URL:https://api.octopus.energy/v1/graphql/

Create a new agreement from an existing product switch process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4924: Unauthorized.
  • KT-CT-1509: Unable to create agreement.
  • KT-CT-1507: Agreement product switch date is not within the acceptable range.
  • KT-CT-1510: Product switch process not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateNewAgreementFromProductSwitchProcessInput!)

Validate the product switch flow data and creates a ProcessSwitchProcess model.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreement (CommonAgreementType)

The new agreement created.

Mutation

mutation CreateNewAgreementFromProductSwitchProcess($input: CreateNewAgreementFromProductSwitchProcessInput!) {
  createNewAgreementFromProductSwitchProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreement {
      ...CommonAgreementTypeFragment
    }
  }
}

Response

{
  "data": {
    "createNewAgreementFromProductSwitchProcess": {
      "possibleErrors": [PossibleErrorType],
      "agreement": CommonAgreementType
    }
  }
}

Type:CreateOctoplusRewardContactLink

URL:https://api.octopus.energy/v1/graphql/

Create a link to the customer contact form for this account.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.
  • KT-GB-9319: This feature is not currently available.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'createOctoplusRewardContactLink' field is deprecated.

The Octoplus feature is going through changes. This mutation is no longer available.

- Marked as deprecated on 2026-02-10.
- Scheduled for removal on or after 2026-08-10.

Arguments

NameDescription

accountNumber (String!)

The account number for the Octoplus-enrolled account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

url (String)

The URL of the customer contact form link.

Mutation

mutation CreateOctoplusRewardContactLink($accountNumber: String!) {
  createOctoplusRewardContactLink(accountNumber: $accountNumber) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    url
  }
}

Variables

{
  "accountNumber": "abc123"
}

Response

{
  "data": {
    "createOctoplusRewardContactLink": {
      "possibleErrors": [PossibleErrorType],
      "url": "abc123"
    }
  }
}

createOfferGroupForQuoting

Type:CreateOfferGroupForQuoting

URL:https://api.octopus.energy/v1/graphql/

Create a quoting Offer Group.

The possible errors that can be raised are:

  • KT-CT-12401: Unable to create offer group.
  • KT-CT-12405: Missing rates for quoting.
  • KT-CT-12406: Product not configured correctly for quoting.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOfferGroupForQuotingInput!)

Input fields for creating an offer group from a list of offers.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

offerGroup (CreateOfferGroupType)

Quoting Offer Group.

Mutation

mutation CreateOfferGroupForQuoting($input: CreateOfferGroupForQuotingInput!) {
  createOfferGroupForQuoting(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    offerGroup {
      ...CreateOfferGroupTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createOfferGroupForQuoting": {
      "possibleErrors": [PossibleErrorType],
      "offerGroup": CreateOfferGroupType
    }
  }
}

createOnSiteJobsAppointment

Type:CreateOnSiteJobsAppointment

URL:https://api.octopus.energy/v1/graphql/

Create an Appointment.

The possible errors that can be raised are:

  • KT-CT-13030: Booking session not found.
  • KT-CT-13025: Booking session has expired.
  • KT-CT-13033: Slot not found.
  • KT-CT-13028: Agent not found.
  • KT-CT-13019: Vendor not found.
  • KT-CT-13034: Appointment already exists for this request.
  • KT-CT-13035: Request is inactive.
  • KT-CT-13032: Request does not exist.
  • KT-CT-13036: Booking service currently unavailable.
  • KT-CT-13037: Appointment reference not provided by booking service.
  • KT-CT-13031: Timeslot is no longer available.
  • KT-CT-13027: Booking system error occurred.
  • KT-CT-13056: Appointment cannot be rescheduled.
  • KT-CT-13044: Failed to update appointment slot.
  • KT-CT-13001: Appointment does not exist.
  • KT-CT-13063: Failed to derive property for the given supply points.
  • KT-CT-13006: No properties found for the given supply points.
  • KT-CT-13064: Provided supply point(s) not supported by the On-Site Jobs market manager.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

appointmentBookingSessionId (UUID!)

The appointment booking session ID to create an appointment.

slotId (UUID!)

The slot ID to book the appointment for.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsAppointment (OnSiteJobsAppointmentType)

The created On-Site Jobs appointment.

Mutation

mutation CreateOnSiteJobsAppointment(
  $appointmentBookingSessionId: UUID!,
  $slotId: UUID!
) {
  createOnSiteJobsAppointment(
    appointmentBookingSessionId: $appointmentBookingSessionId,
    slotId: $slotId
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsAppointment {
      ...OnSiteJobsAppointmentTypeFragment
    }
  }
}

Variables

{
  "appointmentBookingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "slotId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

Response

{
  "data": {
    "createOnSiteJobsAppointment": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsAppointment": OnSiteJobsAppointmentType
    }
  }
}

createOnSiteJobsAppointmentWithDate

Type:CreateOnSiteJobsAppointmentWithDate

URL:https://api.octopus.energy/v1/graphql/

Create an Appointment using DATE booking mode. Used when the booking flow does not require selecting a specific timeslot.

The possible errors that can be raised are:

  • KT-CT-13032: Request does not exist.
  • KT-CT-13010: No booking adapter found for agent.
  • KT-CT-13020: Could not identify agent from property.
  • KT-CT-13021: Invalid job type.
  • KT-CT-13022: Work category not found for job type.
  • KT-CT-13057: Date booking mode is not applicable for this request.
  • KT-CT-13023: Appointment booking checks failed.
  • KT-CT-13024: Appointment booking checks returned warnings.
  • KT-CT-13028: Agent not found.
  • KT-CT-13019: Vendor not found.
  • KT-CT-13034: Appointment already exists for this request.
  • KT-CT-13035: Request is inactive.
  • KT-CT-13036: Booking service currently unavailable.
  • KT-CT-13037: Appointment reference not provided by booking service.
  • KT-CT-13027: Booking system error occurred.
  • KT-CT-13063: Failed to derive property for the given supply points.
  • KT-CT-13064: Provided supply point(s) not supported by the On-Site Jobs market manager.
  • KT-CT-13006: No properties found for the given supply points.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

appointmentBookingDetails (OnSiteJobsAppointmentBookingDetailsInput!)

The appointment booking details.

deadlineDate (Date)

The deadline date for the appointment.

overrideAppointmentCheckWarnings (Boolean)

Whether to override appointment booking check warnings. Defaults to False.

preferredDate (Date!)

The preferred date for the appointment.

requestId (UUID!)

The ID of the request to book an appointment for.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsAppointment (OnSiteJobsAppointmentType)

The created On-Site Jobs appointment.

Mutation

mutation CreateOnSiteJobsAppointmentWithDate(
  $appointmentBookingDetails: OnSiteJobsAppointmentBookingDetailsInput!,
  $deadlineDate: Date,
  $overrideAppointmentCheckWarnings: Boolean,
  $preferredDate: Date!,
  $requestId: UUID!
) {
  createOnSiteJobsAppointmentWithDate(
    appointmentBookingDetails: $appointmentBookingDetails,
    deadlineDate: $deadlineDate,
    overrideAppointmentCheckWarnings: $overrideAppointmentCheckWarnings,
    preferredDate: $preferredDate,
    requestId: $requestId
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsAppointment {
      ...OnSiteJobsAppointmentTypeFragment
    }
  }
}

Variables

{
  "appointmentBookingDetails": OnSiteJobsAppointmentBookingDetailsInput,
  "deadlineDate": "2020-01-01",
  "overrideAppointmentCheckWarnings": true,
  "preferredDate": "2020-01-01",
  "requestId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

Response

{
  "data": {
    "createOnSiteJobsAppointmentWithDate": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsAppointment": OnSiteJobsAppointmentType
    }
  }
}

createOnSiteJobsAppointmentWithoutBooking

Type:CreateOnSiteJobsAppointmentWithoutBooking

URL:https://api.octopus.energy/v1/graphql/

Create an Appointment on Kraken without making a booking via the booking vendor system. This is typically used by booking vendors to inform Kraken about appointments created on their system.

The possible errors that can be raised are:

  • KT-CT-13032: Request does not exist.
  • KT-CT-13035: Request is inactive.
  • KT-CT-13010: No booking adapter found for agent.
  • KT-CT-13034: Appointment already exists for this request.
  • KT-CT-13021: Invalid job type.
  • KT-CT-13018: Unable to record cancellationcategory/cancellationsub_category.
  • KT-CT-13039: Cancellation fields require CANCELLED status.
  • KT-CT-13027: Booking system error occurred.
  • KT-CT-13050: Cannot provide both supplypointidentifiertomarketnamemapping and supplypointinternal_id when creating assets.
  • KT-CT-13051: Supply point not found when creating assets.
  • KT-CT-13052: Multiple supply points found when creating assets.
  • KT-CT-13062: Datetime field must be timezone-aware.
  • KT-CT-13044: Failed to update appointment slot.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (OnSiteJobsCreateAppointmentInput!)

The input objects required to create an Appointment on Kraken without making a booking.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsAppointment (OnSiteJobsAppointmentType)

The created Appointment.

Mutation

mutation CreateOnSiteJobsAppointmentWithoutBooking($input: OnSiteJobsCreateAppointmentInput!) {
  createOnSiteJobsAppointmentWithoutBooking(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsAppointment {
      ...OnSiteJobsAppointmentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createOnSiteJobsAppointmentWithoutBooking": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsAppointment": OnSiteJobsAppointmentType
    }
  }
}

createOnSiteJobsRequest

Type:CreateOnSiteJobsRequest

URL:https://api.octopus.energy/v1/graphql/

Create a Request.

The possible errors that can be raised are:

  • KT-CT-13002: Supply point not found.
  • KT-CT-13003: Supply points must belong to the same account.
  • KT-CT-13004: No account found for the given supply points.
  • KT-CT-13006: No properties found for the given supply points.
  • KT-CT-13028: Agent not found.
  • KT-CT-13010: No booking adapter found for agent.
  • KT-CT-13007: At least one of the request checks failed.
  • KT-CT-13008: At least one of the request checks has warnings.
  • KT-CT-13009: On site jobs Request already exists.
  • KT-CT-13012: Viewer is not allowed to create a request.
  • KT-CT-13013: Reporter post init error.
  • KT-CT-13014: Request reason is not supported.
  • KT-CT-13015: Request sub_reason is not supported.
  • KT-CT-13041: User is not allowed to override request/appointment checks.
  • KT-CT-13042: Multiple supply points not supported by this booking adapter.
  • KT-CT-13045: Failed to update appointment assets.
  • KT-CT-13047: Multiple supply points found.
  • KT-CT-13048: Cannot provide both supplypointidentifiertomarketnamemapping and supplypointinternal_ids.
  • KT-CT-13049: Neither supplypointidentifiertomarketnamemapping nor supplypointinternal_ids provided.
  • KT-CT-13050: Cannot provide both supplypointidentifiertomarketnamemapping and supplypointinternal_id when creating assets.
  • KT-CT-13051: Supply point not found when creating assets.
  • KT-CT-13052: Multiple supply points found when creating assets.
  • KT-CT-13058: Reason approval details are required when the reason requires approval.
  • KT-CT-13059: Emergency approval details are required when the emergency requires approval.
  • KT-CT-13060: Reason approval details should not be provided when the reason does not require approval.
  • KT-CT-13061: Emergency approval details should not be provided when the emergency does not require approval.
  • KT-CT-13063: Failed to derive property for the given supply points.
  • KT-CT-13064: Provided supply point(s) not supported by the On-Site Jobs market manager.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOnSiteJobsRequestInputType!)

The input objects required to create a Request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsRequest (OnSiteJobsRequestType)

The created request.

Mutation

mutation CreateOnSiteJobsRequest($input: CreateOnSiteJobsRequestInputType!) {
  createOnSiteJobsRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsRequest {
      ...OnSiteJobsRequestTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createOnSiteJobsRequest": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsRequest": OnSiteJobsRequestType
    }
  }
}

createOpportunityAndLead

Type:CreateOpportunityAndLead

URL:https://api.octopus.energy/v1/graphql/

Create an opportunity and lead with the provided details.

The possible errors that can be raised are:

  • KT-CT-8912: Funnel not found.
  • KT-CT-8919: Funnel initial stage not set.
  • KT-CT-8930: Unable to parse address.
  • KT-CT-8907: Lead not found.
  • KT-CT-8901: Unable to create lead.
  • KT-CT-8902: Unable to create lead.
  • KT-CT-8935: National ID bad input.
  • KT-CT-4121: Invalid phone number.
  • KT-CT-8931: Extra detail value is invalid.
  • KT-CT-9017: Consent type not found.
  • KT-CT-8913: Organisation is not valid to be assigned.
  • KT-CT-8936: Only one address is required to create an opportunity.
  • KT-CT-8937: One or more Supply Points cannot be validated.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOpportunityAndLeadInput!)

Input fields for creating an opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunityNumber (String)

The unique number of the opportunity.

dateOfCreation (DateTime)

The date the opportunity was created.

stage (String)

The stage of the opportunity.

funnelCode (String)

The code of the funnel.

Mutation

mutation CreateOpportunityAndLead($input: CreateOpportunityAndLeadInput!) {
  createOpportunityAndLead(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunityNumber
    dateOfCreation
    stage
    funnelCode
  }
}

Variables

Response

{
  "data": {
    "createOpportunityAndLead": {
      "possibleErrors": [PossibleErrorType],
      "opportunityNumber": "abc123",
      "dateOfCreation": "2020-01-01T00:00:00.000Z",
      "stage": "abc123",
      "funnelCode": "abc123"
    }
  }
}

Arguments

NameDescription

input (CreateOpportunityFileAttachmentInput!)

Input to create an Opportunity File Attachment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

result (String)

Whether the operation was successful.

Mutation

mutation CreateOpportunityFileAttachment($input: CreateOpportunityFileAttachmentInput!) {
  createOpportunityFileAttachment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    result
  }
}

Response

{
  "data": {
    "createOpportunityFileAttachment": {
      "possibleErrors": [PossibleErrorType],
      "result": "abc123"
    }
  }
}

createOpportunityForLead

Type:CreateOpportunityForLead

URL:https://api.octopus.energy/v1/graphql/

Create an opportunity for a lead with the provided details.

The possible errors that can be raised are:

  • KT-CT-8912: Funnel not found.
  • KT-CT-8919: Funnel initial stage not set.
  • KT-CT-8907: Lead not found.
  • KT-CT-8913: Organisation is not valid to be assigned.
  • KT-CT-8924: Unable to create opportunity.
  • KT-CT-8925: Unable to create opportunity.
  • KT-CT-8926: Unable to create opportunity.
  • KT-CT-8928: The funnel is not active and cannot be used to create this entity.
  • KT-CT-8930: Unable to parse address.
  • KT-CT-8936: Only one address is required to create an opportunity.
  • KT-CT-8931: Extra detail value is invalid.
  • KT-CT-8937: One or more Supply Points cannot be validated.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOpportunityForLeadInput!)

Input fields for creating an opportunity for a lead.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunityNumber (String)

The unique number of the opportunity.

dateOfCreation (DateTime)

The date the opportunity was created.

Mutation

mutation CreateOpportunityForLead($input: CreateOpportunityForLeadInput!) {
  createOpportunityForLead(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunityNumber
    dateOfCreation
  }
}

Variables

Response

{
  "data": {
    "createOpportunityForLead": {
      "possibleErrors": [PossibleErrorType],
      "opportunityNumber": "abc123",
      "dateOfCreation": "2020-01-01T00:00:00.000Z"
    }
  }
}

createOrUpdateLoyaltyCard

Type:CreateOrUpdateLoyaltyCardMutation

URL:https://api.octopus.energy/v1/graphql/

Create or update a loyalty card for the given account user.

The possible errors that can be raised are:

  • KT-CT-5412: No account user exists with the given id.
  • KT-CT-8610: Invalid data.
  • KT-CT-8611: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOrUpdateLoyaltyCardInput!)

Input fields for creating or updating a loyalty card.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

loyaltyCard (LoyaltyCardType)

Created or updated loyalty card.

Mutation

mutation CreateOrUpdateLoyaltyCard($input: CreateOrUpdateLoyaltyCardInput!) {
  createOrUpdateLoyaltyCard(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    loyaltyCard {
      ...LoyaltyCardTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createOrUpdateLoyaltyCard": {
      "possibleErrors": [PossibleErrorType],
      "loyaltyCard": LoyaltyCardType
    }
  }
}

createOrUpdateSiteworksAppointment

Type:CreateOrUpdateSiteworksAppointment

URL:https://api.octopus.energy/v1/graphql/

Create or update a Siteworks appointment.

The possible errors that can be raised are:

  • KT-CT-1112: 'Authorization' header not provided.
  • KT-CT-4231: Unauthorized.
  • KT-GB-4230: Invalid data.
  • KT-GB-4224: Error processing siteworks appointment.
  • KT-CT-13043: Cannot update appointment as it has terminal status.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOrUpdateSiteworksAppointmentInput!)

Input fields for creating or updating siteworks appointments.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

result (CreateOrUpdateSiteworksAppointmentOutput)

Mutation

mutation CreateOrUpdateSiteworksAppointment($input: CreateOrUpdateSiteworksAppointmentInput!) {
  createOrUpdateSiteworksAppointment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    result {
      ...CreateOrUpdateSiteworksAppointmentOutputFragment
    }
  }
}

Response

{
  "data": {
    "createOrUpdateSiteworksAppointment": {
      "possibleErrors": [PossibleErrorType],
      "result": CreateOrUpdateSiteworksAppointmentOutput
    }
  }
}

createOrUpdateTimeSeriesEntries

Type:CreateOrUpdateTimeSeriesEntries!

URL:https://api.octopus.energy/v1/graphql/

Create or update time series entries.

The possible errors that can be raised are:

  • KT-CT-12014: Time series not found.
  • KT-CT-12015: Characteristics mismatch.
  • KT-CT-12016: Conflicting time series entries.
  • KT-CT-12017: Invalid time series entries period.
  • KT-CT-12038: Invalid time series entries granularity.
  • KT-CT-12040: Time series entries in use.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateOrUpdateTimeSeriesEntriesInput!)

The time series input for time series entry creation or update.

Return fields

NameDescription

Mutation

mutation CreateOrUpdateTimeSeriesEntries($input: CreateOrUpdateTimeSeriesEntriesInput!) {
  createOrUpdateTimeSeriesEntries(input: $input) {
    code
    productCode
    name
    description
    unit
    periodSize
    meta
    variants {
      ...VariantProfileFragment
    }
  }
}

Response

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

createPaymentActionIntent

Type:CreatePaymentActionIntent

URL:https://api.octopus.energy/v1/graphql/

Create a new payment action intent.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3980: Invalid ledger identifier.
  • KT-CT-3981: Unauthorized.
  • KT-CT-3982: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreatePaymentActionIntentInput!)

Input fields for creating a payment action intent.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (ID!)

The action intent token.

Mutation

mutation CreatePaymentActionIntent($input: CreatePaymentActionIntentInput!) {
  createPaymentActionIntent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token
  }
}

Variables

Response

{
  "data": {
    "createPaymentActionIntent": {
      "possibleErrors": [PossibleErrorType],
      "token": "abc123"
    }
  }
}

createPaymentSchedule

Type:CreatePaymentSchedule

URL:https://api.octopus.energy/v1/graphql/

Create a monthly payment schedule for a fixed amount.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-3917: Unable to create payment schedule.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PaymentScheduleInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentSchedule (PaymentScheduleType)

Mutation

mutation CreatePaymentSchedule($input: PaymentScheduleInput!) {
  createPaymentSchedule(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentSchedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createPaymentSchedule": {
      "possibleErrors": [PossibleErrorType],
      "paymentSchedule": PaymentScheduleType
    }
  }
}

createPortfolio

Type:CreatePortfolio

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new Portfolio instance.

The possible errors that can be raised are:

  • KT-CT-9402: Received an invalid brandCode.
  • KT-CT-9401: Received an invalid operationsTeamId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreatePortfolioInput)

Input fields for creating a portfolio.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

portfolio (PortfolioType)

The created portfolio.

Mutation

mutation CreatePortfolio($input: CreatePortfolioInput) {
  createPortfolio(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    portfolio {
      ...PortfolioTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createPortfolio": {
      "possibleErrors": [PossibleErrorType],
      "portfolio": PortfolioType
    }
  }
}

createPortfolioUserRole

Type:CreatePortfolioUserRole

URL:https://api.octopus.energy/v1/graphql/

Mutation to create a new portfolio user role. This will effectively link the user to the portfolio giving them all the permissions enabled for the specific role.

The possible errors that can be raised are:

  • KT-CT-9403: Received an invalid portfolioId.
  • KT-CT-9404: Received an invalid accountUserId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreatePortfolioUserRoleInput)

Input fields for connecting a user to a portfolio.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

portfolioUserRole (PortfolioUserRoleType)

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

Mutation

mutation CreatePortfolioUserRole($input: CreatePortfolioUserRoleInput) {
  createPortfolioUserRole(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    portfolioUserRole {
      ...PortfolioUserRoleTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createPortfolioUserRole": {
      "possibleErrors": [PossibleErrorType],
      "portfolioUserRole": PortfolioUserRoleType
    }
  }
}

createPostEvents

Type:CreatePostEvents

URL:https://api.octopus.energy/v1/graphql/

Create post delivery events from external vendors.

The possible errors that can be raised are:

  • KT-CT-9907: Post events batch size exceeded.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreatePostEventsInput!)

Batch of post events to create.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

createdEventsCount (Int)

Number of events successfully created.

Mutation

mutation CreatePostEvents($input: CreatePostEventsInput!) {
  createPostEvents(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    createdEventsCount
  }
}

Variables

Response

{
  "data": {
    "createPostEvents": {
      "possibleErrors": [PossibleErrorType],
      "createdEventsCount": 1
    }
  }
}

createProduct

Type:CreateProductOutput!

URL:https://api.octopus.energy/v1/graphql/

Create a new product.

The possible errors that can be raised are:

  • KT-CT-12003: Specified product brand does not exist.
  • KT-CT-12004: Invalid product tag type.
  • KT-CT-12005: A selection of a terms and conditions type does not exist.
  • KT-CT-12006: Provided product characteristic overrides are not in the correct format.
  • KT-CT-12007: Unable to create product.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateProductInput!)

Return fields

NameDescription

Mutation

mutation CreateProduct($input: CreateProductInput!) {
  createProduct(input: $input) {
    product {
      ...SupplyProductTypeFragment
    }
  }
}

Variables

{
  "input": CreateProductInput
}

Response

{
  "data": {
    "createProduct": {
      "product": SupplyProductType
    }
  }
}

createProductRates

Type:CreateProductRates

URL:https://api.octopus.energy/v1/graphql/

Create product rate(s) for a certain product.

The possible errors that can be raised are:

  • KT-GB-9514: No available product found.
  • KT-GB-9518: Invalid input data for product rate(s).
  • KT-GB-9519: Unable to create product rate(s).
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateProductRatesInputType!)

List of rates to be created for the specified product.

productCode (String!)

Code of the product for which the rates are being created.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

productRates ([ProductRateType])

Successfully created rate(s) for the specified product.

Mutation

mutation CreateProductRates(
  $input: CreateProductRatesInputType!,
  $productCode: String!
) {
  createProductRates(
    input: $input,
    productCode: $productCode
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    productRates {
      ...ProductRateTypeFragment
    }
  }
}

Variables

{
  "input": CreateProductRatesInputType,
  "productCode": "abc123"
}

Response

{
  "data": {
    "createProductRates": {
      "possibleErrors": [PossibleErrorType],
      "productRates": [ProductRateType]
    }
  }
}

createQuote

Type:CreateQuoteOutputType

URL:https://api.octopus.energy/v1/graphql/

Create a quote for the given set of meter points for the supplied consumption.

Arguments

NameDescription

input (CreateQuoteInput!)

Return fields

NameDescription

errors ([SerializerFieldErrorsType])

quote (QuoteType)

Mutation

mutation CreateQuote($input: CreateQuoteInput!) {
  createQuote(input: $input) {
    errors {
      ...SerializerFieldErrorsTypeFragment
    }
    quote {
      ...QuoteTypeFragment
    }
  }
}

Variables

{
  "input": CreateQuoteInput
}

Response

{
  "data": {
    "createQuote": {
      "errors": [SerializerFieldErrorsType],
      "quote": QuoteType
    }
  }
}

createQuoteForAccount

Type:CreateQuoteForAccount

URL:https://api.octopus.energy/v1/graphql/

Create a quote for switching product.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.
  • KT-CT-4616: Unable to create a quote.
  • KT-CT-4631: Unable to quote for the chosen market.
  • KT-CT-4645: No supply point found belonging to the account for the provided identifier.
  • KT-CT-4924: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateQuoteForAccountInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (MarketSupplyQuoteRequestType)

Returns a quote request.

Mutation

mutation CreateQuoteForAccount($input: CreateQuoteForAccountInput!) {
  createQuoteForAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...MarketSupplyQuoteRequestTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createQuoteForAccount": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": MarketSupplyQuoteRequestType
    }
  }
}

createQuoteRequestForProducts

Type:CreateQuoteRequestForProducts

URL:https://api.octopus.energy/v1/graphql/

Create a renewal quote request for specified products without persisting to the database.

The possible errors that can be raised are:

  • KT-GB-4624: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateQuoteRequestForProductsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (QuoteRequestBase)

Returns a quote request for the requested product codes. Does not persist the quote.

Mutation

mutation CreateQuoteRequestForProducts($input: CreateQuoteRequestForProductsInput!) {
  createQuoteRequestForProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...QuoteRequestBaseFragment
    }
  }
}

Response

{
  "data": {
    "createQuoteRequestForProducts": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": QuoteRequestBase
    }
  }
}

createReferral

Type:CreateReferral

URL:https://api.octopus.energy/v1/graphql/

Create an account referral using an email address, personal link or code.This is for customers to refer other customers so it only works with friend referrals and not partner referrals.

The possible errors that can be raised are:

  • KT-CT-6723: Unauthorized.
  • KT-CT-6710: Unable to create referral.
  • KT-CT-6711: Accounts may not self-refer.
  • KT-CT-6713: Referring and referred account brands do not match.
  • KT-CT-6712: Invalid reference.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateReferralInput!)

Input fields for creating a referral.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

referredAccountRewardAmount (Int)

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

Mutation

mutation CreateReferral($input: CreateReferralInput!) {
  createReferral(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    referredAccountRewardAmount
  }
}

Variables

{
  "input": CreateReferralInput
}

Response

{
  "data": {
    "createReferral": {
      "possibleErrors": [PossibleErrorType],
      "referredAccountRewardAmount": 1
    }
  }
}

createRefundRequest

Type:CreateRefundRequest

URL:https://api.octopus.energy/v1/graphql/

Add a refund request to an account.

The possible errors that can be raised are:

  • KT-GB-4127: Unable to send refund request confirmation email.
  • KT-GB-4121: Unable to process refund request.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RefundRequestInput!)

Input fields for creating a refund request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

refundRequest (RefundRequestType)

Mutation

mutation CreateRefundRequest($input: RefundRequestInput!) {
  createRefundRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    refundRequest {
      ...RefundRequestTypeFragment
    }
  }
}

Variables

{
  "input": RefundRequestInput
}

Response

{
  "data": {
    "createRefundRequest": {
      "possibleErrors": [PossibleErrorType],
      "refundRequest": RefundRequestType
    }
  }
}

createReminder

Type:CreateReminder

URL:https://api.octopus.energy/v1/graphql/

Create an account reminder.

The possible errors that can be raised are:

  • KT-CT-1401: Invalid data.
  • KT-CT-1402: Unable to create account reminder.
  • KT-CT-1403: Missing user or team assignee.
  • KT-CT-1404: This reminder type is deprecated.
  • KT-CT-1405: Both user and team assignee provided.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateReminderInput!)

Input variables needed for creating an account reminder.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

reminder (Reminder)

Account reminder.

Mutation

mutation CreateReminder($input: CreateReminderInput!) {
  createReminder(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    reminder {
      ...ReminderFragment
    }
  }
}

Variables

{
  "input": CreateReminderInput
}

Response

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

Arguments

NameDescription

input (CreateRenewalQuoteRequestInput!)

Return fields

NameDescription

quoteRequest (QuoteRequest)

Mutation

mutation CreateRenewalQuoteRequest($input: CreateRenewalQuoteRequestInput!) {
  createRenewalQuoteRequest(input: $input) {
    quoteRequest {
      ...QuoteRequestFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createRenewalQuoteRequest": {
      "quoteRequest": QuoteRequest
    }
  }
}

createScheduledTransactions

Type:CreateScheduledTransactions

URL:https://api.octopus.energy/v1/graphql/

Create scheduled transactions.

The possible errors that can be raised are:

  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3830: Invalid action.
  • KT-CT-3831: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input ([CreateScheduledTransactionsInput]!)

Input fields to create scheduled transactions.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

scheduledTransactions ([ScheduledTransactionType])

Mutation

mutation CreateScheduledTransactions($input: [CreateScheduledTransactionsInput]!) {
  createScheduledTransactions(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    scheduledTransactions {
      ...ScheduledTransactionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createScheduledTransactions": {
      "possibleErrors": [PossibleErrorType],
      "scheduledTransactions": [ScheduledTransactionType]
    }
  }
}

Arguments

NameDescription

input (CreateShellAccountInput!)

Return fields

NameDescription

portfolioNumber (String)

givenName (String!)

familyName (String!)

billingName (String)

email (String!)

mobile (String)

landline (String)

brand (String)

dateOfBirth (Date)

billingAddressLine1 (String)

billingAddressLine2 (String)

billingAddressLine3 (String)

billingAddressLine4 (String)

billingAddressLine5 (String)

billingPostcode (String)

billingRichAddress (String)

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

billingPeriodLength (String)

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

billingPeriodMultiplier (Int)

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

billingPeriodDay (Int)

Day to fixed bill on if billingperiodlength set.

billingPeriodMonth (Int)

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

isBusinessAccount (Boolean)

companyName (String)

companyNumber (String)

businessType (String)

password (String)

passwordUpdateToken (String)

urn (String)

errors ([ErrorType])

account (AccountInterface)

clientMutationId (String)

Mutation

mutation CreateShellAccount($input: CreateShellAccountInput!) {
  createShellAccount(input: $input) {
    portfolioNumber
    givenName
    familyName
    billingName
    email
    mobile
    landline
    brand
    dateOfBirth
    billingAddressLine1
    billingAddressLine2
    billingAddressLine3
    billingAddressLine4
    billingAddressLine5
    billingPostcode
    billingRichAddress
    billingPeriodLength
    billingPeriodMultiplier
    billingPeriodDay
    billingPeriodMonth
    isBusinessAccount
    companyName
    companyNumber
    businessType
    password
    passwordUpdateToken
    urn
    errors {
      ...ErrorTypeFragment
    }
    account {
      ...AccountInterfaceFragment
    }
    clientMutationId
  }
}

Variables

Response

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

createSupplyPointMetadata

Type:CreateSupplyPointMetadata

URL:https://api.octopus.energy/v1/graphql/

Create metadata for a supply point.

The possible errors that can be raised are:

  • KT-CT-8412: Invalid data.
  • KT-CT-8414: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SupplyPointMetadataInput!)

Input fields for creating metadata.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

metadata (Metadata)

The created metadata.

Mutation

mutation CreateSupplyPointMetadata($input: SupplyPointMetadataInput!) {
  createSupplyPointMetadata(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    metadata {
      ...MetadataFragment
    }
  }
}

Variables

Response

{
  "data": {
    "createSupplyPointMetadata": {
      "possibleErrors": [PossibleErrorType],
      "metadata": Metadata
    }
  }
}

createTempProvisioningClaim

Type:CreateProvisioningClaim

URL:https://api.octopus.energy/v1/graphql/

Create a temporary provisioning cert in krakenflex

Return fields

NameDescription

tempProvisioningClaimCert (GenericScalar)

The temporary provisioning certification.

Mutation

mutation CreateTempProvisioningClaim {
  createTempProvisioningClaim {
    tempProvisioningClaimCert
  }
}

Response

{
  "data": {
    "createTempProvisioningClaim": {
      "tempProvisioningClaimCert": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType
    }
  }
}

createTimeSeriesPrices

Type:CreateTimeSeriesPrices!

URL:https://api.octopus.energy/v1/graphql/

Create time series prices.

The possible errors that can be raised are:

  • KT-CT-12014: Time series not found.
  • KT-CT-12015: Characteristics mismatch.
  • KT-CT-12016: Conflicting time series entries.
  • KT-CT-12017: Invalid time series entries period.
  • KT-CT-12038: Invalid time series entries granularity.
  • KT-CT-12040: Time series entries in use.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'createTimeSeriesPrices' field is deprecated.


Please use the 'createOrUpdateTimeSeriesEntries' mutation instead.


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

Arguments

NameDescription

input (CreateTimeSeriesPricesInput!)

The time series input for price creation.

Return fields

NameDescription

Mutation

mutation CreateTimeSeriesPrices($input: CreateTimeSeriesPricesInput!) {
  createTimeSeriesPrices(input: $input) {
    code
    productCode
    name
    description
    unit
    periodSize
    meta
    variants {
      ...VariantProfileFragment
    }
  }
}

Variables

Response

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

createWarmHomeDiscountApplication

Type:WarmHomeDiscountApplicationOutputType

URL:https://api.octopus.energy/v1/graphql/

Create warm home discount application with given qualifying requirements and account.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-14001: The Warm Home Discount application process is closed for this scheme year.
  • KT-GB-14002: The customer already has an open application for this scheme year.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

accountNumber (String!)

The account number.

applicationInputs (WarmHomeDiscountApplicationInputType!)

The qualifying criterion and component for the application.

Return fields

NameDescription

errors ([SerializerFieldErrorsType])

id (String)

Mutation

mutation CreateWarmHomeDiscountApplication(
  $accountNumber: String!,
  $applicationInputs: WarmHomeDiscountApplicationInputType!
) {
  createWarmHomeDiscountApplication(
    accountNumber: $accountNumber,
    applicationInputs: $applicationInputs
  ) {
    errors {
      ...SerializerFieldErrorsTypeFragment
    }
    id
  }
}

Variables

{
  "accountNumber": "abc123",
  "applicationInputs": WarmHomeDiscountApplicationInputType
}

Response

{
  "data": {
    "createWarmHomeDiscountApplication": {
      "errors": [SerializerFieldErrorsType],
      "id": "abc123"
    }
  }
}

deauthenticateDevice

Type:DeauthenticateDevice

URL:https://api.octopus.energy/v1/graphql/

De-authenticate a device.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4350: Unable to de-authenticate device.
  • KT-CT-4352: This device cannot currently be de-authenticated.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'deauthenticateDevice' field is deprecated.

Please use 'deauthenticateFlexDevice' instead.

- Marked as deprecated on 2025-05-12.
- Scheduled for removal on or after 2026-01-16.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/606/

Arguments

NameDescription

input (DeAuthenticationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (DeviceDetailsType)

Mutation

mutation DeauthenticateDevice($input: DeAuthenticationInput) {
  deauthenticateDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...DeviceDetailsTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deauthenticateDevice": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": DeviceDetailsType
    }
  }
}

deauthenticateFlexDevice

Type:DeauthenticateFlexDevice

URL:https://api.octopus.energy/v1/graphql/

De-authenticate a device by device id.

The possible errors that can be raised are:

  • KT-CT-4350: Unable to de-authenticate device.
  • KT-CT-4352: This device cannot currently be de-authenticated.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (DeauthenticateFlexDeviceInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (DeviceDetailsType)

Mutation

mutation DeauthenticateFlexDevice($input: DeauthenticateFlexDeviceInput) {
  deauthenticateFlexDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...DeviceDetailsTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deauthenticateFlexDevice": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": DeviceDetailsType
    }
  }
}

decommissionSmartDevice

Type:DecommissionSmartDevice

URL:https://api.octopus.energy/v1/graphql/

Decommissions a device using SmartPear's 'remove device' orchestration.

The possible errors that can be raised are:

  • KT-GB-4024: The provided device ID does not match any devices known by Kraken.
  • KT-GB-4050: Smart meter not found.
  • KT-GB-4025: Error sending the request to decommission the device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DecommissionSmartDeviceInput!)

Input fields for decommission meters.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference of the Decommission Request in Kraken.

Mutation

mutation DecommissionSmartDevice($input: DecommissionSmartDeviceInput!) {
  decommissionSmartDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "decommissionSmartDevice": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

deductLoyaltyPoints

Type:DeductLoyaltyPoints

URL:https://api.octopus.energy/v1/graphql/

Deduct the passed number of Loyalty Points from the account.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-5420: Unauthorized.
  • KT-CT-9211: Invalid reason for loyalty points award.
  • KT-CT-9219: Loyalty points user not found.
  • KT-CT-9204: Negative or zero points set.
  • KT-CT-9205: Insufficient Loyalty Points.
  • KT-CT-9208: Invalid posted at datetime.
  • KT-CT-9221: Idempotency key already used on ledger entry.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DeductLoyaltyPointsInput!)

Input fields for deducting Loyalty Points.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pointsDeducted (Int)

The number of loyalty points that were deducted.

ledgerEntry (LoyaltyPointLedgerEntryType)

The ledger entry for the deducted loyalty points.

Mutation

mutation DeductLoyaltyPoints($input: DeductLoyaltyPointsInput!) {
  deductLoyaltyPoints(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pointsDeducted
    ledgerEntry {
      ...LoyaltyPointLedgerEntryTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deductLoyaltyPoints": {
      "possibleErrors": [PossibleErrorType],
      "pointsDeducted": 1,
      "ledgerEntry": LoyaltyPointLedgerEntryType
    }
  }
}

deleteAccountReference

Type:DeleteAccountReference

URL:https://api.octopus.energy/v1/graphql/

Delete an account reference.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-8310: Invalid data.
  • KT-CT-8312: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DeleteAccountReferenceInput!)

Input fields for removing an account reference.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReference (DeleteAccountReferenceType)

Mutation

mutation DeleteAccountReference($input: DeleteAccountReferenceInput!) {
  deleteAccountReference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReference {
      ...DeleteAccountReferenceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deleteAccountReference": {
      "possibleErrors": [PossibleErrorType],
      "accountReference": DeleteAccountReferenceType
    }
  }
}

deleteBoostCharge

Type:DeleteBoostCharge

URL:https://api.octopus.energy/v1/graphql/

Stop any active boost charging.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4354: Unable to cancel boost charge.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'deleteBoostCharge' field is deprecated.

Please use 'updateBoostCharge' instead.

- Marked as deprecated on 2025-05-12.
- Scheduled for removal on or after 2026-01-26.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/607/

Arguments

NameDescription

input (DeleteBoostChargeInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation DeleteBoostCharge($input: DeleteBoostChargeInput) {
  deleteBoostCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deleteBoostCharge": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

deleteMfaDevice

Type:DeleteMfaDevice

URL:https://api.octopus.energy/v1/graphql/

Delete MFA Device for user.

The possible errors that can be raised are:

  • KT-CT-1150: MFA device not found.
  • KT-CT-1154: Unable to delete MFA device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DeleteMfaDeviceInputType!)

Input fields for deleting an existing multi-factor authentication device for the logged user.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

deviceDeleted (Boolean)

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

Mutation

mutation DeleteMfaDevice($input: DeleteMfaDeviceInputType!) {
  deleteMfaDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    deviceDeleted
  }
}

Variables

Response

{
  "data": {
    "deleteMfaDevice": {
      "possibleErrors": [PossibleErrorType],
      "deviceDeleted": true
    }
  }
}

deletePropertyDescendants

Type:DeletePropertyDescendants

URL:https://api.octopus.energy/v1/graphql/

Delete all descendants of a property in a hierarchy.

This permanently deletes all descendant nodes (children, grandchildren, etc.) but keeps the property node itself in the hierarchy. This operation is idempotent - if the property is not in the hierarchy or has no descendants, it will succeed without error.

The possible errors that can be raised are:

  • KT-CT-6622: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DeletePropertyDescendantsInput!)

Input fields for deleting descendants from a property.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

property (PropertyType)

The property whose descendants were deleted.

Mutation

mutation DeletePropertyDescendants($input: DeletePropertyDescendantsInput!) {
  deletePropertyDescendants(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    property {
      ...PropertyTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "deletePropertyDescendants": {
      "possibleErrors": [PossibleErrorType],
      "property": PropertyType
    }
  }
}

deletePushNotificationBinding

Type:DeletePushNotificationBinding

URL:https://api.octopus.energy/v1/graphql/

Delete a device token used for push notifications.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-CT-5411: Invalid token or no push notification binding found for the given account user.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DeletePushNotificationBindingInput!)

Input fields for deleting a push notification binding.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

status (DeletePushNotificationBindingOutput)

Mutation

mutation DeletePushNotificationBinding($input: DeletePushNotificationBindingInput!) {
  deletePushNotificationBinding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    status
  }
}

Response

{
  "data": {
    "deletePushNotificationBinding": {
      "possibleErrors": [PossibleErrorType],
      "status": "SUCCESSFUL"
    }
  }
}

deprovisionHeatingController

Type:DeprovisionHeatingController

URL:https://api.octopus.energy/v1/graphql/

De-provision a heating controller device.

The possible errors that can be raised are:

  • KT-CT-4307: Error deprovisioning an Octopus heat pump.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'deprovisionHeatingController' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

message (String)

The message to display to the user upon successful device de-provisioning.

Mutation

mutation DeprovisionHeatingController(
  $accountNumber: String!,
  $euid: ID!
) {
  deprovisionHeatingController(
    accountNumber: $accountNumber,
    euid: $euid
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    message
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123"
}

Response

{
  "data": {
    "deprovisionHeatingController": {
      "possibleErrors": [PossibleErrorType],
      "message": "abc123"
    }
  }
}

detachSupplyPointFromEstimationGroup

Type:DetachSupplyPointFromEstimationGroup

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-13603: Supply Point does not exist.
  • KT-CT-13604: Supply point has no estimation group assigned.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DetachSupplyPointFromEstimationGroupInput!)

Input fields for detaching a supply point from an estimation group.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

supplyPoint (DeletedSupplyPointEstimationGroupType)

The deleted supply point.

Mutation

mutation DetachSupplyPointFromEstimationGroup($input: DetachSupplyPointFromEstimationGroupInput!) {
  detachSupplyPointFromEstimationGroup(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    supplyPoint {
      ...DeletedSupplyPointEstimationGroupTypeFragment
    }
  }
}

Response

{
  "data": {
    "detachSupplyPointFromEstimationGroup": {
      "possibleErrors": [PossibleErrorType],
      "supplyPoint": DeletedSupplyPointEstimationGroupType
    }
  }
}

deviceRegistration

Type:DeviceRegistration

URL:https://api.octopus.energy/v1/graphql/

Register a device (EV, battery or heat pump) for smart control.

The possible errors that can be raised are:

  • KT-CT-4324: Device already registered error.
  • KT-CT-4321: Serializer validation error.
  • KT-CT-4312: Unable to register device.
  • KT-CT-4363: No capable devices found.
  • KT-CT-4364: Multiple devices found.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'deviceRegistration' field is deprecated.

Please use 'startSmartFlexOnboarding' instead.

- Marked as deprecated on 2025-09-08.
- Scheduled for removal on or after 2026-03-01.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/678/

Arguments

NameDescription

input (DeviceRegistrationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

registeredDeviceIds ([String])

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

Mutation

mutation DeviceRegistration($input: DeviceRegistrationInput) {
  deviceRegistration(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    registeredDeviceIds
  }
}

Variables

Response

{
  "data": {
    "deviceRegistration": {
      "possibleErrors": [PossibleErrorType],
      "registeredDeviceIds": ["abc123"]
    }
  }
}

directDebitPaymentDayUpdate

Type:DirectDebitPaymentDayUpdate

URL:https://api.octopus.energy/v1/graphql/

DEPRECATED: Please use updatePaymentSchedulePaymentDay instead

Update monthly Direct Debit payment day

This field requires the Authorization header to be set.

Deprecated

The 'directDebitPaymentDayUpdate' field is deprecated.


Please use the 'updatePaymentSchedulePaymentDay' mutation instead.


- Marked as deprecated on 2020-10-02.
- Scheduled for removal on or after 2023-04-06.

Arguments

NameDescription

input (DirectDebitPaymentDayUpdateInput!)

Return fields

NameDescription

paymentSchedule (PaymentScheduleType)

errors ([ErrorType])

Mutation

mutation DirectDebitPaymentDayUpdate($input: DirectDebitPaymentDayUpdateInput!) {
  directDebitPaymentDayUpdate(input: $input) {
    paymentSchedule {
      ...PaymentScheduleTypeFragment
    }
    errors {
      ...ErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "directDebitPaymentDayUpdate": {
      "paymentSchedule": PaymentScheduleType,
      "errors": [ErrorType]
    }
  }
}

Arguments

NameDescription

input (DisableAutoTopupInput!)

Input fields for disabling auto top-up.

Return fields

NameDescription

success (Boolean!)

Boolean indicating if the auto top-up was successfully disabled.

Mutation

mutation DisableAutoTopup($input: DisableAutoTopupInput!) {
  disableAutoTopup(input: $input) {
    success
  }
}

Variables

Response

{
  "data": {
    "disableAutoTopup": {
      "success": true
    }
  }
}

endContributionAgreement

Type:EndContributionAgreement

URL:https://api.octopus.energy/v1/graphql/

End a contribution agreement for an account.

The possible errors that can be raised are:

  • KT-CT-9603: Unable to find contribution agreement.
  • KT-CT-4123: Unauthorized.
  • KT-CT-9604: Unable to end contribution agreement.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (EndContributionAgreementInput!)

Input variables needed for ending a contribution agreement on an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

contributionAgreement (ContributionAgreementType)

The created contribution agreement.

Mutation

mutation EndContributionAgreement($input: EndContributionAgreementInput!) {
  endContributionAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    contributionAgreement {
      ...ContributionAgreementTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "endContributionAgreement": {
      "possibleErrors": [PossibleErrorType],
      "contributionAgreement": ContributionAgreementType
    }
  }
}

enqueueInboundCall

Type:EnqueueInboundCall

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-11802: Call not found.
  • KT-CT-11803: Unable to enqueue the call.
  • KT-CT-11817: Invalid call ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (EnqueueInboundCallInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

call (InboundCallType)

The call that was enqueued.

Mutation

mutation EnqueueInboundCall($input: EnqueueInboundCallInput!) {
  enqueueInboundCall(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    call {
      ...InboundCallTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "enqueueInboundCall": {
      "possibleErrors": [PossibleErrorType],
      "call": InboundCallType
    }
  }
}

enrollAccountInLoyaltyProgram

Type:EnrollAccountInLoyaltyProgram

URL:https://api.octopus.energy/v1/graphql/

Enroll users account in Loyalty program.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9213: ineligible loyalty points enrollment.
  • KT-CT-9210: Unhandled Loyalty Points exception.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (EnrollAccountInLoyaltyProgramInput!)

The account number to enroll in the loyalty program.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

outcome (EnrollAccountInLoyaltyProgramOutcome)

Outcome of the loyalty points campaign enrollment.

Mutation

mutation EnrollAccountInLoyaltyProgram($input: EnrollAccountInLoyaltyProgramInput!) {
  enrollAccountInLoyaltyProgram(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    outcome {
      ...EnrollAccountInLoyaltyProgramOutcomeFragment
    }
  }
}

Response

{
  "data": {
    "enrollAccountInLoyaltyProgram": {
      "possibleErrors": [PossibleErrorType],
      "outcome": EnrollAccountInLoyaltyProgramOutcome
    }
  }
}

enrollFanClubAccount

Type:EnrollFanClubAccount

URL:https://api.octopus.energy/v1/graphql/

Enroll account up to Fan Club.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-8104: Account already enrolled.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (JoinFanClubInput!)

Input fields for joining the Fan Club.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

enrollmentOutput (EnrollFanClubAccountOutputType)

Result of the Fan Club enrollment.

Mutation

mutation EnrollFanClubAccount($input: JoinFanClubInput!) {
  enrollFanClubAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    enrollmentOutput {
      ...EnrollFanClubAccountOutputTypeFragment
    }
  }
}

Variables

{
  "input": JoinFanClubInput
}

Response

{
  "data": {
    "enrollFanClubAccount": {
      "possibleErrors": [PossibleErrorType],
      "enrollmentOutput": EnrollFanClubAccountOutputType
    }
  }
}

enrollment

Type:EnrollmentInitiated!

URL:https://api.octopus.energy/v1/graphql/

Initiate an enrollment for an account and a set of supply points.

The possible errors that can be raised are:

  • KT-CT-1602: Serializer validation error.
  • KT-CT-4410: Invalid postcode.
  • KT-CT-4412: The supplied address is not valid.
  • KT-CT-4501: Unauthorized.
  • KT-CT-7719: Session not found.
  • KT-CT-10312: Mutation not enabled in this environment.
  • KT-CT-10313: Failed to enroll account.
  • KT-CT-10314: This supply point is already on supply.
  • KT-CT-10315: Unable to begin enrollment journey due to invalid data.
  • KT-CT-6622: Unauthorized.
  • KT-CT-10340: House move enrollment is not enabled.
  • KT-CT-10302: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (EnrollmentInput!)

The Enrollment Input data for the Join Supplier.

Return fields

NameDescription

Mutation

mutation Enrollment($input: EnrollmentInput!) {
  enrollment(input: $input) {
    enrollmentProcesses {
      ... on JoinSupplierProcessType {
        ...JoinSupplierProcessTypeFragment
      }
      ... on OccupyPropertyProcessType {
        ...OccupyPropertyProcessTypeFragment
      }
    }
    message
  }
}

Variables

{
  "input": EnrollmentInput
}

Response

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

estimateElectricityMeterReading

Type:EstimateElectricityMeterReading

URL:https://api.octopus.energy/v1/graphql/

Estimate the reading on an electricity meter at a particular date.

The possible errors that can be raised are:

  • KT-GB-11013: Register not found.
  • KT-GB-11014: The meter and meter point do not belong to the given register.
  • KT-GB-11015: The specified register does not have any recorded readings.
  • KT-GB-11016: Unable to estimate meter reading.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'estimateElectricityMeterReading' field is deprecated.

This mutation is no longer required.

- Marked as deprecated on 2026-02-27.
- Scheduled for removal on or after 2026-03-09.

Arguments

NameDescription

input (MeterReadingEstimateInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

estimate (MeterReadingEstimateType)

The meter reading estimate.

Mutation

mutation EstimateElectricityMeterReading($input: MeterReadingEstimateInput!) {
  estimateElectricityMeterReading(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    estimate {
      ...MeterReadingEstimateTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "estimateElectricityMeterReading": {
      "possibleErrors": [PossibleErrorType],
      "estimate": MeterReadingEstimateType
    }
  }
}

estimateGasMeterReading

Type:EstimateGasMeterReading

URL:https://api.octopus.energy/v1/graphql/

Estimate the reading on a gas meter at a particular date.

The possible errors that can be raised are:

  • KT-GB-11013: Register not found.
  • KT-GB-11014: The meter and meter point do not belong to the given register.
  • KT-GB-11015: The specified register does not have any recorded readings.
  • KT-GB-11016: Unable to estimate meter reading.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'estimateGasMeterReading' field is deprecated.

This mutation is no longer required.

- Marked as deprecated on 2026-02-27.
- Scheduled for removal on or after 2026-03-09.

Arguments

NameDescription

input (MeterReadingEstimateInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

estimate (MeterReadingEstimateType)

The meter reading estimate.

Mutation

mutation EstimateGasMeterReading($input: MeterReadingEstimateInput!) {
  estimateGasMeterReading(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    estimate {
      ...MeterReadingEstimateTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "estimateGasMeterReading": {
      "possibleErrors": [PossibleErrorType],
      "estimate": MeterReadingEstimateType
    }
  }
}

expireEvPublicChargingToken

Type:ExpireEvPublicChargingToken

URL:https://api.octopus.energy/v1/graphql/

Expire EV Public charging token.

The possible errors that can be raised are:

  • KT-CT-5817: External Account not found.
  • KT-CT-5818: Invalid data.
  • KT-CT-5819: Token not found.
  • KT-CT-5820: Multiple tokens found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ExpireEvPublicChargingTokenInput!)

Input fields for expiring a token.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (Token)

Mutation

mutation ExpireEvPublicChargingToken($input: ExpireEvPublicChargingTokenInput!) {
  expireEvPublicChargingToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token {
      ...TokenFragment
    }
  }
}

Variables

Response

{
  "data": {
    "expireEvPublicChargingToken": {
      "possibleErrors": [PossibleErrorType],
      "token": Token
    }
  }
}

fanClubDiscountNotification

Type:FanClubDiscountNotification

URL:https://api.octopus.energy/v1/graphql/

Send notification of likely Fan Club discount.

The possible errors that can be raised are:

  • KT-CT-8106: No catchments provided.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FanClubDiscountNotificationInput!)

Input fields for sending Fan Club discount notifications.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Boolean indicating if Fan Club notifications were triggered.

Mutation

mutation FanClubDiscountNotification($input: FanClubDiscountNotificationInput!) {
  fanClubDiscountNotification(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

Response

{
  "data": {
    "fanClubDiscountNotification": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

fanClubNonOctopusCustomerComms

Type:FanClubNonOctopusCustomerComms

URL:https://api.octopus.energy/v1/graphql/

Send comms for Fan Club sign-ups from non-Octopus customers.

The possible errors that can be raised are:

  • KT-CT-8107: Invalid eligibility status.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FanClubNonOctopusCustomerCommsInput!)

Input fields for sending comms to non-Octopus users.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Flag for whether Fan Club comms for non-Octopus customer were sent.

Mutation

mutation FanClubNonOctopusCustomerComms($input: FanClubNonOctopusCustomerCommsInput!) {
  fanClubNonOctopusCustomerComms(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Response

{
  "data": {
    "fanClubNonOctopusCustomerComms": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

fetchGeneratePaymentFingerprint

Type:FetchGeneratePaymentFingerprint

URL:https://api.octopus.energy/v1/graphql/

Fetch or generate payment fingerprint from vendor.

The possible errors that can be raised are:

  • KT-CT-12101: Payment instruction not found.
  • KT-CT-12102: Payment vendor not supported.
  • KT-CT-12103: Missing payment metadata from vendor.
  • KT-CT-12104: Unable to fetch or generate payment fingerprint.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FetchGeneratePaymentFingerprintInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

fingerprint (String)

Fetched or generated fingerprint from vendor.

vendor (String)

Vendor name.

Mutation

mutation FetchGeneratePaymentFingerprint($input: FetchGeneratePaymentFingerprintInput!) {
  fetchGeneratePaymentFingerprint(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    fingerprint
    vendor
  }
}

Response

{
  "data": {
    "fetchGeneratePaymentFingerprint": {
      "possibleErrors": [PossibleErrorType],
      "fingerprint": "abc123",
      "vendor": "abc123"
    }
  }
}

fetchPreSignedLinkForOpportunityAttachment

Type:FetchPreSignedLinkForOpportunityAttachment

URL:https://api.octopus.energy/v1/graphql/

Fetch a pre-signed link for an opportunity file attachment.

The possible errors that can be raised are:

  • KT-CT-8933: Opportunity file attachment not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FetchPreSignedLinkForOpportunityAttachmentInput!)

Input fields for fetching a pre-signed link for an opportunity file attachment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunityFileAttachment (OpportunityFileAttachment)

The opportunity file attachment with pre-signed URL.

Mutation

mutation FetchPreSignedLinkForOpportunityAttachment($input: FetchPreSignedLinkForOpportunityAttachmentInput!) {
  fetchPreSignedLinkForOpportunityAttachment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunityFileAttachment {
      ...OpportunityFileAttachmentFragment
    }
  }
}

Response

{
  "data": {
    "fetchPreSignedLinkForOpportunityAttachment": {
      "possibleErrors": [PossibleErrorType],
      "opportunityFileAttachment": OpportunityFileAttachment
    }
  }
}

fitAcceptSchedule

Type:FitAcceptSchedule

URL:https://api.octopus.energy/v1/graphql/

Accept a FIT schedule for a particular account.

The possible errors that can be raised are:

  • KT-GB-6813: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FitAcceptScheduleInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

fitSchedule (FitScheduleType)

The accepted schedule.

Mutation

mutation FitAcceptSchedule($input: FitAcceptScheduleInput!) {
  fitAcceptSchedule(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    fitSchedule {
      ...FitScheduleTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "fitAcceptSchedule": {
      "possibleErrors": [PossibleErrorType],
      "fitSchedule": FitScheduleType
    }
  }
}

Arguments

NameDescription

fitId (String!)

The FiT id.

Return fields

NameDescription

installation (InstallationType)

The FiT installation associated with the provided FiT id.

Mutation

mutation FitAcceptTermsAndConditions($fitId: String!) {
  fitAcceptTermsAndConditions(fitId: $fitId) {
    installation {
      ...InstallationTypeFragment
    }
  }
}

Variables

{
  "fitId": "abc123"
}

Response

{
  "data": {
    "fitAcceptTermsAndConditions": {
      "installation": InstallationType
    }
  }
}

fitCreateMeterReadings

Type:FitCreateMeterReadings

URL:https://api.octopus.energy/v1/graphql/

Submit meter readings for any FIT installations associated with a particular account.

The possible errors that can be raised are:

  • KT-GB-6812: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FitMeterReadingInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

readingsSubmitted (Boolean)

Whether the meter readings were successfully submitted.

Mutation

mutation FitCreateMeterReadings($input: FitMeterReadingInput!) {
  fitCreateMeterReadings(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    readingsSubmitted
  }
}

Variables

Response

{
  "data": {
    "fitCreateMeterReadings": {
      "possibleErrors": [PossibleErrorType],
      "readingsSubmitted": true
    }
  }
}

fitCreateMeterReadingsViaIvr

Type:FitCreateMeterReadingsIVR

URL:https://api.octopus.energy/v1/graphql/

Submit meter readings for any FIT installations associated with a particular account via IVR.

The possible errors that can be raised are:

  • KT-GB-6812: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (FitMeterReadingInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

readingsSubmitted (Boolean)

Whether the meter readings were successfully submitted.

Mutation

mutation FitCreateMeterReadingsViaIvr($input: FitMeterReadingInput!) {
  fitCreateMeterReadingsViaIvr(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    readingsSubmitted
  }
}

Variables

Response

{
  "data": {
    "fitCreateMeterReadingsViaIvr": {
      "possibleErrors": [PossibleErrorType],
      "readingsSubmitted": true
    }
  }
}

forceReauthentication

Type:ForceReauthentication

URL:https://api.octopus.energy/v1/graphql/

Force users of Kraken Tokens and refresh tokens issued to the viewer to reauthenticate.

Calling this mutation will cause all Kraken Tokens and refresh tokens issued to the authenticated viewer before the mutation was called to become invalid.

Arguments

NameDescription

input (ForceReauthenticationInput!)

Input object argument to the force-reauthentication mutation.

Return fields

NameDescription

tokensInvalidated (Boolean!)

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

effectiveAt (DateTime!)

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

Mutation

mutation ForceReauthentication($input: ForceReauthenticationInput!) {
  forceReauthentication(input: $input) {
    tokensInvalidated
    effectiveAt
  }
}

Variables

Response

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

Arguments

NameDescription

input (GenerateAffiliatesAudioRecordingPreSignedUrlInput!)

Input fields for creating a pre-signed URL for uploading an audio file to S3.

Return fields

NameDescription

Mutation

mutation GenerateAffiliatesAudioRecordingPreSignedUrl($input: GenerateAffiliatesAudioRecordingPreSignedUrlInput!) {
  generateAffiliatesAudioRecordingPreSignedUrl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    affiliatesAudioRecordingPreSignedUrl {
      ...AffiliateAudioRecordingPresignedPostTypeFragment
    }
  }
}

Response

{
  "data": {
    "generateAffiliatesAudioRecordingPreSignedUrl": {
      "possibleErrors": [PossibleErrorType],
      "affiliatesAudioRecordingPreSignedUrl": AffiliateAudioRecordingPresignedPostType
    }
  }
}

generateInkPresignedUrl

Type:GenerateInkPresignedUrl

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7620: Channel not supported.
  • KT-CT-7618: Unable to process message.
  • KT-CT-7624: Error when generating the presigned URL.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GenerateInkPresignedUrlInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

uploadUrl (String!)

A presigned URL for the user to upload to the quarantine bucket.

key (String!)

The key for the item.

fields (JSONString!)

Presigned post fields required to upload the file.

Mutation

mutation GenerateInkPresignedUrl($input: GenerateInkPresignedUrlInput) {
  generateInkPresignedUrl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    uploadUrl
    key
    fields
  }
}

Variables

Response

{
  "data": {
    "generateInkPresignedUrl": {
      "possibleErrors": [PossibleErrorType],
      "uploadUrl": "abc123",
      "key": "abc123",
      "fields": {"key": "value"}
    }
  }
}

generateLeadsFileAttachmentDownloadPreSignedUrl

Type:GenerateLeadsFileAttachmentDownloadPreSignedUrl

URL:https://api.octopus.energy/v1/graphql/

Generate a pre-signed URL for downloading a leads attachment file.

The possible errors that can be raised are:

  • KT-CT-8933: Opportunity file attachment not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GenerateLeadsFileAttachmentDownloadPreSignedUrlInput!)

Input fields for creating a pre-signed URL for downloading a lead file attachment from S3.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

leadsFileAttachmentDownloadPreSignedUrl (LeadsFileAttachmentDownloadPresignedUrlType)

Pre-signed S3 URL for downloading the leads file attachment.

Mutation

mutation GenerateLeadsFileAttachmentDownloadPreSignedUrl($input: GenerateLeadsFileAttachmentDownloadPreSignedUrlInput!) {
  generateLeadsFileAttachmentDownloadPreSignedUrl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    leadsFileAttachmentDownloadPreSignedUrl {
      ...LeadsFileAttachmentDownloadPresignedUrlTypeFragment
    }
  }
}

Response

{
  "data": {
    "generateLeadsFileAttachmentDownloadPreSignedUrl": {
      "possibleErrors": [PossibleErrorType],
      "leadsFileAttachmentDownloadPreSignedUrl": LeadsFileAttachmentDownloadPresignedUrlType
    }
  }
}

Arguments

NameDescription

input (GenerateLeadsFileAttachmentPreSignedUrlInput!)

Input fields for creating a pre-signed URL for uploading a lead file attachment file to S3.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

leadsFileAttachmentPreSignedUrl (LeadsFileAttachmentPresignedPostType)

Input fields required to generate a presigned S3 post for leads file attachment.

Mutation

mutation GenerateLeadsFileAttachmentPreSignedUrl($input: GenerateLeadsFileAttachmentPreSignedUrlInput!) {
  generateLeadsFileAttachmentPreSignedUrl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    leadsFileAttachmentPreSignedUrl {
      ...LeadsFileAttachmentPresignedPostTypeFragment
    }
  }
}

Response

{
  "data": {
    "generateLeadsFileAttachmentPreSignedUrl": {
      "possibleErrors": [PossibleErrorType],
      "leadsFileAttachmentPreSignedUrl": LeadsFileAttachmentPresignedPostType
    }
  }
}

generatePaymentAllocationNumber

Type:GeneratePaymentAllocationNumber

URL:https://api.octopus.energy/v1/graphql/

Generate PAN for a smart prepay meter

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (SmartMeterDeviceInput!)

Identifies the meter to generate a PAN for.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pan (String!)

The Payment Allocation Number routes payments made via a PSP (Payment Service Provider) to this device.

Mutation

mutation GeneratePaymentAllocationNumber($input: SmartMeterDeviceInput!) {
  generatePaymentAllocationNumber(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pan
  }
}

Variables

Response

{
  "data": {
    "generatePaymentAllocationNumber": {
      "possibleErrors": [PossibleErrorType],
      "pan": "abc123"
    }
  }
}

generatePreSignedToken

Type:GeneratePreSignedToken

URL:https://api.octopus.energy/v1/graphql/

Generate a pre-signed token with a set expiry time.

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-1120: The Kraken Token has expired.
  • KT-CT-1131: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

email (String!)

numberOfDaysAllowed (Int!)

The number of days that the token will be available for authentication (From now on).

scope (PreSignedTokenScope!)

Define (and limit) the scope of the token.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (String)

tokenExpiryDatetime (DateTime)

scope (PreSignedTokenScope)

Mutation

mutation GeneratePreSignedToken(
  $email: String!,
  $numberOfDaysAllowed: Int!,
  $scope: PreSignedTokenScope!
) {
  generatePreSignedToken(
    email: $email,
    numberOfDaysAllowed: $numberOfDaysAllowed,
    scope: $scope
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token
    tokenExpiryDatetime
    scope
  }
}

Variables

{
  "email": "abc123",
  "numberOfDaysAllowed": 1,
  "scope": "SUBMIT_METER_READINGS"
}

Response

{
  "data": {
    "generatePreSignedToken": {
      "possibleErrors": [PossibleErrorType],
      "token": "abc123",
      "tokenExpiryDatetime": "2020-01-01T00:00:00.000Z",
      "scope": "SUBMIT_METER_READINGS"
    }
  }
}

getEmbeddedSecretForNewPaymentInstruction

Type:GetEmbeddedSecretForNewPaymentInstruction

URL:https://api.octopus.energy/v1/graphql/

Get the client secret needed to create a new payment instruction using an embedded form.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GetEmbeddedSecretForNewPaymentInstructionInput!)

Input fields for getting the client secret for an embedded new card payment method form.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

secretKey (String)

Mutation

mutation GetEmbeddedSecretForNewPaymentInstruction($input: GetEmbeddedSecretForNewPaymentInstructionInput!) {
  getEmbeddedSecretForNewPaymentInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    secretKey
  }
}

Response

{
  "data": {
    "getEmbeddedSecretForNewPaymentInstruction": {
      "possibleErrors": [PossibleErrorType],
      "secretKey": "abc123"
    }
  }
}

getEmbeddedSecretForNewPaymentInstructionWithoutAccount

Type:GetEmbeddedSecretForNewPaymentInstructionWithoutAccount

URL:https://api.octopus.energy/v1/graphql/

Get the client secret needed to create a new payment instruction using an embedded form without tying it to a customer.

Arguments

NameDescription

input (GetEmbeddedSecretForNewPaymentInstructionWithoutAccountInput!)

Input fields for getting the client secret for an embedded new card payment method form.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

secretKey (String)

The client secret needed to create a new stored payment instruction.

Mutation

mutation GetEmbeddedSecretForNewPaymentInstructionWithoutAccount($input: GetEmbeddedSecretForNewPaymentInstructionWithoutAccountInput!) {
  getEmbeddedSecretForNewPaymentInstructionWithoutAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    secretKey
  }
}

Response

{
  "data": {
    "getEmbeddedSecretForNewPaymentInstructionWithoutAccount": {
      "possibleErrors": [PossibleErrorType],
      "secretKey": "abc123"
    }
  }
}

getHostedUrlForNewPaymentInstruction

Type:GetHostedUrlForNewPaymentInstruction

URL:https://api.octopus.energy/v1/graphql/

Get the external URL where the user can set up a payment instruction.

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3979: Invalid ledger.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GetHostedUrlForNewPaymentInstructionInput!)

Input fields for getting the external URL for setting up a payment instruction.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

url (String)

URL at which payment instruction can be set up.

Mutation

mutation GetHostedUrlForNewPaymentInstruction($input: GetHostedUrlForNewPaymentInstructionInput!) {
  getHostedUrlForNewPaymentInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    url
  }
}

Response

{
  "data": {
    "getHostedUrlForNewPaymentInstruction": {
      "possibleErrors": [PossibleErrorType],
      "url": "abc123"
    }
  }
}

getOrCreateAgreement

Type:GetOrCreateAgreement

URL:https://api.octopus.energy/v1/graphql/

Get an existing agreement or create a new one if it doesn't exist.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-4719: No supply point found for identifier provided.
  • KT-CT-4910: No product exists with the given input.
  • KT-CT-1503: Agreement validto date must be later than validfrom date.
  • KT-CT-1509: Unable to create agreement.
  • KT-CT-1511: Cannot create overlapping agreement.
  • KT-CT-1512: Account type does not support agreements.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CreateAgreementInput!)

Input fields for getting or creating an agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

created (Boolean)

Indicates whether a new agreement was created (true) or an existing agreement was returned (false).

agreement (CommonAgreementType)

The agreement that was retrieved or created.

Mutation

mutation GetOrCreateAgreement($input: CreateAgreementInput!) {
  getOrCreateAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    created
    agreement {
      ...CommonAgreementTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "getOrCreateAgreement": {
      "possibleErrors": [PossibleErrorType],
      "created": true,
      "agreement": CommonAgreementType
    }
  }
}

grantUserAccessToBusiness

Type:GrantUserAccessToBusiness

URL:https://api.octopus.energy/v1/graphql/

Grant user access to the business using the provided role.

The possible errors that can be raised are:

  • KT-CT-5463: Unauthorized.
  • KT-CT-11107: Unauthorized.
  • KT-CT-13501: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GrantUserAccessToBusinessInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation GrantUserAccessToBusiness($input: GrantUserAccessToBusinessInput!) {
  grantUserAccessToBusiness(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "grantUserAccessToBusiness": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

initializeAccount

Type:InitializeAccountResult!

URL:https://api.octopus.energy/v1/graphql/

Initialize account for sign up. Returns the existing account if matching datafound for the provided input, otherwise creates a new account.

The possible errors that can be raised are:

  • KT-CT-10324: Mutation not enabled in this environment.
  • KT-CT-10325: Input data has invalid format.
  • KT-CT-10326: An error occurred when trying to initialize the account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (BaseInitializeAccountInput!)

Return fields

NameDescription

Mutation

mutation InitializeAccount($input: BaseInitializeAccountInput!) {
  initializeAccount(input: $input) {
    isNewAccount
    accountNumber
  }
}

Variables

Response

{
  "data": {
    "initializeAccount": {
      "isNewAccount": true,
      "accountNumber": "abc123"
    }
  }
}

initializeUser

Type:InitializeUserResult!

URL:https://api.octopus.energy/v1/graphql/

Initialize user for sign up. Returns an existing user if matching datafound for the provided input, otherwise creates a new one.

The possible errors that can be raised are:

  • KT-CT-10327: Mutation not enabled in this environment.
  • KT-CT-10328: Input data has invalid format.
  • KT-CT-10329: An error occurred when trying to initialize the user.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (BaseInitializeUserInput!)

Return fields

NameDescription

Mutation

mutation InitializeUser($input: BaseInitializeUserInput!) {
  initializeUser(input: $input) {
    isNewUser
    userNumber
  }
}

Variables

Response

{
  "data": {
    "initializeUser": {
      "isNewUser": true,
      "userNumber": "abc123"
    }
  }
}

initiateHostedStandalonePayment

Type:InitiateHostedStandalonePayment

URL:https://api.octopus.energy/v1/graphql/

Initiate a standalone payment and return the url where the customer can complete it.

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3943: Invalid ledger.
  • KT-CT-3957: No collection method provided.
  • KT-CT-3958: Provide either ledger ID or ledger number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InitiateHostedStandalonePaymentInput!)

Input fields for initiating a standalone payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (InitiateHostedStandalonePaymentOutput)

The details required to refer to and complete a hosted payment.

Mutation

mutation InitiateHostedStandalonePayment($input: InitiateHostedStandalonePaymentInput!) {
  initiateHostedStandalonePayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...InitiateHostedStandalonePaymentOutputFragment
    }
  }
}

Response

{
  "data": {
    "initiateHostedStandalonePayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": InitiateHostedStandalonePaymentOutput
    }
  }
}

initiateProductSwitch

Type:InitiateProductSwitch

URL:https://api.octopus.energy/v1/graphql/

Do a product switch for a user.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4624: Unable to accept the given product code.
  • KT-CT-4924: Unauthorized.
  • KT-CT-4626: No product selected for the given quote code.
  • KT-CT-4719: No supply point found for identifier provided.
  • KT-CT-1509: Unable to create agreement.
  • KT-CT-1507: Agreement product switch date is not within the acceptable range.
  • KT-CT-4640: Unable to get market or client params from quoted product.
  • KT-CT-4627: No products are available for this quote.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InitiateProductSwitchInput!)

Instigate a product switch for a specific supply point given a valid product and account number.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

productCode (String!)

The selected product for a specific product switch.

switchDate (Date!)

The date at which the product switch becomes effective.

Mutation

mutation InitiateProductSwitch($input: InitiateProductSwitchInput!) {
  initiateProductSwitch(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    productCode
    switchDate
  }
}

Variables

Response

{
  "data": {
    "initiateProductSwitch": {
      "possibleErrors": [PossibleErrorType],
      "productCode": "abc123",
      "switchDate": "2020-01-01"
    }
  }
}

initiateStandalonePayment

Type:InitiateStandalonePayment

URL:https://api.octopus.energy/v1/graphql/

Initiate a standalone payment and return the client secret required to complete it.

The possible errors that can be raised are:

  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-4177: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3943: Invalid ledger.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InitiateStandalonePaymentInput!)

Input fields for initiating a standalone payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payment (InitiateStandalonePaymentOutput)

Mutation

mutation InitiateStandalonePayment($input: InitiateStandalonePaymentInput!) {
  initiateStandalonePayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payment {
      ...InitiateStandalonePaymentOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "initiateStandalonePayment": {
      "possibleErrors": [PossibleErrorType],
      "payment": InitiateStandalonePaymentOutput
    }
  }
}

initiateUnauthenticatedStandalonePayment

Type:InitiateUnauthenticatedStandalonePayment

URL:https://api.octopus.energy/v1/graphql/

Initiate an unauthenticated standalone payment and return the client secret required to complete it.

Arguments

NameDescription

input (InitiateUnauthenticatedStandalonePaymentInput!)

Input fields for initiating an unauthenticated standalone payment.

Return fields

NameDescription

payment (InitiateUnauthenticatedStandalonePaymentOutput)

The payment's retrieval and secret tokens.

Mutation

mutation InitiateUnauthenticatedStandalonePayment($input: InitiateUnauthenticatedStandalonePaymentInput!) {
  initiateUnauthenticatedStandalonePayment(input: $input) {
    payment {
      ...InitiateUnauthenticatedStandalonePaymentOutputFragment
    }
  }
}

Response

{
  "data": {
    "initiateUnauthenticatedStandalonePayment": {
      "payment": InitiateUnauthenticatedStandalonePaymentOutput
    }
  }
}

instigateContractTermination

Type:ContractTerminationInstigated!

URL:https://api.octopus.energy/v1/graphql/

Instigate a contract termination journey.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10004: Supply loss process instigation has failed.
  • KT-CT-10007: Unable to terminate contract.
  • KT-CT-10008: The contract is currently undergoing an active journey.
  • KT-CT-10013: Requested termination date is invalid.
  • KT-CT-10014: The provided contract termination input data is invalid.
  • KT-CT-10015: Supply point termination context is not serializable.
  • KT-CT-10016: Error building contract termination engine.
  • KT-CT-10022: Contract already terminated.
  • KT-CT-10023: Contract is already revoked.
  • KT-CT-10024: Contract already expired.
  • KT-CT-10025: Contract has not started yet.
  • KT-CT-10037: Contract notes feature is disabled.
  • KT-CT-10038: Contract note reason not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (BaseInstigateContractTerminationInput!)

Return fields

NameDescription

Mutation

mutation InstigateContractTermination($input: BaseInstigateContractTerminationInput!) {
  instigateContractTermination(input: $input) {
    message
  }
}

Response

{
  "data": {
    "instigateContractTermination": {
      "message": "abc123"
    }
  }
}

instigateContractVariation

Type:InstigateContractVariationOutput!

URL:https://api.octopus.energy/v1/graphql/

Instigate a contract variation journey.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10008: The contract is currently undergoing an active journey.
  • KT-CT-10011: Unable to vary contract terms.
  • KT-CT-10033: Unable to save term.
  • KT-CT-10012: Contract variation implies breach.
  • KT-CT-10034: Unknown contract journey type.
  • KT-CT-10035: Cannot process a non-active contract journey.
  • KT-CT-10036: The contract journey manager is not found.
  • KT-CT-10037: Contract notes feature is disabled.
  • KT-CT-10038: Contract note reason not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'instigateContractVariation' field is deprecated.

This is a legacy mutation. The varyContractTerms should be used instead.

- Marked as deprecated on 2026-03-05.
- Scheduled for removal on or after 2026-04-11.

Arguments

NameDescription

input (InstigateContractVariationInput!)

Return fields

NameDescription

Mutation

mutation InstigateContractVariation($input: InstigateContractVariationInput!) {
  instigateContractVariation(input: $input) {
    contract {
      ...ContractFragment
    }
  }
}

Variables

Response

{
  "data": {
    "instigateContractVariation": {
      "contract": Contract
    }
  }
}

instigateLeaveSupplier

Type:LeaveSupplierInstigated!

URL:https://api.octopus.energy/v1/graphql/

Instigate a leave supplier process or update an existing process.

The possible errors that can be raised are:

  • KT-CT-10304: Mutation not enabled in this environment.
  • KT-CT-4501: Unauthorized.
  • KT-CT-10301: Unable to instigate leave supplier process.
  • KT-CT-10330: Unsupported leave supplier type.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (LeaveSupplierInput!)

Return fields

NameDescription

Mutation

mutation InstigateLeaveSupplier($input: LeaveSupplierInput!) {
  instigateLeaveSupplier(input: $input) {
    number
    leaveSupplierProcessId
    message
  }
}

Variables

{
  "input": LeaveSupplierInput
}

Response

{
  "data": {
    "instigateLeaveSupplier": {
      "number": "abc123",
      "leaveSupplierProcessId": "abc123",
      "message": "abc123"
    }
  }
}

invalidatePaymentInstruction

Type:InvalidatePaymentInstruction

URL:https://api.octopus.energy/v1/graphql/

Invalidate an existing instruction.

The possible errors that can be raised are:

  • KT-CT-3926: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InvalidatePaymentInstructionInput!)

Input fields for invalidating a payment instruction from an embedded form.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

instruction (InvalidatePaymentInstructionOutput)

Mutation

mutation InvalidatePaymentInstruction($input: InvalidatePaymentInstructionInput!) {
  invalidatePaymentInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    instruction {
      ...InvalidatePaymentInstructionOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "invalidatePaymentInstruction": {
      "possibleErrors": [PossibleErrorType],
      "instruction": InvalidatePaymentInstructionOutput
    }
  }
}

invalidatePreSignedToken

Type:InvalidatePreSignedToken

URL:https://api.octopus.energy/v1/graphql/

Invalidate a previously-issued pre-signed token.

The possible errors that can be raised are:

  • KT-CT-1129: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (InvalidatePreSignedTokenInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (PreSignedToken)

Mutation

mutation InvalidatePreSignedToken($input: InvalidatePreSignedTokenInput!) {
  invalidatePreSignedToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token {
      ...PreSignedTokenFragment
    }
  }
}

Variables

Response

{
  "data": {
    "invalidatePreSignedToken": {
      "possibleErrors": [PossibleErrorType],
      "token": PreSignedToken
    }
  }
}

invalidatePreSignedTokensForUser

Type:InvalidatePreSignedTokensForUser

URL:https://api.octopus.energy/v1/graphql/

Invalidate pre-signed tokens issued to a particular user.

The possible errors that can be raised are:

  • KT-CT-1129: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InvalidatePreSignedTokensForUserInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

tokens ([PreSignedToken])

Mutation

mutation InvalidatePreSignedTokensForUser($input: InvalidatePreSignedTokensForUserInput!) {
  invalidatePreSignedTokensForUser(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    tokens {
      ...PreSignedTokenFragment
    }
  }
}

Response

{
  "data": {
    "invalidatePreSignedTokensForUser": {
      "possibleErrors": [PossibleErrorType],
      "tokens": [PreSignedToken]
    }
  }
}

invalidateRefreshToken

Type:InvalidateRefreshToken

URL:https://api.octopus.energy/v1/graphql/

Invalidate a previously-issued refresh token.

The possible errors that can be raised are:

  • KT-CT-1130: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InvalidateRefreshTokenInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (RefreshToken)

Mutation

mutation InvalidateRefreshToken($input: InvalidateRefreshTokenInput!) {
  invalidateRefreshToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token {
      ...RefreshTokenFragment
    }
  }
}

Variables

Response

{
  "data": {
    "invalidateRefreshToken": {
      "possibleErrors": [PossibleErrorType],
      "token": RefreshToken
    }
  }
}

invalidateRefreshTokensForUser

Type:InvalidateRefreshTokensForUser

URL:https://api.octopus.energy/v1/graphql/

Invalidate refresh tokens issued to a particular user.

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (InvalidateRefreshTokensForUserInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

tokens ([RefreshToken])

Mutation

mutation InvalidateRefreshTokensForUser($input: InvalidateRefreshTokensForUserInput!) {
  invalidateRefreshTokensForUser(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    tokens {
      ...RefreshTokenFragment
    }
  }
}

Response

{
  "data": {
    "invalidateRefreshTokensForUser": {
      "possibleErrors": [PossibleErrorType],
      "tokens": [RefreshToken]
    }
  }
}

joinConsumerDevice

Type:JoinConsumerDevice

URL:https://api.octopus.energy/v1/graphql/

Triggers the orchestration to join the PPMID, IHD, CAD or Alt HAN device to the ESME, GSME, GPF and/or CHF. This should be called after a meter has been commissioned.

The possible errors that can be raised are:

  • KT-GB-4053: Fuel type should not be specified for Alt HAN device.
  • KT-GB-4031: Error sending the request to join the device to the CHF.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (JoinConsumerDeviceInput!)

Input fields for join device.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference of the join PPMID, IHD, CAD or Alt HAN request in Kraken.

Mutation

mutation JoinConsumerDevice($input: JoinConsumerDeviceInput!) {
  joinConsumerDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "joinConsumerDevice": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

joinDeviceToNetwork

Type:JoinDeviceToNetwork

URL:https://api.octopus.energy/v1/graphql/

Joins a device to a HAN (Home Area Network).

The possible errors that can be raised are:

  • KT-GB-4019: This device type is not currently supported.
  • KT-GB-4020: Error sending the request to join the device to the Home Area Network.
  • KT-GB-4057: MPxN is required for the specified device type.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

chfDeviceId (String!)

Device ID of the CHF (Communications Hub Function).

installCode (String)

Code that authorises joining of the device to the HAN.

mpxn (String)

MPAN/MPRN of the meter or HCALCS to join to the HAN.

newDeviceId (String!)

Device ID of the device to join to the HAN.

newDeviceType (JoinableDeviceType!)

Type of device that is being joined to the HAN.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

Mutation

mutation JoinDeviceToNetwork(
  $chfDeviceId: String!,
  $installCode: String,
  $mpxn: String,
  $newDeviceId: String!,
  $newDeviceType: JoinableDeviceType!
) {
  joinDeviceToNetwork(
    chfDeviceId: $chfDeviceId,
    installCode: $installCode,
    mpxn: $mpxn,
    newDeviceId: $newDeviceId,
    newDeviceType: $newDeviceType
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

{
  "chfDeviceId": "abc123",
  "installCode": "abc123",
  "mpxn": "abc123",
  "newDeviceId": "abc123",
  "newDeviceType": "ELECTRICITY_METER"
}

Response

{
  "data": {
    "joinDeviceToNetwork": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

joinOctoplusCampaign

Type:JoinOctoplusCampaign

URL:https://api.octopus.energy/v1/graphql/

Enrolls an account in the Octoplus campaign.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-GB-9310: Account ineligible for joining Octoplus.
  • KT-GB-9311: Error joining campaign.
  • KT-GB-9312: Account already signed up to Octoplus.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

accountNumber (String)

Kraken account number.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean)

Returns mutation success.

Deprecated

The 'success' field is deprecated.

Use `outcome` instead.

- Marked as deprecated on 2023-10-12.
- Scheduled for removal on or after 2026-10-12.

outcome (EnrolmentOutcome)

Outcome of the Octoplus enrollment.

Mutation

mutation JoinOctoplusCampaign($accountNumber: String) {
  joinOctoplusCampaign(accountNumber: $accountNumber) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
    outcome {
      ...EnrolmentOutcomeFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123"
}

Response

{
  "data": {
    "joinOctoplusCampaign": {
      "possibleErrors": [PossibleErrorType],
      "success": true,
      "outcome": EnrolmentOutcome
    }
  }
}

joinSavingSessionsCampaign

Type:JoinSavingSessionsCampaign

URL:https://api.octopus.energy/v1/graphql/

Sign account up to Saving Sessions campaign.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-GB-5110: Campaign not found.
  • KT-GB-5111: Meter point not found.
  • KT-GB-5112: Error joining campaign.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'joinSavingSessionsCampaign' field is deprecated.

Saving Sessions will no longer be supported via Kraken.

- Marked as deprecated on 2026-02-18.
- Scheduled for removal on or after 2026-03-31.

Arguments

NameDescription

input (JoinSavingSessionsCampaignInput!)

Input fields for joining the Saving Sessions campaign.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (SavingSessionsAccountReturnType)

Mutation

mutation JoinSavingSessionsCampaign($input: JoinSavingSessionsCampaignInput!) {
  joinSavingSessionsCampaign(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...SavingSessionsAccountReturnTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "joinSavingSessionsCampaign": {
      "possibleErrors": [PossibleErrorType],
      "account": SavingSessionsAccountReturnType
    }
  }
}

joinSavingSessionsEvent

Type:JoinSavingSessionsEvent

URL:https://api.octopus.energy/v1/graphql/

Opt account in to a Saving Sessions event.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-GB-5114: Saving Sessions event not found.
  • KT-GB-5116: Account is not part of a Saving Sessions campaign.
  • KT-GB-5117: Account ineligible to join Saving Sessions event.
  • KT-GB-5115: Error joining event.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'joinSavingSessionsEvent' field is deprecated.

Saving Sessions will no longer be supported via Kraken.

- Marked as deprecated on 2026-02-18.
- Scheduled for removal on or after 2026-03-31.

Arguments

NameDescription

input (JoinSavingSessionsEventInput!)

Input fields for joining a Saving Sessions event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

joinedEventCodes ([String])

The event codes that the account has joined.

Mutation

mutation JoinSavingSessionsEvent($input: JoinSavingSessionsEventInput!) {
  joinSavingSessionsEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    joinedEventCodes
  }
}

Variables

Response

{
  "data": {
    "joinSavingSessionsEvent": {
      "possibleErrors": [PossibleErrorType],
      "joinedEventCodes": ["abc123"]
    }
  }
}

joinSupplierAcceptTermsAndConditions

Type:JoinSupplierAcceptTermsAndConditions

URL:https://api.octopus.energy/v1/graphql/

Accept terms and conditions for a join supplier process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4501: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (JoinSupplierAcceptTermsAndConditionsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean)

Indicator that the mutation has completed successfully.

Mutation

mutation JoinSupplierAcceptTermsAndConditions($input: JoinSupplierAcceptTermsAndConditionsInput!) {
  joinSupplierAcceptTermsAndConditions(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Response

{
  "data": {
    "joinSupplierAcceptTermsAndConditions": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

legacyProcessOrder

Type:LegacyProcessOrderOutput!

URL:https://api.octopus.energy/v1/graphql/

Process an Order (legacy)

The possible errors that can be raised are:

  • KT-CT-1605: Invalid input.
  • KT-CT-7701: The affiliate organisation was not found.
  • KT-CT-8906: Opportunity not found.
  • KT-CT-12701: Invalid sales channel code.
  • KT-CT-13102: Invalid order data.
  • KT-CT-13103: Unprocessable order.
  • KT-CT-13104: Conflicting order.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (LegacyProcessOrderInput!)

Return fields

NameDescription

Mutation

mutation LegacyProcessOrder($input: LegacyProcessOrderInput!) {
  legacyProcessOrder(input: $input) {
    status
    identifier
    resources {
      ...LegacyOrderResourceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "legacyProcessOrder": {
      "status": "PENDING",
      "identifier": NonEmptyString,
      "resources": [LegacyOrderResource]
    }
  }
}

linkAccountToBusiness

Type:LinkAccountToBusiness

URL:https://api.octopus.energy/v1/graphql/

Link an account to a business.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11104: Business role already allocated.
  • KT-CT-11105: Business role already allocated.
  • KT-CT-11106: Unauthorized.
  • KT-CT-11107: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (LinkAccountToBusinessInput!)

Input fields for linking an account to a business.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

business (BusinessType)

The business the account was linked to.

Mutation

mutation LinkAccountToBusiness($input: LinkAccountToBusinessInput!) {
  linkAccountToBusiness(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    business {
      ...BusinessTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "linkAccountToBusiness": {
      "possibleErrors": [PossibleErrorType],
      "business": BusinessType
    }
  }
}

linkUserToLine

Type:LinkUserToLineResponse!

URL:https://api.octopus.energy/v1/graphql/

Link an account user and line user together.

Arguments

NameDescription

input (LinkUserToLineInput!)

Input fields to link an account user with LINE.

Return fields

NameDescription

Mutation

mutation LinkUserToLine($input: LinkUserToLineInput!) {
  linkUserToLine(input: $input) {
    ... on LineLinkRedirectResponse {
      ...LineLinkRedirectResponseFragment
    }
    ... on LinkTokenNotFound {
      ...LinkTokenNotFoundFragment
    }
    ... on AlreadyLinkedError {
      ...AlreadyLinkedErrorFragment
    }
  }
}

Variables

{
  "input": LinkUserToLineInput
}

Response

{
  "data": {
    "linkUserToLine": LineLinkRedirectResponse
  }
}

markPrintBatchAsProcessed

Type:MarkPrintBatchAsProcessed!

URL:https://api.octopus.energy/v1/graphql/

Mark the print batch as processed.

The possible errors that can be raised are:

  • KT-CT-9011: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

printBatchId (ID!)

Return fields

NameDescription

Mutation

mutation MarkPrintBatchAsProcessed($printBatchId: ID!) {
  markPrintBatchAsProcessed(printBatchId: $printBatchId) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    printBatch {
      ...PrintBatchTypeFragment
    }
  }
}

Variables

{
  "printBatchId": "abc123"
}

Response

{
  "data": {
    "markPrintBatchAsProcessed": {
      "possibleErrors": [PossibleErrorType],
      "printBatch": PrintBatchType
    }
  }
}

masqueradeAuthentication

Type:MasqueradeAuthentication

URL:https://api.octopus.energy/v1/graphql/

Provide a temporary token to get an auth token. This is intended to allow support users to view customer data through the brand interface.

Arguments

NameDescription

masqueradeToken (String!)

The masquerade token issued by the support site.

userId (String!)

The ID of the AccountUser to masquerade as.

Return fields

NameDescription

token (String)

A Kraken Token that can be used to authenticate to the API, masquerading as the desired user.

errors ([ErrorType])

A list of any errors that occurred while running this mutation.

Mutation

mutation MasqueradeAuthentication(
  $masqueradeToken: String!,
  $userId: String!
) {
  masqueradeAuthentication(
    masqueradeToken: $masqueradeToken,
    userId: $userId
  ) {
    token
    errors {
      ...ErrorTypeFragment
    }
  }
}

Variables

{
  "masqueradeToken": "abc123",
  "userId": "abc123"
}

Response

{
  "data": {
    "masqueradeAuthentication": {
      "token": "abc123",
      "errors": [ErrorType]
    }
  }
}

moveToBucket

Type:MoveToBucket

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7612: The Ink conversation was not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (MoveToBucketInput)

Input for moving a conversation to a bucket.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

conversation (InkConversation!)

The conversation that was moved to the bucket.

Mutation

mutation MoveToBucket($input: MoveToBucketInput) {
  moveToBucket(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    conversation {
      ...InkConversationFragment
    }
  }
}

Variables

{
  "input": MoveToBucketInput
}

Response

{
  "data": {
    "moveToBucket": {
      "possibleErrors": [PossibleErrorType],
      "conversation": InkConversation
    }
  }
}

Arguments

NameDescription

teamGroupName (String!)

The name of the operations team group to select from.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

team (Team!)

The next operations team assigned in round-robin sequence.

location (TeamLocation!)

Location routing information for the selected team.

teamGroups ([TeamGroup]!)

All operations team groups that the selected team belongs to.

allInferredRoutingAttributes ([String]!)

All inferred routing attributes for team, location, and team groups (e.g., ['OPERATIONSGROUP.TEAM.TeamA', 'OPERATIONSGROUP.LOCATION.London', 'OPERATIONSGROUP.GROUP_B']). Recommended for IVR usage.

Mutation

mutation NextOperationsTeamRoundRobin($teamGroupName: String!) {
  nextOperationsTeamRoundRobin(teamGroupName: $teamGroupName) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    team {
      ...TeamFragment
    }
    location {
      ...TeamLocationFragment
    }
    teamGroups {
      ...TeamGroupFragment
    }
    allInferredRoutingAttributes
  }
}

Variables

{
  "teamGroupName": "abc123"
}

Response

{
  "data": {
    "nextOperationsTeamRoundRobin": {
      "possibleErrors": [PossibleErrorType],
      "team": Team,
      "location": TeamLocation,
      "teamGroups": TeamGroup,
      "allInferredRoutingAttributes": "abc123"
    }
  }
}

obtainKrakenToken

Type:ObtainKrakenJSONWebToken

URL:https://api.octopus.energy/v1/graphql/

Create a Kraken Token (JWT) for authentication.

Provide the required input fields to obtain the token.

The token should be used as the Authorization header for any authenticated requests.

The possible errors that can be raised are:

  • KT-CT-1135: Invalid data.
  • KT-CT-1134: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (ObtainJSONWebTokenInput!)

Input fields that can be used to obtain a Json Web Token (JWT) for authentication to the API.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (String!)

The Kraken Token. Can be used in the Authorization header for subsequent calls to the API to access protected resources.

payload (GenericScalar!)

The body payload of the Kraken Token. The same information can be obtained by using JWT decoding tools on the value of the token field.

refreshToken (String)

A token that can be used in a subsequent call to obtainKrakenToken to get a new Kraken Token with the same access conditions after the previous one has expired.

refreshExpiresIn (Int)

A Unix timestamp representing the point in time at which the refresh token will expire.

Mutation

mutation ObtainKrakenToken($input: ObtainJSONWebTokenInput!) {
  obtainKrakenToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token
    payload
    refreshToken
    refreshExpiresIn
  }
}

Variables

Response

{
  "data": {
    "obtainKrakenToken": {
      "possibleErrors": [PossibleErrorType],
      "token": "abc123",
      "payload": "abc123" | 1 | 1.0 | true | ["abc123"] | AccountType,
      "refreshToken": "abc123",
      "refreshExpiresIn": 1
    }
  }
}

obtainLongLivedRefreshToken

Type:ObtainLongLivedRefreshToken

URL:https://api.octopus.energy/v1/graphql/

For authorized third-party organizations only.

The possible errors that can be raised are:

  • KT-CT-1120: The Kraken Token has expired.
  • KT-CT-1121: Please use Kraken Token to issue long-lived refresh tokens.
  • KT-CT-1132: Unauthorized.
  • KT-CT-1122: Long-lived refresh tokens can only be issued for account users.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ObtainLongLivedRefreshTokenInput!)

Input fields for obtaining a long-lived refresh token to extend the expiry claim of a Kraken token.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

refreshToken (String)

refreshExpiresIn (Int!)

Mutation

mutation ObtainLongLivedRefreshToken($input: ObtainLongLivedRefreshTokenInput!) {
  obtainLongLivedRefreshToken(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    refreshToken
    refreshExpiresIn
  }
}

Variables

Response

{
  "data": {
    "obtainLongLivedRefreshToken": {
      "possibleErrors": [PossibleErrorType],
      "refreshToken": "abc123",
      "refreshExpiresIn": 1
    }
  }
}

occupy

Type:OccupyOutputType

URL:https://api.octopus.energy/v1/graphql/

Add details to an existing occupier account.

The possible errors that can be raised are:

  • KT-GB-6622: Account not found.
  • KT-GB-6623: Property not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (OccupyInput!)

Return fields

NameDescription

account (AccountInterface)

Mutation

mutation Occupy($input: OccupyInput!) {
  occupy(input: $input) {
    account {
      ...AccountInterfaceFragment
    }
  }
}

Variables

{
  "input": OccupyInput
}

Response

{
  "data": {
    "occupy": {
      "account": AccountInterface
    }
  }
}

ocppAuthentication

Type:OCPPAuthentication

URL:https://api.octopus.energy/v1/graphql/

Trigger OCPP authentication.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4310: Unable to register OCPP authentication details.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (OCPPAuthenticationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation OcppAuthentication($input: OCPPAuthenticationInput) {
  ocppAuthentication(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "ocppAuthentication": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

octoHeatPumpBulkUpdateSensorDisplayName

Type:BulkUpdateSensorDisplayName

URL:https://api.octopus.energy/v1/graphql/

Update the display name of multiple sensors.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'bulkUpdateSensorDisplayName' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

updates ([SensorDisplayNameUpdate]!)

A list of sensor codes and display names to set.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionIds ([SensorUpdateTransactionId])

A mapping of transaction ids for each sensor.

Mutation

mutation OctoHeatPumpBulkUpdateSensorDisplayName(
  $accountNumber: String!,
  $euid: ID!,
  $updates: [SensorDisplayNameUpdate]!
) {
  octoHeatPumpBulkUpdateSensorDisplayName(
    accountNumber: $accountNumber,
    euid: $euid,
    updates: $updates
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionIds {
      ...SensorUpdateTransactionIdFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "updates": SensorDisplayNameUpdate
}

Response

{
  "data": {
    "octoHeatPumpBulkUpdateSensorDisplayName": {
      "possibleErrors": [PossibleErrorType],
      "transactionIds": [SensorUpdateTransactionId]
    }
  }
}

octoHeatPumpBulkUpdateZoneDisplayNames

Type:BulkUpdateZoneDisplayNames

URL:https://api.octopus.energy/v1/graphql/

Update the display name of multiple zones of the heat pump.

The possible errors that can be raised are:

  • KT-CT-4384: Error trying to update heat pump zone names.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'octoHeatPumpBulkUpdateZoneDisplayNames' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

euid (ID!)

The EUID of the heat pump controller.

updates ([SetZoneDisplayNameParameters]!)

A list of zone codes mapped to each zone's new display name.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionIds ([ZoneDisplayNameUpdates]!)

The transaction ID for each zone based on the zone code.

Mutation

mutation OctoHeatPumpBulkUpdateZoneDisplayNames(
  $euid: ID!,
  $updates: [SetZoneDisplayNameParameters]!
) {
  octoHeatPumpBulkUpdateZoneDisplayNames(
    euid: $euid,
    updates: $updates
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionIds {
      ...ZoneDisplayNameUpdatesFragment
    }
  }
}

Variables

{
  "euid": "abc123",
  "updates": SetZoneDisplayNameParameters
}

Response

{
  "data": {
    "octoHeatPumpBulkUpdateZoneDisplayNames": {
      "possibleErrors": [PossibleErrorType],
      "transactionIds": ZoneDisplayNameUpdates
    }
  }
}

octoHeatPumpDeprovisionHeatingController

Type:DeprovisionHeatingController

URL:https://api.octopus.energy/v1/graphql/

De-provision a heating controller device.

The possible errors that can be raised are:

  • KT-CT-4307: Error deprovisioning an Octopus heat pump.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'deprovisionHeatingController' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

message (String)

The message to display to the user upon successful device de-provisioning.

Mutation

mutation OctoHeatPumpDeprovisionHeatingController(
  $accountNumber: String!,
  $euid: ID!
) {
  octoHeatPumpDeprovisionHeatingController(
    accountNumber: $accountNumber,
    euid: $euid
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    message
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123"
}

Response

{
  "data": {
    "octoHeatPumpDeprovisionHeatingController": {
      "possibleErrors": [PossibleErrorType],
      "message": "abc123"
    }
  }
}

octoHeatPumpRebootController

Type:RebootHeatingController

URL:https://api.octopus.energy/v1/graphql/

Reboot the given heating controller.

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'octoHeatPumpRebootController' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

The unique ID associated with this reboot operation.

Mutation

mutation OctoHeatPumpRebootController(
  $accountNumber: String!,
  $euid: ID!
) {
  octoHeatPumpRebootController(
    accountNumber: $accountNumber,
    euid: $euid
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123"
}

Response

{
  "data": {
    "octoHeatPumpRebootController": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpRemoveSensor

Type:RemoveSensor

URL:https://api.octopus.energy/v1/graphql/

Remove a sensor from a heating controller device.

The possible errors that can be raised are:

  • KT-CT-4309: Error trying to remove sensor from heat pump controller.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'removeSensor' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

sensorId (String!)

The sensor ID of heat pump controller's sensor to be removed.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with removing a sensor from a heat pump controller.

Mutation

mutation OctoHeatPumpRemoveSensor(
  $accountNumber: String!,
  $euid: ID!,
  $sensorId: String!
) {
  octoHeatPumpRemoveSensor(
    accountNumber: $accountNumber,
    euid: $euid,
    sensorId: $sensorId
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "sensorId": "abc123"
}

Response

{
  "data": {
    "octoHeatPumpRemoveSensor": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpRequestProvisioningClaimCertificate

Type:RequestProvisioningClaimCertificate

URL:https://api.octopus.energy/v1/graphql/

Request a certificate to provision a heating controller.

The possible errors that can be raised are:

  • KT-CT-4332: Invalid data.
  • KT-CT-4304: Error in preprovisioning step for Octopus Heat Pump.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'requestProvisioningClaimCertificate' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

propertyId (ID)

The primary key of a property you would like to associate with this controller.

requestParameters (ProvisioningClaimRequestParameters!)

Parameters requested by the app from the controller, required for Kraken Flex to authenticate the device.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

provisioningClaimBundle (ProvisioningClaimBundle)

The certificate and private key required to create a provisioning claim.

Mutation

mutation OctoHeatPumpRequestProvisioningClaimCertificate(
  $accountNumber: String!,
  $propertyId: ID,
  $requestParameters: ProvisioningClaimRequestParameters!
) {
  octoHeatPumpRequestProvisioningClaimCertificate(
    accountNumber: $accountNumber,
    propertyId: $propertyId,
    requestParameters: $requestParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    provisioningClaimBundle {
      ...ProvisioningClaimBundleFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123",
  "propertyId": "abc123",
  "requestParameters": ProvisioningClaimRequestParameters
}

Response

{
  "data": {
    "octoHeatPumpRequestProvisioningClaimCertificate": {
      "possibleErrors": [PossibleErrorType],
      "provisioningClaimBundle": ProvisioningClaimBundle
    }
  }
}

octoHeatPumpSetQuieterMode

Type:SetQuieterMode

URL:https://api.octopus.energy/v1/graphql/

Enable or disable quieter mode for the heat pump.

Deprecated

The 'octoHeatPumpSetQuieterMode' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

euid (ID!)

The EUID of the heat pump controller.

quieterModeEnabled (Boolean!)

Whether quieter mode should be enabled for this heat pump controller.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with this operation.

Mutation

mutation OctoHeatPumpSetQuieterMode(
  $euid: ID!,
  $quieterModeEnabled: Boolean!
) {
  octoHeatPumpSetQuieterMode(
    euid: $euid,
    quieterModeEnabled: $quieterModeEnabled
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "euid": "abc123",
  "quieterModeEnabled": true
}

Response

{
  "data": {
    "octoHeatPumpSetQuieterMode": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpSetZoneMode

Type:SetZoneMode

URL:https://api.octopus.energy/v1/graphql/

Turn a specific heating controller zone ON/OFF, set it to AUTO mode or give it a BOOST.

The possible errors that can be raised are:

  • KT-CT-4333: Invalid data.
  • KT-CT-4306: Error setting mode for heat pump controller zone.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'setZoneMode' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

operationParameters (SetZoneModeParameters!)

The parameters required to instruct a specific zone operation.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with a zone's mode operation.

Mutation

mutation OctoHeatPumpSetZoneMode(
  $accountNumber: String!,
  $euid: ID!,
  $operationParameters: SetZoneModeParameters!
) {
  octoHeatPumpSetZoneMode(
    accountNumber: $accountNumber,
    euid: $euid,
    operationParameters: $operationParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "operationParameters": SetZoneModeParameters
}

Response

{
  "data": {
    "octoHeatPumpSetZoneMode": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpSetZonePrimarySensor

Type:SetZonePrimarySensor

URL:https://api.octopus.energy/v1/graphql/

Set the primary sensor for a zone.

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'octoHeatPumpSetZonePrimarySensor' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

operationParameters (SetZonePrimarySensorParameters!)

The parameters required to set a new primary sensor for a zone.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

The unique ID associated with this operation.

Mutation

mutation OctoHeatPumpSetZonePrimarySensor(
  $accountNumber: String!,
  $euid: ID!,
  $operationParameters: SetZonePrimarySensorParameters!
) {
  octoHeatPumpSetZonePrimarySensor(
    accountNumber: $accountNumber,
    euid: $euid,
    operationParameters: $operationParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "operationParameters": SetZonePrimarySensorParameters
}

Response

{
  "data": {
    "octoHeatPumpSetZonePrimarySensor": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpSetZoneSchedules

Type:SetZoneSchedules

URL:https://api.octopus.energy/v1/graphql/

Add schedules for a heating controller zone.

The possible errors that can be raised are:

  • KT-CT-4334: Invalid data.
  • KT-CT-4308: Error setting schedule(s) for heat pump controller zone.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'setZoneSchedules' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

zoneScheduleParameters (SetZoneSchedulesParameters!)

The parameters required to add schedule(s) for a specific zone.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with adding schedule(s) for a zone.

Mutation

mutation OctoHeatPumpSetZoneSchedules(
  $accountNumber: String!,
  $euid: ID!,
  $zoneScheduleParameters: SetZoneSchedulesParameters!
) {
  octoHeatPumpSetZoneSchedules(
    accountNumber: $accountNumber,
    euid: $euid,
    zoneScheduleParameters: $zoneScheduleParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "zoneScheduleParameters": SetZoneSchedulesParameters
}

Response

{
  "data": {
    "octoHeatPumpSetZoneSchedules": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpUpdateFlowTemperatureConfiguration

Type:UpdateFlowTemperatureConfiguration

URL:https://api.octopus.energy/v1/graphql/

Update the flow temperature configuration for the heat pump.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'octoHeatPumpUpdateFlowTemperatureConfiguration' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

euid (ID!)

The EUID of the heat pump controller.

flowTemperatureInput (FlowTemperatureInput!)

Flow temperature configuration parameters.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with this operation.

Mutation

mutation OctoHeatPumpUpdateFlowTemperatureConfiguration(
  $euid: ID!,
  $flowTemperatureInput: FlowTemperatureInput!
) {
  octoHeatPumpUpdateFlowTemperatureConfiguration(
    euid: $euid,
    flowTemperatureInput: $flowTemperatureInput
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "euid": "abc123",
  "flowTemperatureInput": FlowTemperatureInput
}

Response

{
  "data": {
    "octoHeatPumpUpdateFlowTemperatureConfiguration": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpUpdateSensorDisplayName

Type:UpdateSensorDisplayName

URL:https://api.octopus.energy/v1/graphql/

Update the display name of a sensor.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'updateSensorDisplayName' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

displayName (String!)

The new display name.

euid (ID!)

The EUID of the heat pump controller.

sensorCode (String!)

The code of the sensor to rename (such as 'SENSOR01').

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with updating a sensor attribute.

Mutation

mutation OctoHeatPumpUpdateSensorDisplayName(
  $accountNumber: String!,
  $displayName: String!,
  $euid: ID!,
  $sensorCode: String!
) {
  octoHeatPumpUpdateSensorDisplayName(
    accountNumber: $accountNumber,
    displayName: $displayName,
    euid: $euid,
    sensorCode: $sensorCode
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "displayName": "abc123",
  "euid": "abc123",
  "sensorCode": "abc123"
}

Response

{
  "data": {
    "octoHeatPumpUpdateSensorDisplayName": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

octoHeatPumpUpdateWaterSetpoint

Type:UpdateWaterSetpoint

URL:https://api.octopus.energy/v1/graphql/

Set the temperature for the hot water.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'updateWaterSetpoint' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

setpoint (Int!)

The temperature to set the water to.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with this operation.

Mutation

mutation OctoHeatPumpUpdateWaterSetpoint(
  $accountNumber: String!,
  $euid: ID!,
  $setpoint: Int!
) {
  octoHeatPumpUpdateWaterSetpoint(
    accountNumber: $accountNumber,
    euid: $euid,
    setpoint: $setpoint
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "setpoint": 1
}

Response

{
  "data": {
    "octoHeatPumpUpdateWaterSetpoint": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

pauseCollectionProcess

Type:PauseCollectionProcess

URL:https://api.octopus.energy/v1/graphql/

Pause a collection process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11214: Invalid pause length for collection process.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PauseCollectionProcessInput!)

Details for pausing a collection process.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessPaused (PauseCollectionProcessOutput)

Collection process pause output.

Mutation

mutation PauseCollectionProcess($input: PauseCollectionProcessInput!) {
  pauseCollectionProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessPaused {
      ...PauseCollectionProcessOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "pauseCollectionProcess": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessPaused": PauseCollectionProcessOutput
    }
  }
}

pauseDunning

Type:PauseDunning

URL:https://api.octopus.energy/v1/graphql/

Pause the dunning process for an account.

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-11301: Account not in a dunning process for the given path name.
  • KT-CT-11302: No active dunning process found.
  • KT-CT-11303: Multiple active dunning processes found.
  • KT-CT-11304: Dunning pause process failed verifying the dates.
  • KT-CT-11305: Pausing the dunning process failed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PauseDunningInputType!)

Input variables needed for pausing a dunning process for an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pauseCreated (Boolean)

Whether the pause has been successfully created.

Mutation

mutation PauseDunning($input: PauseDunningInputType!) {
  pauseDunning(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pauseCreated
  }
}

Variables

Response

{
  "data": {
    "pauseDunning": {
      "possibleErrors": [PossibleErrorType],
      "pauseCreated": true
    }
  }
}

payoutReferralForAccount

Type:PayoutReferralForAccount

URL:https://api.octopus.energy/v1/graphql/

Pay out a referral reward for an account.

The possible errors that can be raised are:

  • KT-CT-6712: Invalid reference.
  • KT-CT-6723: Unauthorized.
  • KT-CT-6730: Referral cannot be paid out.
  • KT-CT-6731: The account is unrelated to the referral.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PayoutReferralForAccountInput!)

Input fields for paying out a referral for an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

payoutResult (PayoutReferralForAccountResultType)

The result of the payout.

Mutation

mutation PayoutReferralForAccount($input: PayoutReferralForAccountInput!) {
  payoutReferralForAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    payoutResult {
      ...PayoutReferralForAccountResultTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "payoutReferralForAccount": {
      "possibleErrors": [PossibleErrorType],
      "payoutResult": PayoutReferralForAccountResultType
    }
  }
}

performMoveOut

Type:PerformMoveOut

URL:https://api.octopus.energy/v1/graphql/

Perform a move out of a property for an account.

Optionally provide details of the new tenant and a property to perform a move in to.

The possible errors that can be raised are:

  • KT-GB-6624: An error occurred when trying to process this house move.
  • KT-GB-6625: An error occurred when trying to process this house move.
  • KT-GB-6626: There was an error processing the PSR data.
  • KT-GB-6627: There are missing agent appointments.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (MoveOutInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountInterface)

Account to perform move out.

newAccount (AccountInterface)

The new account created as part of the move out process.

Mutation

mutation PerformMoveOut($input: MoveOutInput!) {
  performMoveOut(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountInterfaceFragment
    }
    newAccount {
      ...AccountInterfaceFragment
    }
  }
}

Variables

{
  "input": MoveOutInput
}

Response

{
  "data": {
    "performMoveOut": {
      "possibleErrors": [PossibleErrorType],
      "account": AccountInterface,
      "newAccount": AccountInterface
    }
  }
}

postCredit

Type:PostCredit

URL:https://api.octopus.energy/v1/graphql/

Post credit to a ledger.

The possible errors that can be raised are:

  • KT-CT-5316: Invalid data.
  • KT-CT-5311: The credit reason with the requested code is deprecated.
  • KT-CT-5312: The credit reason with the requested code does not exist.
  • KT-CT-5313: An error occurred whilst posting the credit.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PostCreditInput!)

Input fields for posting a credit.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

credit (Credit)

Posted account credit.

Mutation

mutation PostCredit($input: PostCreditInput!) {
  postCredit(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    credit {
      ...CreditFragment
    }
  }
}

Variables

{
  "input": PostCreditInput
}

Response

{
  "data": {
    "postCredit": {
      "possibleErrors": [PossibleErrorType],
      "credit": Credit
    }
  }
}

postEvPublicChargingAccountCharge

Type:PostEVPublicChargingAccountCharge

URL:https://api.octopus.energy/v1/graphql/

Post an account charge for an EV public charging account.

The possible errors that can be raised are:

  • KT-CT-5813: Invalid data.
  • KT-CT-5815: Invalid data.
  • KT-CT-5817: External Account not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PostEVPublicChargingAccountChargeInput!)

Input fields for initiating a standalone payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountCharge (AccountChargeType)

Account Charge reference.

Mutation

mutation PostEvPublicChargingAccountCharge($input: PostEVPublicChargingAccountChargeInput!) {
  postEvPublicChargingAccountCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountCharge {
      ...AccountChargeTypeFragment
    }
  }
}

Response

{
  "data": {
    "postEvPublicChargingAccountCharge": {
      "possibleErrors": [PossibleErrorType],
      "accountCharge": AccountChargeType
    }
  }
}

postEvPublicChargingCharge

Type:PostEVPublicChargingCharge

URL:https://api.octopus.energy/v1/graphql/

Post a charge for an EV public charging session.

The possible errors that can be raised are:

  • KT-CT-5813: Invalid data.
  • KT-CT-5814: Invalid data.
  • KT-CT-5815: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PostEVPublicChargingChargeInput!)

Input fields for initiating a standalone payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountCharge (AccountChargeType)

Charging session charge reference.

Mutation

mutation PostEvPublicChargingCharge($input: PostEVPublicChargingChargeInput!) {
  postEvPublicChargingCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountCharge {
      ...AccountChargeTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "postEvPublicChargingCharge": {
      "possibleErrors": [PossibleErrorType],
      "accountCharge": AccountChargeType
    }
  }
}

postEvPublicChargingCredit

Type:PostEVPublicChargingCredit

URL:https://api.octopus.energy/v1/graphql/

Post an EV Public Charging credit.

The possible errors that can be raised are:

  • KT-CT-5815: Invalid data.
  • KT-CT-5816: Invalid data.
  • KT-CT-5817: External Account not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PostEVPublicChargingCreditInput!)

Input fields for creating a credit.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

credit (Credit)

Posts an EV Public charging credit.

Mutation

mutation PostEvPublicChargingCredit($input: PostEVPublicChargingCreditInput!) {
  postEvPublicChargingCredit(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    credit {
      ...CreditFragment
    }
  }
}

Variables

Response

{
  "data": {
    "postEvPublicChargingCredit": {
      "possibleErrors": [PossibleErrorType],
      "credit": Credit
    }
  }
}

prepareAccount

Type:PrepareAccountResult!

URL:https://api.octopus.energy/v1/graphql/

Prepare account for sign up. Returns the existing account and/or user if matching datafound for the provided input, otherwise creates a new account and account user.

The possible errors that can be raised are:

  • KT-CT-10303: Mutation not enabled in this environment.
  • KT-CT-10316: Input data has invalid format.
  • KT-CT-10317: An error occured when trying to prepare the account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PrepareAccountInput!)

Return fields

NameDescription

Mutation

mutation PrepareAccount($input: PrepareAccountInput!) {
  prepareAccount(input: $input) {
    isNewAccount
    accountNumber
    isNewUser
    userId
    userNumber
  }
}

Variables

{
  "input": PrepareAccountInput
}

Response

{
  "data": {
    "prepareAccount": {
      "isNewAccount": true,
      "accountNumber": "abc123",
      "isNewUser": true,
      "userId": "abc123",
      "userNumber": "abc123"
    }
  }
}

prerecordConsentGranularity

Type:PrerecordConsentGranularity

URL:https://api.octopus.energy/v1/graphql/

Mutation to prerecord reading consent granularity for a meter point.This will not work for MHHS enabled meter points and the setReadingConsentGranularity mutationshould be used instead.

The possible errors that can be raised are:

  • KT-GB-4501: Meter point not applicable for pre-recording consent.
  • KT-GB-4502: Unable to determine acceptable granularities. Please try again shortly.
  • KT-GB-4503: Provided granularity is not valid for this meter point.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReadingConsentGranularityInput!)

Input fields for setting the reading consent granularity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

mpan (String)

MPAN for which the mutation was called.

Mutation

mutation PrerecordConsentGranularity($input: ReadingConsentGranularityInput!) {
  prerecordConsentGranularity(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    mpan
  }
}

Variables

Response

{
  "data": {
    "prerecordConsentGranularity": {
      "possibleErrors": [PossibleErrorType],
      "mpan": "abc123"
    }
  }
}

publishApprovalApprovedEvent

Type:PublishApprovalApprovedEvent

URL:https://api.octopus.energy/v1/graphql/

Publish an approval approved external event.

The possible errors that can be raised are:

  • KT-CT-14501: Invalid event parameters.
  • KT-CT-14502: Invalid input.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PublishApprovalApprovedEventInput!)

Input fields for publishing an approval approved event.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

eventId (ID)

The ID of the created approval approved event.

Mutation

mutation PublishApprovalApprovedEvent($input: PublishApprovalApprovedEventInput!) {
  publishApprovalApprovedEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    eventId
  }
}

Variables

Response

{
  "data": {
    "publishApprovalApprovedEvent": {
      "possibleErrors": [PossibleErrorType],
      "eventId": "abc123"
    }
  }
}

publishTransactionalMessagingExternalTrigger

Type:PublishTransactionalMessagingExternalTrigger

URL:https://api.octopus.energy/v1/graphql/

Publish an externally defined transactional messaging trigger.

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-5421: Account user not found.
  • KT-CT-9901: Invalid trigger type code.
  • KT-CT-9905: Top-level context fields are missing.
  • KT-CT-9906: Template variables do not match the defined schema.
  • KT-CT-9908: Invalid recipient information.
  • KT-CT-9909: Invalid recipient information.
  • KT-CT-9910: Invalid input field combination.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PublishTransactionalMessagingExternalTriggerInput!)

Input fields to publish an external transactional messaging trigger.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

trigger (Trigger)

The trigger that has been published.

Mutation

mutation PublishTransactionalMessagingExternalTrigger($input: PublishTransactionalMessagingExternalTriggerInput!) {
  publishTransactionalMessagingExternalTrigger(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    trigger {
      ...TriggerFragment
    }
  }
}

Response

{
  "data": {
    "publishTransactionalMessagingExternalTrigger": {
      "possibleErrors": [PossibleErrorType],
      "trigger": Trigger
    }
  }
}

publishTransactionalMessagingTrigger

Type:PublishTransactionalMessagingTrigger

URL:https://api.octopus.energy/v1/graphql/

Publish a trigger within the transactional messaging service.

The possible errors that can be raised are:

  • KT-CT-9901: Invalid trigger type code.
  • KT-CT-9902: Invalid trigger type params.
  • KT-CT-9903: Trigger type cannot be published externally.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (PublishTransactionalMessagingTriggerInput!)

Input fields to publish a transactional messaging trigger.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

trigger (Trigger)

The trigger that has been published.

Mutation

mutation PublishTransactionalMessagingTrigger($input: PublishTransactionalMessagingTriggerInput!) {
  publishTransactionalMessagingTrigger(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    trigger {
      ...TriggerFragment
    }
  }
}

Response

{
  "data": {
    "publishTransactionalMessagingTrigger": {
      "possibleErrors": [PossibleErrorType],
      "trigger": Trigger
    }
  }
}

Arguments

NameDescription

input (PurchaseVoucherInput!)

Return fields

NameDescription

voucherPurchase (VoucherPurchaseType)

The voucher purchase created from the mutation.

Mutation

mutation PurchaseVoucher($input: PurchaseVoucherInput!) {
  purchaseVoucher(input: $input) {
    voucherPurchase {
      ...VoucherPurchaseTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "purchaseVoucher": {
      "voucherPurchase": VoucherPurchaseType
    }
  }
}

quoteAccountOnProducts

Type:QuoteAccountOnProducts

URL:https://api.octopus.energy/v1/graphql/

Create a quote for an existing account for the specified meterpoints on the passed in products.

The possible errors that can be raised are:

  • KT-CT-4616: Unable to create a quote.
  • KT-GB-4614: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (QuoteAccountOnProductsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (QuoteRequest)

The generated quote.

Mutation

mutation QuoteAccountOnProducts($input: QuoteAccountOnProductsInput!) {
  quoteAccountOnProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...QuoteRequestFragment
    }
  }
}

Variables

Response

{
  "data": {
    "quoteAccountOnProducts": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": QuoteRequest
    }
  }
}

Arguments

NameDescription

input (QuoteCampaignOfferInput)

Return fields

NameDescription

quoteCode (String)

Mutation

mutation QuoteCampaignOffer($input: QuoteCampaignOfferInput) {
  quoteCampaignOffer(input: $input) {
    quoteCode
  }
}

Variables

Response

{
  "data": {
    "quoteCampaignOffer": {
      "quoteCode": "abc123"
    }
  }
}

quoteNewMeterPoints

Type:QuoteNewMeterPoints

URL:https://api.octopus.energy/v1/graphql/

Create a quote for new meter points for products with passed in tag.

Arguments

NameDescription

input (QuoteNewMeterPointsInput!)

Return fields

NameDescription

quoteRequest (QuoteRequest)

The generated quote.

Mutation

mutation QuoteNewMeterPoints($input: QuoteNewMeterPointsInput!) {
  quoteNewMeterPoints(input: $input) {
    quoteRequest {
      ...QuoteRequestFragment
    }
  }
}

Variables

Response

{
  "data": {
    "quoteNewMeterPoints": {
      "quoteRequest": QuoteRequest
    }
  }
}

quoteNewMeterPointsOnBespokeProducts

Type:QuoteNewMeterPointsOnBespokeProducts

URL:https://api.octopus.energy/v1/graphql/

Create a quote for new meter points on passed in products with bespoke rates. This is an acquisition quote mutation only to be used by authenticated third party organisations for bespoke quoting.

The possible errors that can be raised are:

  • KT-CT-4616: Unable to create a quote.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (QuoteNewMeterPointsOnBespokeProductsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (QuoteRequest)

The generated quote.

Mutation

mutation QuoteNewMeterPointsOnBespokeProducts($input: QuoteNewMeterPointsOnBespokeProductsInput!) {
  quoteNewMeterPointsOnBespokeProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...QuoteRequestFragment
    }
  }
}

Response

{
  "data": {
    "quoteNewMeterPointsOnBespokeProducts": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": QuoteRequest
    }
  }
}

reactivateCollectionProcessRecord

Type:ReactivateCollectionProcessRecord

URL:https://api.octopus.energy/v1/graphql/

Reactivate a Collection Process Record that was previously activated.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11217: Invalid collection process record status for reactivation.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReactivateCollectionProcessRecordInputType!)

Input variables needed for reactivating a collection process record.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessReactivated (ReactivateCollectionProcessRecordOutputType)

The reactivated collection process record.

Mutation

mutation ReactivateCollectionProcessRecord($input: ReactivateCollectionProcessRecordInputType!) {
  reactivateCollectionProcessRecord(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessReactivated {
      ...ReactivateCollectionProcessRecordOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "reactivateCollectionProcessRecord": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessReactivated": ReactivateCollectionProcessRecordOutputType
    }
  }
}

readDeviceLog

Type:ReadDeviceLog

URL:https://api.octopus.energy/v1/graphql/

Send a Read Device Log (SRV 8.9) request for a specified device.

Arguments

NameDescription

input (ReadDeviceLogInput!)

Input fields for sending a Read Device Log request.

Return fields

NameDescription

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation ReadDeviceLog($input: ReadDeviceLogInput!) {
  readDeviceLog(input: $input) {
    requestReference
  }
}

Variables

{
  "input": ReadDeviceLogInput
}

Response

{
  "data": {
    "readDeviceLog": {
      "requestReference": "abc123"
    }
  }
}

readInventory

Type:ReadInventory

URL:https://api.octopus.energy/v1/graphql/

Triggers a Read Inventory request to be sent through the DCC adapter for either a given device EUI64 or MPxN.

The possible errors that can be raised are:

  • KT-GB-4021: Invalid MPxN.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReadInventoryInput!)

Input field for a read inventory via device EUI64 or MPAN/MPRN.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation ReadInventory($input: ReadInventoryInput!) {
  readInventory(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

{
  "input": ReadInventoryInput
}

Response

{
  "data": {
    "readInventory": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

recordDepositAgreementAccepted

Type:RecordDepositAgreementAccepted

URL:https://api.octopus.energy/v1/graphql/

Record the customer's acceptance of a deposit agreement.

The possible errors that can be raised are:

  • KT-CT-4177: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DepositAgreementInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

isRecorded (Boolean)

Mutation

mutation RecordDepositAgreementAccepted($input: DepositAgreementInput!) {
  recordDepositAgreementAccepted(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    isRecorded
  }
}

Variables

Response

{
  "data": {
    "recordDepositAgreementAccepted": {
      "possibleErrors": [PossibleErrorType],
      "isRecorded": true
    }
  }
}

recordFailedPayment

Type:RecordFailedPayment

URL:https://api.octopus.energy/v1/graphql/

Record one or more failed payments.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1609: The provided datetime ISO string is not timezone aware, please provide timezone information.
  • KT-CT-3985: Received both token and options for action intent.
  • KT-CT-3986: Received neither token nor options for action intent.
  • KT-CT-3987: Invalid payment method type code.
  • KT-CT-3988: Number of items in list exceeds maximum value.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RecordFailedPaymentInput!)

Details about the failed payments.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

noticeBatchIdentifier (String!)

The unique identifier of the notice batch created from the input.

Mutation

mutation RecordFailedPayment($input: RecordFailedPaymentInput!) {
  recordFailedPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    noticeBatchIdentifier
  }
}

Variables

Response

{
  "data": {
    "recordFailedPayment": {
      "possibleErrors": [PossibleErrorType],
      "noticeBatchIdentifier": "abc123"
    }
  }
}

recordPendingPayment

Type:RecordPendingPayment

URL:https://api.octopus.energy/v1/graphql/

Record one or more pending payments.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1609: The provided datetime ISO string is not timezone aware, please provide timezone information.
  • KT-CT-3985: Received both token and options for action intent.
  • KT-CT-3986: Received neither token nor options for action intent.
  • KT-CT-3987: Invalid payment method type code.
  • KT-CT-3988: Number of items in list exceeds maximum value.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RecordPendingPaymentInput!)

Details about the pending payments.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

noticeBatchIdentifier (String!)

The unique identifier of the notice batch created from the input.

Mutation

mutation RecordPendingPayment($input: RecordPendingPaymentInput!) {
  recordPendingPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    noticeBatchIdentifier
  }
}

Variables

Response

{
  "data": {
    "recordPendingPayment": {
      "possibleErrors": [PossibleErrorType],
      "noticeBatchIdentifier": "abc123"
    }
  }
}

recordSuccessfulPayment

Type:RecordSuccessfulPayment

URL:https://api.octopus.energy/v1/graphql/

Record one or more successful payments.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-1609: The provided datetime ISO string is not timezone aware, please provide timezone information.
  • KT-CT-3985: Received both token and options for action intent.
  • KT-CT-3986: Received neither token nor options for action intent.
  • KT-CT-3987: Invalid payment method type code.
  • KT-CT-3988: Number of items in list exceeds maximum value.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RecordSuccessfulPaymentInput!)

Details about the successful payments.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

noticeBatchIdentifier (String!)

The unique identifier of the notice batch created from the input.

Mutation

mutation RecordSuccessfulPayment($input: RecordSuccessfulPaymentInput!) {
  recordSuccessfulPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    noticeBatchIdentifier
  }
}

Variables

Response

{
  "data": {
    "recordSuccessfulPayment": {
      "possibleErrors": [PossibleErrorType],
      "noticeBatchIdentifier": "abc123"
    }
  }
}

redeemLoyaltyPointsForAccountCredit

Type:RedeemLoyaltyPointsForAccountCredit

URL:https://api.octopus.energy/v1/graphql/

Redeem the passed number of Loyalty Points as account credit.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9201: No Loyalty Point ledger found for the user.
  • KT-CT-9202: Loyalty Points adapter not configured.
  • KT-CT-9203: No ledger entries for the ledger.
  • KT-CT-9205: Insufficient Loyalty Points.
  • KT-CT-9206: Indivisible points.
  • KT-CT-9204: Negative or zero points set.
  • KT-CT-9208: Invalid posted at datetime.
  • KT-CT-9209: Negative Loyalty Points balance.
  • KT-CT-9210: Unhandled Loyalty Points exception.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RedeemLoyaltyPointsInput!)

Input fields for redeeming Loyalty Points.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pointsRedeemed (Int)

The number of loyalty points that were redeemed.

Mutation

mutation RedeemLoyaltyPointsForAccountCredit($input: RedeemLoyaltyPointsInput!) {
  redeemLoyaltyPointsForAccountCredit(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pointsRedeemed
  }
}

Variables

Response

{
  "data": {
    "redeemLoyaltyPointsForAccountCredit": {
      "possibleErrors": [PossibleErrorType],
      "pointsRedeemed": 1
    }
  }
}

redeemReferralClaimCode

Type:RedeemReferralClaimCode

URL:https://api.octopus.energy/v1/graphql/

Redeem the referral claim code from certain referral scheme.

The possible errors that can be raised are:

  • KT-CT-6723: Unauthorized.
  • KT-CT-6724: Referral claim code not found.
  • KT-CT-6725: Referral claim code redeeming error.
  • KT-CT-6726: Referral claim code has already been redeemed.
  • KT-CT-6727: Referral claim code is not available.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (RedeemReferralClaimCodeInput!)

Input fields for redeeming referral code.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether or not the request was successful.

Mutation

mutation RedeemReferralClaimCode($input: RedeemReferralClaimCodeInput!) {
  redeemReferralClaimCode(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

Response

{
  "data": {
    "redeemReferralClaimCode": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

refreshQuote

Type:RefreshQuote

URL:https://api.octopus.energy/v1/graphql/

Refresh quote with updated products for a quote code.

The possible errors that can be raised are:

  • KT-GB-4612: Unable to refresh quote - quote not found.
  • KT-GB-4613: Error generating quote.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (RefreshQuoteInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quote (QuoteType)

Mutation

mutation RefreshQuote($input: RefreshQuoteInput!) {
  refreshQuote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quote {
      ...QuoteTypeFragment
    }
  }
}

Variables

{
  "input": RefreshQuoteInput
}

Response

{
  "data": {
    "refreshQuote": {
      "possibleErrors": [PossibleErrorType],
      "quote": QuoteType
    }
  }
}

refreshQuoteV2

Type:RefreshQuoteV2

URL:https://api.octopus.energy/v1/graphql/

Refresh an existing quote with the currently available products.

The possible errors that can be raised are:

  • KT-GB-4618: Quote request not found.
  • KT-CT-12901: Account not found.
  • KT-CT-12004: Invalid product tag type.
  • KT-GB-4627: Input to the refresh quote mutation is invalid.
  • KT-GB-4628: No available products found for this quote input.
  • KT-GB-4629: Failed to refresh quote.
  • KT-CT-4616: Unable to create a quote.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RefreshQuoteV2Input!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

quoteRequest (QuoteRequest)

The generated quote.

Mutation

mutation RefreshQuoteV2($input: RefreshQuoteV2Input!) {
  refreshQuoteV2(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    quoteRequest {
      ...QuoteRequestFragment
    }
  }
}

Variables

{
  "input": RefreshQuoteV2Input
}

Response

{
  "data": {
    "refreshQuoteV2": {
      "possibleErrors": [PossibleErrorType],
      "quoteRequest": QuoteRequest
    }
  }
}

refundPayment

Type:RefundPayment

URL:https://api.octopus.energy/v1/graphql/

Refund a cleared payment.

The possible errors that can be raised are:

  • KT-CT-3924: Unauthorized.
  • KT-CT-3928: Idempotency key used for another repayment request.
  • KT-CT-3929: The payment is not in a refundable state.
  • KT-CT-3933: Refund amount greater than payment amount.
  • KT-CT-3937: Payment not eligible for refund.
  • KT-CT-3938: Partial refund not allowed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RefundPaymentInput!)

Input fields for refunding a payment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repayment (AccountRepaymentType)

The repayment for the requested refund.

Mutation

mutation RefundPayment($input: RefundPaymentInput!) {
  refundPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repayment {
      ...AccountRepaymentTypeFragment
    }
  }
}

Variables

{
  "input": RefundPaymentInput
}

Response

{
  "data": {
    "refundPayment": {
      "possibleErrors": [PossibleErrorType],
      "repayment": AccountRepaymentType
    }
  }
}

regenerateSecretKey

Type:RegenerateSecretKey

URL:https://api.octopus.energy/v1/graphql/

Regenerate the live secret key for the authenticated user.

Return fields

NameDescription

key (String!)

The generated key value, which is only ever available once (here).

viewer (AccountUserType)

The currently authenticated user.

Mutation

mutation RegenerateSecretKey {
  regenerateSecretKey {
    key
    viewer {
      ...AccountUserTypeFragment
    }
  }
}

Response

{
  "data": {
    "regenerateSecretKey": {
      "key": "abc123",
      "viewer": AccountUserType
    }
  }
}

registerCustomerAsset

Type:RegisterCustomerAsset

URL:https://api.octopus.energy/v1/graphql/

Register a new customer asset for an account

The possible errors that can be raised are:

  • KT-CT-1128: Unauthorized.
  • KT-CT-14602: Customer asset already exists.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RegisterCustomerAssetInput!)

Input fields for registering a device.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

customerAsset (CustomerAssetType)

The registered customer asset.

Mutation

mutation RegisterCustomerAsset($input: RegisterCustomerAssetInput!) {
  registerCustomerAsset(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    customerAsset {
      ...CustomerAssetTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "registerCustomerAsset": {
      "possibleErrors": [PossibleErrorType],
      "customerAsset": CustomerAssetType
    }
  }
}

registerLeadFlowStatusEvent

Type:RegisterLeadFlowStatusEvent

URL:https://api.octopus.energy/v1/graphql/

Register a flow status event for a lead.

The possible errors that can be raised are:

  • KT-CT-8907: Lead not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RegisterLeadFlowStatusEventInput!)

Input fields for registering a flow status event for a Lead.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation RegisterLeadFlowStatusEvent($input: RegisterLeadFlowStatusEventInput!) {
  registerLeadFlowStatusEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "registerLeadFlowStatusEvent": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

registerOpportunityFlowStatusEvent

Type:RegisterOpportunityFlowStatusEvent

URL:https://api.octopus.energy/v1/graphql/

Register a flow status event for an opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RegisterOpportunityFlowStatusEventInput!)

Input fields for registering a flow status event for a opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation RegisterOpportunityFlowStatusEvent($input: RegisterOpportunityFlowStatusEventInput!) {
  registerOpportunityFlowStatusEvent(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Response

{
  "data": {
    "registerOpportunityFlowStatusEvent": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

registerPushNotificationBinding

Type:RegisterPushNotificationBinding

URL:https://api.octopus.energy/v1/graphql/

Register a device token to be used for push notifications for an app.

This field requires the Authorization header to be set.

Arguments

NameDescription

input (RegisterPushNotificationBindingInput!)

Input fields for creating an push notification binding.

Return fields

NameDescription

pushNotificationBinding (PushNotificationBindingType)

Mutation

mutation RegisterPushNotificationBinding($input: RegisterPushNotificationBindingInput!) {
  registerPushNotificationBinding(input: $input) {
    pushNotificationBinding {
      ...PushNotificationBindingTypeFragment
    }
  }
}

Response

{
  "data": {
    "registerPushNotificationBinding": {
      "pushNotificationBinding": PushNotificationBindingType
    }
  }
}

registerSmartDevice

Type:RegisterSmartDevice

URL:https://api.octopus.energy/v1/graphql/

Notify Kraken to run the relevant prenotifications for a new device.

Arguments

NameDescription

input (RegisterSmartDeviceInput!)

Specifies device metadata to use for prenotifications.

Return fields

NameDescription

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation RegisterSmartDevice($input: RegisterSmartDeviceInput!) {
  registerSmartDevice(input: $input) {
    requestReference
  }
}

Variables

Response

{
  "data": {
    "registerSmartDevice": {
      "requestReference": "abc123"
    }
  }
}

removeCampaignFromAccount

Type:RemoveCampaignFromAccount

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7424: Failed to remove campaign from account.
  • KT-CT-7426: The account is not part of the given campaign.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RemoveCampaignFromAccountInput!)

Input variables needed for removing a campaign from an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

campaignRemoved (Boolean)

Whether the campaign was successfully removed from the account.

Mutation

mutation RemoveCampaignFromAccount($input: RemoveCampaignFromAccountInput!) {
  removeCampaignFromAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    campaignRemoved
  }
}

Variables

Response

{
  "data": {
    "removeCampaignFromAccount": {
      "possibleErrors": [PossibleErrorType],
      "campaignRemoved": true
    }
  }
}

removeCampaignItems

Type:RemoveCampaignItems

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-11501: Voice campaign not found.
  • KT-CT-11502: Cannot remove items from multiple campaigns at once.
  • KT-CT-11505: Voice campaign item not found.
  • KT-CT-11506: Invalid campaign ID.
  • KT-CT-11507: Invalid campaign item ID.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RemoveCampaignItemsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

campaignItems ([VoiceCampaignItemType])

Mutation

mutation RemoveCampaignItems($input: RemoveCampaignItemsInput!) {
  removeCampaignItems(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    campaignItems {
      ...VoiceCampaignItemTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "removeCampaignItems": {
      "possibleErrors": [PossibleErrorType],
      "campaignItems": [VoiceCampaignItemType]
    }
  }
}

removeConsumerDevice

Type:RemoveConsumerDevice

URL:https://api.octopus.energy/v1/graphql/

Triggers the orchestration to remove the CAD device to the ESME, GSME, GPF and CHF.

The possible errors that can be raised are:

  • KT-GB-4012: Unable to find the CAD device.
  • KT-GB-4032: Error sending the request to remove the device.
  • KT-GB-4013: Received invalid device type to remove other than CAD.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RemoveConsumerDeviceInput!)

Input fields for remove device.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference of the remove consumer device request in Kraken.

Mutation

mutation RemoveConsumerDevice($input: RemoveConsumerDeviceInput!) {
  removeConsumerDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "removeConsumerDevice": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

removeItemsFromRiskList

Type:RemoveItemsFromRiskList

URL:https://api.octopus.energy/v1/graphql/

Remove items from the risk list.

The possible errors that can be raised are:

  • KT-CT-12106: Risk list item removal failed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input ([RiskListItemInputType]!)

A list of risk list items to remove.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

riskIdentifiers ([RiskListItemType])

List of successfully removed risk identifiers.

Mutation

mutation RemoveItemsFromRiskList($input: [RiskListItemInputType]!) {
  removeItemsFromRiskList(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    riskIdentifiers {
      ...RiskListItemTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "removeItemsFromRiskList": {
      "possibleErrors": [PossibleErrorType],
      "riskIdentifiers": [RiskListItemType]
    }
  }
}

removePropertyFromHierarchy

Type:RemovePropertyFromHierarchy

URL:https://api.octopus.energy/v1/graphql/

Remove a property from a hierarchy.

This operation is idempotent - if the property is not in the hierarchy, it will succeed without error. When a property is removed, its descendants are reparented to the removed property's parent. If removing a root node, its children become new root nodes.

The possible errors that can be raised are:

  • KT-CT-6622: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RemovePropertyFromHierarchyInput!)

Input fields for removing a property from a hierarchy.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

property (PropertyType)

The property that was removed from the hierarchy.

Mutation

mutation RemovePropertyFromHierarchy($input: RemovePropertyFromHierarchyInput!) {
  removePropertyFromHierarchy(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    property {
      ...PropertyTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "removePropertyFromHierarchy": {
      "possibleErrors": [PossibleErrorType],
      "property": PropertyType
    }
  }
}

removeSensor

Type:RemoveSensor

URL:https://api.octopus.energy/v1/graphql/

Remove a sensor from a heating controller device.

The possible errors that can be raised are:

  • KT-CT-4309: Error trying to remove sensor from heat pump controller.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'removeSensor' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

sensorId (String!)

The sensor ID of heat pump controller's sensor to be removed.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with removing a sensor from a heat pump controller.

Mutation

mutation RemoveSensor(
  $accountNumber: String!,
  $euid: ID!,
  $sensorId: String!
) {
  removeSensor(
    accountNumber: $accountNumber,
    euid: $euid,
    sensorId: $sensorId
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "sensorId": "abc123"
}

Response

{
  "data": {
    "removeSensor": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

renewAgreementForMeterPoint

Type:RenewAgreementForMeterPoint

URL:https://api.octopus.energy/v1/graphql/

Renew agreement for a meter point.

The possible errors that can be raised are:

  • KT-GB-4112: Unable to renew agreements for meter point at this time. Please try again later.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RenewAgreementForMeterPointInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

electricityAgreement (RestrictedElectricityAgreement)

gasAgreement (RestrictedGasAgreement)

Mutation

mutation RenewAgreementForMeterPoint($input: RenewAgreementForMeterPointInput!) {
  renewAgreementForMeterPoint(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    electricityAgreement {
      ...RestrictedElectricityAgreementFragment
    }
    gasAgreement {
      ...RestrictedGasAgreementFragment
    }
  }
}

Variables

Response

{
  "data": {
    "renewAgreementForMeterPoint": {
      "possibleErrors": [PossibleErrorType],
      "electricityAgreement": RestrictedElectricityAgreement,
      "gasAgreement": RestrictedGasAgreement
    }
  }
}

renewAgreements

Type:RenewAgreements

URL:https://api.octopus.energy/v1/graphql/

Renew agreements for an account.

The possible errors that can be raised are:

  • KT-GB-4125: Invalid data.
  • KT-GB-4111: Unable to renew agreements for tariff renewal.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (RenewAgreementsInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

Mutation

mutation RenewAgreements($input: RenewAgreementsInput) {
  renewAgreements(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

renewAgreementsForAccount

Type:RenewAgreementsForAccount

URL:https://api.octopus.energy/v1/graphql/

Renew a list of agreements for an account.

The possible errors that can be raised are:

  • KT-GB-4113: At least one list of agreements to renew is required.
  • KT-GB-4126: Electricity and gas agreement input is invalid.
  • KT-GB-4114: Unable to renew agreements.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RenewAgreementsForAccountInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

Mutation

mutation RenewAgreementsForAccount($input: RenewAgreementsForAccountInput) {
  renewAgreementsForAccount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

replaceAgreement

Type:ReplaceAgreement

URL:https://api.octopus.energy/v1/graphql/

Replace an agreement for an account with a new product.

Arguments

NameDescription

input (ReplaceAgreementInput)

Return fields

NameDescription

account (AccountInterface)

Mutation

mutation ReplaceAgreement($input: ReplaceAgreementInput) {
  replaceAgreement(input: $input) {
    account {
      ...AccountInterfaceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "replaceAgreement": {
      "account": AccountInterface
    }
  }
}

replaceCommsHub

Type:ReplaceCommsHub

URL:https://api.octopus.energy/v1/graphql/

Replace an existing Communications Hub with a new one and move existing devices to the new Hub.

Arguments

NameDescription

input (ReplaceCommsHubInput!)

Input fields for replacing a Communications Hub.

Return fields

NameDescription

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation ReplaceCommsHub($input: ReplaceCommsHubInput!) {
  replaceCommsHub(input: $input) {
    requestReference
  }
}

Variables

Response

{
  "data": {
    "replaceCommsHub": {
      "requestReference": "abc123"
    }
  }
}

reportRemovedMeterDetails

Type:ReportRemovedMeterDetails

URL:https://api.octopus.energy/v1/graphql/

Report details, readings and balances of meters removed during install.

The possible errors that can be raised are:

  • KT-GB-4213: Application not found.
  • KT-GB-4231: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReportRemovedMeterDetailsInput!)

Input fields for removed meter details.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

result (ReportRemovedMeterDetailsOutput)

Mutation

mutation ReportRemovedMeterDetails($input: ReportRemovedMeterDetailsInput!) {
  reportRemovedMeterDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    result {
      ...ReportRemovedMeterDetailsOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "reportRemovedMeterDetails": {
      "possibleErrors": [PossibleErrorType],
      "result": ReportRemovedMeterDetailsOutput
    }
  }
}

requestConsumptionData

Type:RequestConsumptionData

URL:https://api.octopus.energy/v1/graphql/

Request an ad hoc read of the meters consumption data, which will arrive asynchronously

The possible errors that can be raised are:

  • KT-GB-4033: No electricity device found matching device ID.
  • KT-GB-4034: Error requesting consumption data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RequestConsumptionDataInput!)

Input fields for requesting consumption data.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation RequestConsumptionData($input: RequestConsumptionDataInput!) {
  requestConsumptionData(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "requestConsumptionData": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

requestDoubleOptIn

Type:RequestDoubleOptIn

URL:https://api.octopus.energy/v1/graphql/

Request a double opt in

The possible errors that can be raised are:

  • KT-CT-9019: Invalid input.
  • KT-CT-9018: Account not found.
  • KT-CT-1111: Unauthorized.
  • KT-CT-9016: Consent management not enabled.
  • KT-CT-9017: Consent type not found.
  • KT-CT-9023: Consent already accepted.
  • KT-CT-1199: Too many requests.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (DoubleOptInInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

consent (ConsentType)

The consent that was created or updated.

Mutation

mutation RequestDoubleOptIn($input: DoubleOptInInput) {
  requestDoubleOptIn(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    consent {
      ...ConsentTypeFragment
    }
  }
}

Variables

{
  "input": DoubleOptInInput
}

Response

{
  "data": {
    "requestDoubleOptIn": {
      "possibleErrors": [PossibleErrorType],
      "consent": ConsentType
    }
  }
}

requestPasswordReset

Type:RequestPasswordResetOutputType

URL:https://api.octopus.energy/v1/graphql/

Provide the email address of an account user to send them an email with instructions on how to reset their password.

The possible errors that can be raised are:

  • KT-CT-11331: Invalid input data.
  • KT-CT-11332: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (RequestPasswordResetInput!)

Input fields for requesting a password reset email.

Return fields

NameDescription

email (String)

The email that requested a password reset email.

userNumber (String)

The number of the user that requested a password reset email.

Mutation

mutation RequestPasswordReset($input: RequestPasswordResetInput!) {
  requestPasswordReset(input: $input) {
    email
    userNumber
  }
}

Variables

Response

{
  "data": {
    "requestPasswordReset": {
      "email": "abc123",
      "userNumber": "abc123"
    }
  }
}

requestPrintedBill

Type:RequestPrintedBill

URL:https://api.octopus.energy/v1/graphql/

Request an issued bill to be printed and (re)posted to billing address of the account.

The possible errors that can be raised are:

  • KT-CT-3824: Unauthorized.
  • KT-CT-9705: The billing document has not been issued.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RequestPrintedBillInput!)

Input fields to request a printed bill.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean)

Whether the request was successful.

Mutation

mutation RequestPrintedBill($input: RequestPrintedBillInput!) {
  requestPrintedBill(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

Response

{
  "data": {
    "requestPrintedBill": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

requestProvisioningClaimCertificate

Type:RequestProvisioningClaimCertificate

URL:https://api.octopus.energy/v1/graphql/

Request a certificate to provision a heating controller.

The possible errors that can be raised are:

  • KT-CT-4332: Invalid data.
  • KT-CT-4304: Error in preprovisioning step for Octopus Heat Pump.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'requestProvisioningClaimCertificate' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

propertyId (ID)

The primary key of a property you would like to associate with this controller.

requestParameters (ProvisioningClaimRequestParameters!)

Parameters requested by the app from the controller, required for Kraken Flex to authenticate the device.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

provisioningClaimBundle (ProvisioningClaimBundle)

The certificate and private key required to create a provisioning claim.

Mutation

mutation RequestProvisioningClaimCertificate(
  $accountNumber: String!,
  $propertyId: ID,
  $requestParameters: ProvisioningClaimRequestParameters!
) {
  requestProvisioningClaimCertificate(
    accountNumber: $accountNumber,
    propertyId: $propertyId,
    requestParameters: $requestParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    provisioningClaimBundle {
      ...ProvisioningClaimBundleFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123",
  "propertyId": "abc123",
  "requestParameters": ProvisioningClaimRequestParameters
}

Response

{
  "data": {
    "requestProvisioningClaimCertificate": {
      "possibleErrors": [PossibleErrorType],
      "provisioningClaimBundle": ProvisioningClaimBundle
    }
  }
}

requote

Type:Requote

URL:https://api.octopus.energy/v1/graphql/

Requote for an account property.

Arguments

NameDescription

input (RequoteInput!)

Return fields

NameDescription

quote (QuoteType)

The requoted quote.

Mutation

mutation Requote($input: RequoteInput!) {
  requote(input: $input) {
    quote {
      ...QuoteTypeFragment
    }
  }
}

Variables

{
  "input": RequoteInput
}

Response

{
  "data": {
    "requote": {
      "quote": QuoteType
    }
  }
}

resetPassword

Type:ResetPasswordMutationPayload

URL:https://api.octopus.energy/v1/graphql/

Reset the password of an account user indicated by the userId to the value supplied.

Deprecated

The 'resetPassword' field is deprecated.

Please use `resetUserPassword` instead.

- Marked as deprecated on 2024-12-04.
- Scheduled for removal on or after 2025-06-01.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/81/

Arguments

NameDescription

input (ResetPasswordMutationInput!)

Return fields

NameDescription

errors ([SerializerFieldErrorsType])

clientMutationId (String)

Mutation

mutation ResetPassword($input: ResetPasswordMutationInput!) {
  resetPassword(input: $input) {
    errors {
      ...SerializerFieldErrorsTypeFragment
    }
    clientMutationId
  }
}

Variables

Response

{
  "data": {
    "resetPassword": {
      "errors": [SerializerFieldErrorsType],
      "clientMutationId": "abc123"
    }
  }
}

resetUserPassword

Type:ResetUserPasswordOutput

URL:https://api.octopus.energy/v1/graphql/

Reset the password of an account user.

Raises KT-CT-5450 if password validation fails. Inspect the validationErrors extension to get the exact validation error:

json { "data": {"resetUserPassword": null}, "errors": [ { "message": "Password is invalid.", "path": ["resetUserPassword"], "extensions": { "errorType": "VALIDATION", "errorCode": "KT-CT-5450", "errorDescription": "Given password fails password policy requirements.", "validationErrors": [ { "code": "password_too_short", "message": "This password is too short. It must contain at least 7 characters.", "inputPath": ["input", "password"] }, { "code": "password_too_common", "message": "This password is too common.", "inputPath": ["input", "password"] } ] } } ] }

The validation error's code can be any of - password_too_short - password_too_common - password_reused - password_matches_current - password_has_too_few_numeric_characters - password_has_too_few_special_characters - password_has_too_few_lowercase_characters - password_has_too_few_uppercase_characters - password_contains_account_number - password_contains_part_of_email_address

The possible errors that can be raised are:

  • KT-CT-4125: Unauthorized.
  • KT-CT-1132: Unauthorized.
  • KT-CT-5450: Password is invalid.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (ResetUserPasswordInput!)

Input fields for resetting an account user's password.

Return fields

NameDescription

userId (ID!)

The ID of the user whose password was changed.

passwordUpdated (Boolean)

True if the password update was successful, false otherwise.

Deprecated

The 'passwordUpdated' field is deprecated.

Please handle the KT-CT-5450 error instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

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

failureReasons ([String])

A list of messages of which password validations the new password failed against if applicable.

Deprecated

The 'failureReasons' field is deprecated.

Please handle the KT-CT-5450 error and inspect the `validationErrors[].message` extension instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

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

failureCodes ([String])

A list of codes of which password validation the new password failed against if applicable. One of: - password_too_short - password_too_common - password_reused - password_matches_current - password_has_too_few_numeric_characters - password_has_too_few_special_characters - password_has_too_few_lowercase_characters - password_has_too_few_uppercase_characters - password_contains_account_number - password_contains_part_of_email_address

Deprecated

The 'failureCodes' field is deprecated.

Please handle the KT-CT-5450 error and inspect the `validationErrors[].code` extension instead.

Note that the KT-CT-5450 error will not be raised if you request any of the `failureCodes`, `failureReasons`, or `passwordUpdated` fields.

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

Mutation

mutation ResetUserPassword($input: ResetUserPasswordInput!) {
  resetUserPassword(input: $input) {
    userId
    passwordUpdated
    failureReasons
    failureCodes
  }
}

Variables

Response

{
  "data": {
    "resetUserPassword": {
      "userId": "abc123",
      "passwordUpdated": true,
      "failureReasons": ["abc123"],
      "failureCodes": ["abc123"]
    }
  }
}

resumeCollectionProcess

Type:ResumeCollectionProcess

URL:https://api.octopus.energy/v1/graphql/

Resume a collection process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11215: Unable to resume, collection process is not paused.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ResumeCollectionProcessInput!)

Details for resuming a collection process.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessResumed (ResumeCollectionProcessOutput)

Collection process resume output.

Mutation

mutation ResumeCollectionProcess($input: ResumeCollectionProcessInput!) {
  resumeCollectionProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessResumed {
      ...ResumeCollectionProcessOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "resumeCollectionProcess": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessResumed": ResumeCollectionProcessOutput
    }
  }
}

resumeControl

Type:ResumeDeviceControl

URL:https://api.octopus.energy/v1/graphql/

Resume control of the device.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4359: Unable to resume device control.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'resumeControl' field is deprecated.

Please use 'updateDeviceSmartControl' instead.

- Marked as deprecated on 2024-09-17.
- Scheduled for removal on or after 2025-12-11.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/468/

Arguments

NameDescription

input (AccountNumberInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation ResumeControl($input: AccountNumberInput) {
  resumeControl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

{
  "input": AccountNumberInput
}

Response

{
  "data": {
    "resumeControl": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

Arguments

NameDescription

input (RetrieveLatestWANCoverageInput!)

Input field for a retrieve latest WAN coverage request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation RetrieveLatestWanCoverage($input: RetrieveLatestWANCoverageInput!) {
  retrieveLatestWanCoverage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "retrieveLatestWanCoverage": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

reverseEnrollment

Type:EnrollmentReversed!

URL:https://api.octopus.energy/v1/graphql/

Reverse an enrollment (Join Supplier process).

The possible errors that can be raised are:

  • KT-CT-10312: Mutation not enabled in this environment.
  • KT-CT-10318: Enrollment process not found.
  • KT-CT-10349: Enrollment process is not reversible.
  • KT-CT-10350: Enrollment process can still be cancelled.
  • KT-CT-10351: Enrollment process being cancelled cannot be reversed.
  • KT-CT-10352: Market actions cannot be reversed for this enrollment process.
  • KT-CT-10353: Failed to reverse enrollment process.
  • KT-CT-10354: Enrollment reversal cut-off has passed.
  • KT-CT-10355: Enrollment reversal is not allowed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReverseEnrollmentInput!)

The input required to reverse an enrollment.

Return fields

NameDescription

Mutation

mutation ReverseEnrollment($input: ReverseEnrollmentInput!) {
  reverseEnrollment(input: $input) {
    message
    enrollmentProcess {
      ... on JoinSupplierProcessType {
        ...JoinSupplierProcessTypeFragment
      }
      ... on OccupyPropertyProcessType {
        ...OccupyPropertyProcessTypeFragment
      }
    }
  }
}

Variables

Response

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

reverseLeaveSupplier

Type:LeaveSupplierReversed!

URL:https://api.octopus.energy/v1/graphql/

Reverse a leave supplier process.

The possible errors that can be raised are:

  • KT-CT-10304: Mutation not enabled in this environment.
  • KT-CT-10302: Invalid data.
  • KT-CT-10341: Leave supplier process is not reversible.
  • KT-CT-10342: Leave supplier process can still be cancelled.
  • KT-CT-10343: Leave supplier process being cancelled cannot be reversed.
  • KT-CT-10344: Leave supplier reversal cut-off has passed.
  • KT-CT-10345: Occupier leave with real join cannot be reversed.
  • KT-CT-10346: Market action reversal is not supported for this leave supplier process.
  • KT-CT-10347: Failed to reverse leave supplier process.
  • KT-CT-10348: Leave supplier reversal is missing required dependencies.
  • KT-CT-1607: Value cannot be empty.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ReverseLeaveSupplierInput!)

Return fields

NameDescription

Mutation

mutation ReverseLeaveSupplier($input: ReverseLeaveSupplierInput!) {
  reverseLeaveSupplier(input: $input) {
    message
  }
}

Variables

Response

{
  "data": {
    "reverseLeaveSupplier": {
      "message": "abc123"
    }
  }
}

revokeAgreement

Type:RevokeAgreement

URL:https://api.octopus.energy/v1/graphql/

Revoke an agreement.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-1501: Agreement not found.
  • KT-CT-1502: Billed agreements cannot be revoked.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RevokeAgreementInput!)

Input fields for revoking an agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

Account responsible for the revoked agreement.

Mutation

mutation RevokeAgreement($input: RevokeAgreementInput!) {
  revokeAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

revokeContract

Type:RevokeContractOutput!

URL:https://api.octopus.energy/v1/graphql/

Revoke an existing contract.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10022: Contract already terminated.
  • KT-CT-10023: Contract is already revoked.
  • KT-CT-10024: Contract already expired.
  • KT-CT-10032: Contract has already started.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RevokeContractInput!)

Return fields

NameDescription

Mutation

mutation RevokeContract($input: RevokeContractInput!) {
  revokeContract(input: $input) {
    contract {
      ...ContractFragment
    }
  }
}

Variables

{
  "input": RevokeContractInput
}

Response

{
  "data": {
    "revokeContract": {
      "contract": Contract
    }
  }
}

revokeUserAccessFromBusiness

Type:RevokeUserAccessFromBusiness

URL:https://api.octopus.energy/v1/graphql/

Revoke the selected role from the user for the business.

The possible errors that can be raised are:

  • KT-CT-5463: Unauthorized.
  • KT-CT-11107: Unauthorized.
  • KT-CT-13501: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RevokeUserAccessFromBusinessInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation RevokeUserAccessFromBusiness($input: RevokeUserAccessFromBusinessInput!) {
  revokeUserAccessFromBusiness(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "revokeUserAccessFromBusiness": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

runAgreementRollover

Type:RunAgreementRollover

URL:https://api.octopus.energy/v1/graphql/

Run an agreement rollover.

The possible errors that can be raised are:

  • KT-CT-13705: Agreement rollover not found.
  • KT-CT-13706: Agreement rollover has an invalid status for this operation.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RunAgreementRolloverInput!)

Input for running an agreement rollover.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreementRollover (AgreementRolloverType)

The executed agreement rollover.

Mutation

mutation RunAgreementRollover($input: RunAgreementRolloverInput!) {
  runAgreementRollover(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreementRollover {
      ...AgreementRolloverTypeFragment
    }
  }
}

Variables

Response

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

scheduleQuoteFollowUp

Type:ScheduleQuoteFollowUp

URL:https://api.octopus.energy/v1/graphql/

Schedule a quote follow-up to the provided recipient.

The possible errors that can be raised are:

  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4632: Invalid recipient information.
  • KT-CT-4633: Mutation not enabled in this environment.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (QuoteShareInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether the message was scheduled successfully.

Mutation

mutation ScheduleQuoteFollowUp($input: QuoteShareInput!) {
  scheduleQuoteFollowUp(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

{
  "input": QuoteShareInput
}

Response

{
  "data": {
    "scheduleQuoteFollowUp": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

selectChargePointMakeForSmartFlexOnboarding

Type:SelectChargePointMakeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the charge point make to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectChargePointMakeForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectChargePointMakeInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectChargePointMakeForSmartFlexOnboarding($input: SelectChargePointMakeInput!) {
  selectChargePointMakeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectChargePointMakeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectChargePointVariantForSmartFlexOnboarding

Type:SelectChargePointVariantForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the charge point model variant to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectChargePointVariantForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectChargePointVariantInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectChargePointVariantForSmartFlexOnboarding($input: SelectChargePointVariantInput!) {
  selectChargePointVariantForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectChargePointVariantForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectDeviceTypeForSmartFlexOnboarding

Type:SelectDeviceTypeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the device type to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectDeviceTypeForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectDeviceTypeInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectDeviceTypeForSmartFlexOnboarding($input: SelectDeviceTypeInput!) {
  selectDeviceTypeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectDeviceTypeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectFromListForSmartFlexOnboarding

Type:SelectFromListForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select from a list of options presented.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SelectFromListInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectFromListForSmartFlexOnboarding($input: SelectFromListInput!) {
  selectFromListForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

{
  "input": SelectFromListInput
}

Response

{
  "data": {
    "selectFromListForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectHeatPumpMakeForSmartFlexOnboarding

Type:SelectHeatPumpMakeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the heat pump make to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectHeatPumpMakeForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectHeatPumpMakeInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectHeatPumpMakeForSmartFlexOnboarding($input: SelectHeatPumpMakeInput!) {
  selectHeatPumpMakeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectHeatPumpMakeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectInverterMakeForSmartFlexOnboarding

Type:SelectInverterMakeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the inverter make to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectInverterMakeForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectInverterMakeInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectInverterMakeForSmartFlexOnboarding($input: SelectInverterMakeInput!) {
  selectInverterMakeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectInverterMakeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectProducts

Type:SelectProducts

URL:https://api.octopus.energy/v1/graphql/

Mark quoted products on a quote request as selected.

The possible errors that can be raised are:

  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4634: Quoted product with given id not found.
  • KT-CT-4626: No product selected for the given quote code.
  • KT-CT-4635: Missing a quoted product for at least one quoted supply point on the quote request.
  • KT-CT-4636: Quoted product not linked to a product.
  • KT-CT-4646: Attempted to select multiple products for the same quoted supply point.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SelectProductsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether we successfully marked the chosen quoted products as selected.

Mutation

mutation SelectProducts($input: SelectProductsInput!) {
  selectProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

{
  "input": SelectProductsInput
}

Response

{
  "data": {
    "selectProducts": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

selectUserVehicleForSmartFlexOnboarding

Type:SelectUserVehicleForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the user's vehicle to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectUserVehicleForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectUserVehicleInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectUserVehicleForSmartFlexOnboarding($input: SelectUserVehicleInput!) {
  selectUserVehicleForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectUserVehicleForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectVehicleMakeForSmartFlexOnboarding

Type:SelectVehicleMakeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the vehicle make to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectVehicleMakeForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectVehicleMakeInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectVehicleMakeForSmartFlexOnboarding($input: SelectVehicleMakeInput!) {
  selectVehicleMakeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectVehicleMakeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectVehicleOrChargePointForSmartFlexOnboarding

Type:CompleteSelectVehicleOrChargePointForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the vehicle or charge point for the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SelectVehicleOrChargePointInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectVehicleOrChargePointForSmartFlexOnboarding($input: SelectVehicleOrChargePointInput!) {
  selectVehicleOrChargePointForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectVehicleOrChargePointForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

selectVehicleVariantForSmartFlexOnboarding

Type:SelectVehicleVariantForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Select the vehicle model variant to proceed in the onboarding journey.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'selectVehicleVariantForSmartFlexOnboarding' field is deprecated.

Please use 'selectFromListForSmartFlexOnboarding' instead.

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

Arguments

NameDescription

input (SelectVehicleVariantInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation SelectVehicleVariantForSmartFlexOnboarding($input: SelectVehicleVariantInput!) {
  selectVehicleVariantForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "selectVehicleVariantForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

Arguments

NameDescription

input (SendDecommissionRequestInput!)

Input fields for decommission devices.

Return fields

NameDescription

requestReference (String)

The reference of the Decommission Request in Kraken.

Mutation

mutation SendDecommissionRequest($input: SendDecommissionRequestInput!) {
  sendDecommissionRequest(input: $input) {
    requestReference
  }
}

Variables

Response

{
  "data": {
    "sendDecommissionRequest": {
      "requestReference": "abc123"
    }
  }
}

sendGbrQuoteSummary

Type:SendGBRQuoteSummary

URL:https://api.octopus.energy/v1/graphql/

Send a quote summary to the customer for the specified products.

The possible errors that can be raised are:

  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4632: Invalid recipient information.
  • KT-CT-4634: Quoted product with given id not found.
  • KT-CT-4616: Unable to create a quote.
  • KT-CT-9402: Received an invalid brandCode.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (GBRQuoteShareInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether the triggering of the quote summary was successful.

Mutation

mutation SendGbrQuoteSummary($input: GBRQuoteShareInput!) {
  sendGbrQuoteSummary(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

{
  "input": GBRQuoteShareInput
}

Response

{
  "data": {
    "sendGbrQuoteSummary": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

sendLossObjectionForChangeOfSupplier

Type:SendLossObjectionForChangeOfSupplier

URL:https://api.octopus.energy/v1/graphql/

Send an objection to an ongoing change of supplier process in order to try and cancel it.

The possible errors that can be raised are:

  • KT-CT-4185: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SendLossObjectionForChangeOfSupplierInput!)

Input fields for sending loss objection for change of supplier.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean)

Returns true if objection was successfully sent.

Mutation

mutation SendLossObjectionForChangeOfSupplier($input: SendLossObjectionForChangeOfSupplierInput!) {
  sendLossObjectionForChangeOfSupplier(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Response

{
  "data": {
    "sendLossObjectionForChangeOfSupplier": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

sendOfferQuoteSummary

Type:SendOfferQuoteSummary

URL:https://api.octopus.energy/v1/graphql/

Send an offer quote summary to all active account users.

The possible errors that can be raised are:

  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4178: No account found with given account number.
  • KT-CT-12407: The offer group does not contain an accepted offer.
  • KT-CT-5518: Account user not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (OfferQuoteSummaryInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether the triggering of the offer quote summary was successful.

Mutation

mutation SendOfferQuoteSummary($input: OfferQuoteSummaryInput!) {
  sendOfferQuoteSummary(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

Response

{
  "data": {
    "sendOfferQuoteSummary": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

sendQuoteSummary

Type:SendQuoteSummary

URL:https://api.octopus.energy/v1/graphql/

Send a quote summary to the provided recipient.

The possible errors that can be raised are:

  • KT-CT-4619: Quote with given code not found.
  • KT-CT-4178: No account found with given account number.
  • KT-CT-4632: Invalid recipient information.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (QuoteShareInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean!)

Whether the triggering of the quote summary was successful.

Mutation

mutation SendQuoteSummary($input: QuoteShareInput!) {
  sendQuoteSummary(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

{
  "input": QuoteShareInput
}

Response

{
  "data": {
    "sendQuoteSummary": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

sendVerificationEmail

Type:SendVerificationEmail

URL:https://api.octopus.energy/v1/graphql/

Verify user's email address.

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SendVerificationEmailInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

verificationStatus (Boolean)

If the verification email was sent.

Mutation

mutation SendVerificationEmail($input: SendVerificationEmailInput!) {
  sendVerificationEmail(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    verificationStatus
  }
}

Variables

Response

{
  "data": {
    "sendVerificationEmail": {
      "possibleErrors": [PossibleErrorType],
      "verificationStatus": true
    }
  }
}

setClimateControlState

Type:SetClimateControlState

URL:https://api.octopus.energy/v1/graphql/

Turn a hot water device on or off.

The possible errors that can be raised are:

  • KT-CT-4337: Unable to set climate control state.
  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (ClimateControlStateInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

heatPumpDevice (HeatPumpDeviceType)

The customer specific heat pump device details.

Mutation

mutation SetClimateControlState($input: ClimateControlStateInput) {
  setClimateControlState(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    heatPumpDevice {
      ...HeatPumpDeviceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setClimateControlState": {
      "possibleErrors": [PossibleErrorType],
      "heatPumpDevice": HeatPumpDeviceType
    }
  }
}

setDevicePreferences

Type:SmartFlexDeviceInterface

URL:https://api.octopus.energy/v1/graphql/

Set the user preferences for a device.

The possible errors that can be raised are:

  • KT-CT-4314: Unable to get provider details.
  • KT-CT-4321: Serializer validation error.
  • KT-CT-4374: An error occurred while trying to set your device preferences.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SmartFlexDevicePreferencesInput!)

The device preference details to be updated.

Return fields

NameDescription

id (ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

name (String)

The user-friendly name for the device.

deviceType (KrakenFlexDeviceTypes!)

The type of device.

provider (ProviderChoices!)

The third-party that enables control of this device.

integrationDeviceId (String)

The third-party integration device ID.

status (SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

propertyId (String)

The id of the property linked to the device.

alerts ([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

onboardingWizard (SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferences (SmartFlexDevicePreferencesInterface)

The device's preference details.

preferenceSetting (FlexDevicePreferenceSettingInterface)

The preference setting for this device.

reAuthenticationState (DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

Mutation

mutation SetDevicePreferences($input: SmartFlexDevicePreferencesInput!) {
  setDevicePreferences(input: $input) {
    id
    name
    deviceType
    provider
    integrationDeviceId
    status {
      ...SmartFlexDeviceStatusInterfaceFragment
    }
    propertyId
    alerts {
      ...SmartFlexDeviceAlertInterfaceFragment
    }
    onboardingWizard {
      ...SmartFlexOnboardingWizardFragment
    }
    preferences {
      ...SmartFlexDevicePreferencesInterfaceFragment
    }
    preferenceSetting {
      ...FlexDevicePreferenceSettingInterfaceFragment
    }
    reAuthenticationState {
      ...DeviceReAuthenticationInterfaceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setDevicePreferences": {
      "id": "abc123",
      "name": "abc123",
      "deviceType": "BATTERIES",
      "provider": "BYD",
      "integrationDeviceId": "abc123",
      "status": SmartFlexDeviceStatusInterface,
      "propertyId": "abc123",
      "alerts": SmartFlexDeviceAlertInterface,
      "onboardingWizard": SmartFlexOnboardingWizard,
      "preferences": SmartFlexDevicePreferencesInterface,
      "preferenceSetting": FlexDevicePreferenceSettingInterface,
      "reAuthenticationState": DeviceReAuthenticationInterface
    }
  }
}

setHotWaterState

Type:SetHotWaterState

URL:https://api.octopus.energy/v1/graphql/

Turn a hot water device on or off.

The possible errors that can be raised are:

  • KT-CT-4336: Unable to set hot water state.
  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (HotWaterStateInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

heatPumpDevice (HeatPumpDeviceType)

The customer specific heat pump device details.

Mutation

mutation SetHotWaterState($input: HotWaterStateInput) {
  setHotWaterState(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    heatPumpDevice {
      ...HeatPumpDeviceTypeFragment
    }
  }
}

Variables

{
  "input": HotWaterStateInput
}

Response

{
  "data": {
    "setHotWaterState": {
      "possibleErrors": [PossibleErrorType],
      "heatPumpDevice": HeatPumpDeviceType
    }
  }
}

setLoyaltyPointsUser

Type:SetLoyaltyPointsUser

URL:https://api.octopus.energy/v1/graphql/

Set the Loyalty Point user for the account.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9210: Unhandled Loyalty Points exception.
  • KT-CT-9214: Couldn't assign user loyalty points role.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetLoyaltyPointsUserInput!)

Input fields for saving the Loyalty Points user.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

newLoyaltyPointsUserId (String)

ID of the new Loyalty Points user.

Mutation

mutation SetLoyaltyPointsUser($input: SetLoyaltyPointsUserInput!) {
  setLoyaltyPointsUser(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    newLoyaltyPointsUserId
  }
}

Variables

Response

{
  "data": {
    "setLoyaltyPointsUser": {
      "possibleErrors": [PossibleErrorType],
      "newLoyaltyPointsUserId": "abc123"
    }
  }
}

setOpportunityOutcome

Type:SetOpportunityOutcome

URL:https://api.octopus.energy/v1/graphql/

Update the opportunity outcome to mark the opportunity as won or lost.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetOpportunityOutcomeInput!)

Input fields for setting the outcome of a opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

message (String)

Success message for now.

Mutation

mutation SetOpportunityOutcome($input: SetOpportunityOutcomeInput!) {
  setOpportunityOutcome(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    message
  }
}

Variables

Response

{
  "data": {
    "setOpportunityOutcome": {
      "possibleErrors": [PossibleErrorType],
      "message": "abc123"
    }
  }
}

setPaymentPreference

Type:SetPaymentPreference

URL:https://api.octopus.energy/v1/graphql/

Set a preference to collect payments from a specific payment method.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3967: Payment method is not valid.
  • KT-CT-3968: Preference cannot be set this soon.
  • KT-CT-3969: Preferences must change on a specific day of the week for weekly schedules.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetPaymentPreferenceInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation SetPaymentPreference($input: SetPaymentPreferenceInput!) {
  setPaymentPreference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setPaymentPreference": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

setReadingConsentGranularity

Type:SetReadingConsentGranularity

URL:https://api.octopus.energy/v1/graphql/

Mutation to set the reading consent granularity for a meter point.

Arguments

NameDescription

input (SetReadingConsentGranularityInput!)

Input fields for setting the reading consent granularity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

readingConsentGranularitySubmitted (Boolean)

Whether the reading consent granularity was successfully submitted.

Mutation

mutation SetReadingConsentGranularity($input: SetReadingConsentGranularityInput!) {
  setReadingConsentGranularity(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    readingConsentGranularitySubmitted
  }
}

Variables

Response

{
  "data": {
    "setReadingConsentGranularity": {
      "possibleErrors": [PossibleErrorType],
      "readingConsentGranularitySubmitted": true
    }
  }
}

setRoomTemperature

Type:SetRoomTemperature

URL:https://api.octopus.energy/v1/graphql/

Turn a hot water device on or off.

The possible errors that can be raised are:

  • KT-CT-4329: Invalid data.
  • KT-CT-4346: Unable to set the room temperature.
  • KT-CT-7223: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (RoomTemperatureInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

heatPumpDevice (HeatPumpDeviceType)

The customer specific heat pump device details.

Mutation

mutation SetRoomTemperature($input: RoomTemperatureInput) {
  setRoomTemperature(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    heatPumpDevice {
      ...HeatPumpDeviceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setRoomTemperature": {
      "possibleErrors": [PossibleErrorType],
      "heatPumpDevice": HeatPumpDeviceType
    }
  }
}

setUpDirectDebitInstruction

Type:SetUpDirectDebitInstruction

URL:https://api.octopus.energy/v1/graphql/

Set up a new direct debit instruction.

The possible errors that can be raised are:

  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3940: Invalid data.
  • KT-CT-5415: Account user not found.
  • KT-CT-11103: Business not found.
  • KT-CT-3971: Instruction owners are not valid.
  • KT-CT-3979: Invalid ledger.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetUpDirectDebitInstructionInput!)

Input fields for creating a new direct debit instruction.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentInstruction (DirectDebitInstructionType)

Mutation

mutation SetUpDirectDebitInstruction($input: SetUpDirectDebitInstructionInput!) {
  setUpDirectDebitInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentInstruction {
      ...DirectDebitInstructionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setUpDirectDebitInstruction": {
      "possibleErrors": [PossibleErrorType],
      "paymentInstruction": DirectDebitInstructionType
    }
  }
}

setUpDirectDebitInstructionForBusiness

Type:SetUpDirectDebitInstructionForBusiness

URL:https://api.octopus.energy/v1/graphql/

Set up a new direct debit instruction for a business.

The possible errors that can be raised are:

  • KT-CT-3940: Invalid data.
  • KT-CT-3956: Temporary error occurred.
  • KT-CT-11107: Unauthorized.
  • KT-CT-3948: Could not set up direct debit instruction.
  • KT-CT-3971: Instruction owners are not valid.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetUpDirectDebitInstructionForBusinessInput!)

Input fields for creating a new direct debit instruction.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentInstruction (DirectDebitInstructionType)

The created direct debit instruction.

Mutation

mutation SetUpDirectDebitInstructionForBusiness($input: SetUpDirectDebitInstructionForBusinessInput!) {
  setUpDirectDebitInstructionForBusiness(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentInstruction {
      ...DirectDebitInstructionTypeFragment
    }
  }
}

Response

{
  "data": {
    "setUpDirectDebitInstructionForBusiness": {
      "possibleErrors": [PossibleErrorType],
      "paymentInstruction": DirectDebitInstructionType
    }
  }
}

setUpDirectDebitInstructionFromStoredDetails

Type:SetUpDirectDebitInstructionFromStoredDetails

URL:https://api.octopus.energy/v1/graphql/

Set up a new direct debit instruction from stored details.

The possible errors that can be raised are:

  • KT-CT-3956: Temporary error occurred.
  • KT-CT-3948: Could not set up direct debit instruction.
  • KT-CT-3971: Instruction owners are not valid.
  • KT-CT-5415: Account user not found.
  • KT-CT-11103: Business not found.
  • KT-CT-4123: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SetUpDirectDebitInstructionFromStoredDetailsInput!)

Input fields for creating a new direct debit instruction from stored details.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentInstruction (DirectDebitInstructionType)

The payment instruction that was created from stored details.

Mutation

mutation SetUpDirectDebitInstructionFromStoredDetails($input: SetUpDirectDebitInstructionFromStoredDetailsInput!) {
  setUpDirectDebitInstructionFromStoredDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentInstruction {
      ...DirectDebitInstructionTypeFragment
    }
  }
}

Response

{
  "data": {
    "setUpDirectDebitInstructionFromStoredDetails": {
      "possibleErrors": [PossibleErrorType],
      "paymentInstruction": DirectDebitInstructionType
    }
  }
}

setVehicleChargePreferences

Type:SetVehicleChargingPreferences

URL:https://api.octopus.energy/v1/graphql/

Set charging preferences for your electric vehicle.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4321: Serializer validation error.
  • KT-CT-4353: An error occurred while trying to update your charging preferences.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'setVehicleChargePreferences' field is deprecated.

Please use `setDevicePreferences` instead of this endpoint.

- Marked as deprecated on 2024-09-18.
- Scheduled for removal on or after 2026-01-26.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/469/

Arguments

NameDescription

input (VehicleChargingPreferencesInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation SetVehicleChargePreferences($input: VehicleChargingPreferencesInput) {
  setVehicleChargePreferences(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "setVehicleChargePreferences": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

setZoneMode

Type:SetZoneMode

URL:https://api.octopus.energy/v1/graphql/

Turn a specific heating controller zone ON/OFF, set it to AUTO mode or give it a BOOST.

The possible errors that can be raised are:

  • KT-CT-4333: Invalid data.
  • KT-CT-4306: Error setting mode for heat pump controller zone.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'setZoneMode' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

operationParameters (SetZoneModeParameters!)

The parameters required to instruct a specific zone operation.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with a zone's mode operation.

Mutation

mutation SetZoneMode(
  $accountNumber: String!,
  $euid: ID!,
  $operationParameters: SetZoneModeParameters!
) {
  setZoneMode(
    accountNumber: $accountNumber,
    euid: $euid,
    operationParameters: $operationParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "operationParameters": SetZoneModeParameters
}

Response

{
  "data": {
    "setZoneMode": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

setZoneSchedules

Type:SetZoneSchedules

URL:https://api.octopus.energy/v1/graphql/

Add schedules for a heating controller zone.

The possible errors that can be raised are:

  • KT-CT-4334: Invalid data.
  • KT-CT-4308: Error setting schedule(s) for heat pump controller zone.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'setZoneSchedules' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

zoneScheduleParameters (SetZoneSchedulesParameters!)

The parameters required to add schedule(s) for a specific zone.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with adding schedule(s) for a zone.

Mutation

mutation SetZoneSchedules(
  $accountNumber: String!,
  $euid: ID!,
  $zoneScheduleParameters: SetZoneSchedulesParameters!
) {
  setZoneSchedules(
    accountNumber: $accountNumber,
    euid: $euid,
    zoneScheduleParameters: $zoneScheduleParameters
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "zoneScheduleParameters": SetZoneSchedulesParameters
}

Response

{
  "data": {
    "setZoneSchedules": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

shareGoodsQuote

Type:ShareGoodsQuote

URL:https://api.octopus.energy/v1/graphql/

Share a goods quote.

The possible errors that can be raised are:

  • KT-CT-4122: Invalid email.
  • KT-CT-8203: Received an invalid quote code.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (ShareGoodsQuoteInput!)

Input fields for sharing a quote.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

share (GoodsQuoteShare)

Goods quote shared.

Mutation

mutation ShareGoodsQuote($input: ShareGoodsQuoteInput!) {
  shareGoodsQuote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    share {
      ...GoodsQuoteShareFragment
    }
  }
}

Variables

Response

{
  "data": {
    "shareGoodsQuote": {
      "possibleErrors": [PossibleErrorType],
      "share": GoodsQuoteShare
    }
  }
}

skipSsdPayment

Type:SkipSSDPayment

URL:https://api.octopus.energy/v1/graphql/

Skip the SSD payment for an account which is yet to enrol to Octopus as a supplier.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-GB-4137: Could not cancel SSD payment.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SkipSsdPaymentInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

skippedPaymentAmount (Int!)

The amount of the skipped payment.

skippedPaymentDate (Date)

The date of the payment that was skipped.

nextPaymentAmount (Int)

The amount of the next scheduled payment for the account.

nextPaymentDate (Date)

The date of the next scheduled payment for the account.

Mutation

mutation SkipSsdPayment($input: SkipSsdPaymentInput!) {
  skipSsdPayment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    skippedPaymentAmount
    skippedPaymentDate
    nextPaymentAmount
    nextPaymentDate
  }
}

Variables

{
  "input": SkipSsdPaymentInput
}

Response

{
  "data": {
    "skipSsdPayment": {
      "possibleErrors": [PossibleErrorType],
      "skippedPaymentAmount": 1,
      "skippedPaymentDate": "2020-01-01",
      "nextPaymentAmount": 1,
      "nextPaymentDate": "2020-01-01"
    }
  }
}

smets2Interest

Type:UpdateAccountSmartMeterInterest

URL:https://api.octopus.energy/v1/graphql/

Set stated interest in procuring a smart meter for an account.

The possible errors that can be raised are:

  • KT-GB-4115: Could not create smart meter interest for account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAccountSmartMeterInterestInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

interestUpdated (Boolean)

smets2Interest (SmartMeterInterestChoices)

The interest of an account in procuring smart meters.

smets2InterestSource (SmartMeterInterestSourceChoices)

The source category of the smart meter interest update.

smets2RefusalReason (SMETS2InterestReason)

The reason why the account holder is not interested in having a smart meter installed.

Mutation

mutation Smets2Interest($input: UpdateAccountSmartMeterInterestInput) {
  smets2Interest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    interestUpdated
    smets2Interest
    smets2InterestSource
    smets2RefusalReason
  }
}

Response

{
  "data": {
    "smets2Interest": {
      "possibleErrors": [PossibleErrorType],
      "interestUpdated": true,
      "smets2Interest": "PRIORITY",
      "smets2InterestSource": "WEBSITE",
      "smets2RefusalReason": "SMETS2_INTEREST_REASON_DO_NOT_OWN_HOME"
    }
  }
}

spinWheelOfFortune

Type:SpinWheelOfFortune

URL:https://api.octopus.energy/v1/graphql/

Submit a spin of the Wheel of Fortune for the given account and supply type.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-CT-7011: Terms must be accepted.
  • KT-CT-7023: Unauthorized.
  • KT-CT-7010: The account does not have any available submissions.
  • KT-CT-7012: Wheel of Fortune submission error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'spinWheelOfFortune' field is deprecated.

We're migrating the system the Wheel of Fortune runs on. Octopus Energy UK customers can find the new API under api.backend.octopus.energy/v1/graphql/

- Marked as deprecated on 2025-06-24.
- Scheduled for removal on or after 2025-09-24.

Arguments

NameDescription

input (WheelOfFortuneSpinInput!)

Input fields for creating a Wheel of Fortune submission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

spinResult (WheelOfFortuneSpinResultType)

The result of the Wheel of Fortune spin.

This field requires the Authorization header to be set.

Mutation

mutation SpinWheelOfFortune($input: WheelOfFortuneSpinInput!) {
  spinWheelOfFortune(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    spinResult {
      ...WheelOfFortuneSpinResultTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "spinWheelOfFortune": {
      "possibleErrors": [PossibleErrorType],
      "spinResult": WheelOfFortuneSpinResultType
    }
  }
}

startCollectionProcess

Type:StartCollectionProcess

URL:https://api.octopus.energy/v1/graphql/

Start a collection process.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11208: Invalid billing document identifier for collection process.
  • KT-CT-11209: Collection process configuration does not have published version.
  • KT-CT-11210: Active collection process for entity already exists.
  • KT-CT-11211: Too many active collection processes for config.
  • KT-CT-11212: Invalid collection process config code.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StartCollectionProcessInput!)

Details to start collection process for.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessStarted (StartCollectionProcessOutput)

Details of collection process that has been started.

Mutation

mutation StartCollectionProcess($input: StartCollectionProcessInput!) {
  startCollectionProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessStarted {
      ...StartCollectionProcessOutputFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startCollectionProcess": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessStarted": StartCollectionProcessOutput
    }
  }
}

startCustomerVerification

Type:StartCustomerVerification

URL:https://api.octopus.energy/v1/graphql/

Start the customer verification using the provided verification method.

The possible errors that can be raised are:

  • KT-CT-1701: Brand does not exist.
  • KT-CT-4194: Verification type not supported yet.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StartCustomerVerificationInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

verificationProcess (VerificationProcess)

The newly created verification process.

Mutation

mutation StartCustomerVerification($input: StartCustomerVerificationInput!) {
  startCustomerVerification(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    verificationProcess {
      ...VerificationProcessFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startCustomerVerification": {
      "possibleErrors": [PossibleErrorType],
      "verificationProcess": VerificationProcess
    }
  }
}

startExportOnboardingProcess

Type:StartExportOnboardingProcess

URL:https://api.octopus.energy/v1/graphql/

Start export onboarding process for an account.

The possible errors that can be raised are:

  • KT-GB-4103: Unable to start export onboarding process.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (StartExportOnboardingProcessInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onboardingProcess (SmartOnboardingProcessType)

productEnrolment (ProductEnrolmentType)

The product enrolment process created.

Mutation

mutation StartExportOnboardingProcess($input: StartExportOnboardingProcessInput) {
  startExportOnboardingProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onboardingProcess {
      ...SmartOnboardingProcessTypeFragment
    }
    productEnrolment {
      ...ProductEnrolmentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startExportOnboardingProcess": {
      "possibleErrors": [PossibleErrorType],
      "onboardingProcess": SmartOnboardingProcessType,
      "productEnrolment": ProductEnrolmentType
    }
  }
}

startOnSiteJobsAppointmentBookingSession

Type:StartOnSiteJobsAppointmentBookingSession

URL:https://api.octopus.energy/v1/graphql/

Start the appointment booking process for an on-site jobs request.

The possible errors that can be raised are:

  • KT-CT-13010: No booking adapter found for agent.
  • KT-CT-13020: Could not identify agent from property.
  • KT-CT-13021: Invalid job type.
  • KT-CT-13022: Work category not found for job type.
  • KT-CT-13023: Appointment booking checks failed.
  • KT-CT-13024: Appointment booking checks returned warnings.
  • KT-CT-13032: Request does not exist.
  • KT-CT-13054: Appointment not found for rescheduling.
  • KT-CT-13055: Appointment does not belong to the specified request.
  • KT-CT-13056: Appointment cannot be rescheduled.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

appointmentBookingDetails (OnSiteJobsAppointmentBookingDetailsInput!)

The appointment booking details.

appointmentIdToReschedule (UUID)

The ID of an existing appointment to reschedule. If provided, this booking session will be used to reschedule the appointment instead of creating a new one.

overrideAppointmentCheckWarnings (Boolean)

Whether to override appointment booking check warnings. Defaults to False.

requestId (UUID!)

The ID of the request to book an appointment for.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

appointmentBookingSessionId (UUID)

The Kraken booking ID for the appointment booking session.

Mutation

mutation StartOnSiteJobsAppointmentBookingSession(
  $appointmentBookingDetails: OnSiteJobsAppointmentBookingDetailsInput!,
  $appointmentIdToReschedule: UUID,
  $overrideAppointmentCheckWarnings: Boolean,
  $requestId: UUID!
) {
  startOnSiteJobsAppointmentBookingSession(
    appointmentBookingDetails: $appointmentBookingDetails,
    appointmentIdToReschedule: $appointmentIdToReschedule,
    overrideAppointmentCheckWarnings: $overrideAppointmentCheckWarnings,
    requestId: $requestId
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    appointmentBookingSessionId
  }
}

Variables

{
  "appointmentBookingDetails": OnSiteJobsAppointmentBookingDetailsInput,
  "appointmentIdToReschedule": "500c164d-38c7-4f74-9ac6-be210197e9e4",
  "overrideAppointmentCheckWarnings": true,
  "requestId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
}

Response

{
  "data": {
    "startOnSiteJobsAppointmentBookingSession": {
      "possibleErrors": [PossibleErrorType],
      "appointmentBookingSessionId": "500c164d-38c7-4f74-9ac6-be210197e9e4"
    }
  }
}

startOnboardingProcess

Type:StartSmartOnboardingProcess

URL:https://api.octopus.energy/v1/graphql/

Start smart onboarding process for an account.

The possible errors that can be raised are:

  • KT-GB-4102: Unable to start smart onboarding process.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StartSmartOnboardingProcessInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onboardingProcess (SmartOnboardingProcessType)

productEnrolment (ProductEnrolmentType)

The product enrolment process created.

Mutation

mutation StartOnboardingProcess($input: StartSmartOnboardingProcessInput) {
  startOnboardingProcess(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onboardingProcess {
      ...SmartOnboardingProcessTypeFragment
    }
    productEnrolment {
      ...ProductEnrolmentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startOnboardingProcess": {
      "possibleErrors": [PossibleErrorType],
      "onboardingProcess": SmartOnboardingProcessType,
      "productEnrolment": ProductEnrolmentType
    }
  }
}

startReAuthentication

Type:StartReAuthentication

URL:https://api.octopus.energy/v1/graphql/

Create a wizard for re-authenticating a device with SmartFlex.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-4385: Re-authentication is not supported for this device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StartReAuthenticationInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for re-authenticating the device with SmartFlex.

Mutation

mutation StartReAuthentication($input: StartReAuthenticationInput!) {
  startReAuthentication(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startReAuthentication": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

startSmartFlexOnboarding

Type:StartSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Create a wizard for onboarding a device with SmartFlex.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-4385: Re-authentication is not supported for this device.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StartSmartFlexOnboardingInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation StartSmartFlexOnboarding($input: StartSmartFlexOnboardingInput!) {
  startSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Variables

Response

{
  "data": {
    "startSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

startTestChargeForSmartFlexOnboarding

Type:StartTestChargeForSmartFlexOnboarding

URL:https://api.octopus.energy/v1/graphql/

Attempt to start a test charge.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4371: Onboarding wizard ID is invalid.
  • KT-CT-4372: Simultaneous attempts to update onboarding process.
  • KT-CT-4375: Incorrect or missing parameters for SmartFlex onboarding step.
  • KT-CT-4376: Unable to complete onboarding step. Please try again later.
  • KT-CT-4377: Invalid onboarding step ID.
  • KT-CT-4378: Invalid input or step id. Please make sure you are using the correct step id and providing the expected input params.
  • KT-CT-4379: Vehicle is not ready for a test charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'startTestChargeForSmartFlexOnboarding' field is deprecated.

This functionality will no longer be available.

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

Arguments

NameDescription

input (CompleteSmartFlexOnboardingStepInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

wizard (SmartFlexOnboardingWizard)

The wizard created for onboarding the device with SmartFlex.

Mutation

mutation StartTestChargeForSmartFlexOnboarding($input: CompleteSmartFlexOnboardingStepInput!) {
  startTestChargeForSmartFlexOnboarding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    wizard {
      ...SmartFlexOnboardingWizardFragment
    }
  }
}

Response

{
  "data": {
    "startTestChargeForSmartFlexOnboarding": {
      "possibleErrors": [PossibleErrorType],
      "wizard": SmartFlexOnboardingWizard
    }
  }
}

stopAutomatedPayments

Type:StopAutomatedPayments

URL:https://api.octopus.energy/v1/graphql/

Set a preference to not collect automated payments.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3968: Preference cannot be set this soon.
  • KT-CT-3969: Preferences must change on a specific day of the week for weekly schedules.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StopAutomatedPaymentsInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

Mutation

mutation StopAutomatedPayments($input: StopAutomatedPaymentsInput!) {
  stopAutomatedPayments(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "stopAutomatedPayments": {
      "possibleErrors": [PossibleErrorType]
    }
  }
}

storeDirectDebitPaymentMethodDetails

Type:StoreDirectDebitPaymentMethodDetails

URL:https://api.octopus.energy/v1/graphql/

Store bank details with the vendor.

The possible errors that can be raised are:

  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3940: Invalid data.
  • KT-CT-3956: Temporary error occurred.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StoreDirectDebitPaymentMethodDetailsInput!)

Store bank details with the vendor.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

storedPaymentMethodDetailsReference (String)

Mutation

mutation StoreDirectDebitPaymentMethodDetails($input: StoreDirectDebitPaymentMethodDetailsInput!) {
  storeDirectDebitPaymentMethodDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    storedPaymentMethodDetailsReference
  }
}

Response

{
  "data": {
    "storeDirectDebitPaymentMethodDetails": {
      "possibleErrors": [PossibleErrorType],
      "storedPaymentMethodDetailsReference": "abc123"
    }
  }
}

storeElectricJuicePaymentInstruction

Type:StoreElectricJuicePaymentInstruction

URL:https://api.octopus.energy/v1/graphql/

Store a new card instruction for Electric Juice from an embedded form.

The possible errors that can be raised are:

  • KT-CT-3923: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'storeElectricJuicePaymentInstruction' field is deprecated.

Legacy Market

- Marked as deprecated on 2025-08-04.
- Scheduled for removal on or after 2025-09-05.

Arguments

NameDescription

input (StoreElectricJuicePaymentInstructionInput!)

Input fields for storing a new card instruction from an embedded form.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentInstruction (PaymentInstructionType)

Mutation

mutation StoreElectricJuicePaymentInstruction($input: StoreElectricJuicePaymentInstructionInput!) {
  storeElectricJuicePaymentInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentInstruction {
      ...PaymentInstructionTypeFragment
    }
  }
}

Response

{
  "data": {
    "storeElectricJuicePaymentInstruction": {
      "possibleErrors": [PossibleErrorType],
      "paymentInstruction": PaymentInstructionType
    }
  }
}

storePaymentInstruction

Type:StorePaymentInstruction

URL:https://api.octopus.energy/v1/graphql/

Store a new payment instruction created through the embedded process.

The possible errors that can be raised are:

  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-4177: Unauthorized.
  • KT-CT-3822: Unauthorized.
  • KT-CT-3979: Invalid ledger.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (StorePaymentInstructionInput!)

Input fields for storing a new payment instruction created through the embedded process.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentInstruction (PaymentInstructionType)

The stored payment instruction.

Mutation

mutation StorePaymentInstruction($input: StorePaymentInstructionInput!) {
  storePaymentInstruction(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentInstruction {
      ...PaymentInstructionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "storePaymentInstruction": {
      "possibleErrors": [PossibleErrorType],
      "paymentInstruction": PaymentInstructionType
    }
  }
}

submitCustomerFeedback

Type:SubmitCustomerFeedback

URL:https://api.octopus.energy/v1/graphql/

Submit customer feedback.

The possible errors that can be raised are:

  • KT-CT-5514: Unable to submit feedback.
  • KT-CT-5511: The feedback_id should be provided for feedback source.
  • KT-CT-5512: The feedback doesn't match the account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (CustomerFeedbackInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

customerFeedback (CustomerFeedbackType)

Mutation

mutation SubmitCustomerFeedback($input: CustomerFeedbackInputType!) {
  submitCustomerFeedback(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    customerFeedback {
      ...CustomerFeedbackTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "submitCustomerFeedback": {
      "possibleErrors": [PossibleErrorType],
      "customerFeedback": CustomerFeedbackType
    }
  }
}

submitRepaymentRequest

Type:SubmitRepaymentRequest

URL:https://api.octopus.energy/v1/graphql/

Submit a repayment request.

The possible errors that can be raised are:

  • KT-CT-1132: Unauthorized.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3823: Unauthorized.
  • KT-CT-3926: Unauthorized.
  • KT-CT-3927: Invalid Amount.
  • KT-CT-3928: Idempotency key used for another repayment request.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (RequestRepaymentInputType!)

Input fields for requesting a repayment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

repaymentRequest (RequestRepaymentOutputType)

The newly created repayment request.

Mutation

mutation SubmitRepaymentRequest($input: RequestRepaymentInputType!) {
  submitRepaymentRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    repaymentRequest {
      ...RequestRepaymentOutputTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "submitRepaymentRequest": {
      "possibleErrors": [PossibleErrorType],
      "repaymentRequest": RequestRepaymentOutputType
    }
  }
}

suspendControl

Type:SuspendDeviceControl

URL:https://api.octopus.energy/v1/graphql/

Suspend control of the device.

The possible errors that can be raised are:

  • KT-CT-4301: Unable to find device for given account.
  • KT-CT-4358: Unable to suspend device control.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'suspendControl' field is deprecated.

Please use 'updateDeviceSmartControl' instead.

- Marked as deprecated on 2024-09-17.
- Scheduled for removal on or after 2025-12-11.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/468/

Arguments

NameDescription

input (AccountNumberInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation SuspendControl($input: AccountNumberInput) {
  suspendControl(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

{
  "input": AccountNumberInput
}

Response

{
  "data": {
    "suspendControl": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

switchAccountToVariablePaymentSchedule

Type:SwitchAccountToVariablePaymentSchedule

URL:https://api.octopus.energy/v1/graphql/

Switch account to variable payment schedule. Current schedule type will be preserved.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-3921: Account not found.
  • KT-CT-3922: Ledger not found for the account.
  • KT-CT-3947: An unexpected error occurred.
  • KT-CT-3984: Could not delete conflicting future payment schedule.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SwitchAccountToVariablePaymentScheduleInput!)

Input fields for switching to a variable payment schedule.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

schedule (PaymentScheduleType!)

New payment schedule.

Mutation

mutation SwitchAccountToVariablePaymentSchedule($input: SwitchAccountToVariablePaymentScheduleInput!) {
  switchAccountToVariablePaymentSchedule(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    schedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Response

{
  "data": {
    "switchAccountToVariablePaymentSchedule": {
      "possibleErrors": [PossibleErrorType],
      "schedule": PaymentScheduleType
    }
  }
}

switchMeterPointProducts

Type:SwitchMeterPointProducts

URL:https://api.octopus.energy/v1/graphql/

Switch the specified meter points to the chosen product.

The possible errors that can be raised are:

  • KT-GB-4116: Invalid data.
  • KT-GB-4617: Quoted product not found.
  • KT-CT-4623: Unauthorized.
  • KT-GB-4117: Unable to process product switch.
  • KT-GB-4119: Meter point already on another account.
  • KT-GB-4120: MPxN has no active agreement.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SwitchMeterPointProductsInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

The account associated with the meter points whose products were switched.

Mutation

mutation SwitchMeterPointProducts($input: SwitchMeterPointProductsInput) {
  switchMeterPointProducts(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

synchroniseClock

Type:SynchroniseClock

URL:https://api.octopus.energy/v1/graphql/

Triggers an asynchronous request to synchronise the clock on a meter device.

The possible errors that can be raised are:

  • KT-GB-4024: The provided device ID does not match any devices known by Kraken.
  • KT-GB-4019: This device type is not currently supported.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SynchroniseClockInput!)

Input field for a synchronise clock request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The reference for the associated request in Kraken.

Mutation

mutation SynchroniseClock($input: SynchroniseClockInput!) {
  synchroniseClock(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "synchroniseClock": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

terminateAgreement

Type:TerminateAgreement

URL:https://api.octopus.energy/v1/graphql/

Terminate an agreement.

The possible errors that can be raised are:

  • KT-CT-1501: Agreement not found.
  • KT-CT-1513: Unable to terminate agreement.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TerminateAgreementInput!)

Input for terminating an agreement.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreement (CommonAgreementType)

The created agreement.

Mutation

mutation TerminateAgreement($input: TerminateAgreementInput!) {
  terminateAgreement(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreement {
      ...CommonAgreementTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "terminateAgreement": {
      "possibleErrors": [PossibleErrorType],
      "agreement": CommonAgreementType
    }
  }
}

terminateContract

Type:TerminateContractOutput!

URL:https://api.octopus.energy/v1/graphql/

Terminate an existing contract.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10007: Unable to terminate contract.
  • KT-CT-10008: The contract is currently undergoing an active journey.
  • KT-CT-10013: Requested termination date is invalid.
  • KT-CT-10022: Contract already terminated.
  • KT-CT-10023: Contract is already revoked.
  • KT-CT-10024: Contract already expired.
  • KT-CT-10025: Contract has not started yet.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TerminateContractInput!)

Return fields

NameDescription

Mutation

mutation TerminateContract($input: TerminateContractInput!) {
  terminateContract(input: $input) {
    contract {
      ...ContractFragment
    }
  }
}

Variables

Response

{
  "data": {
    "terminateContract": {
      "contract": Contract
    }
  }
}

terminateCreditTransferPermission

Type:TerminateCreditTransferPermission

URL:https://api.octopus.energy/v1/graphql/

Terminate credit transfer permission.

The possible errors that can be raised are:

  • KT-CT-3822: Unauthorized.
  • KT-CT-3825: Credit transfer permission not found.
  • KT-CT-3827: The ledger is not valid.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TerminateCreditTransferPermissionInput!)

Input fields for terminating a credit transfer permission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

validTo (DateTime)

Datetime when the credit transfer permission ends.

Mutation

mutation TerminateCreditTransferPermission($input: TerminateCreditTransferPermissionInput!) {
  terminateCreditTransferPermission(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    validTo
  }
}

Response

{
  "data": {
    "terminateCreditTransferPermission": {
      "possibleErrors": [PossibleErrorType],
      "validTo": "2020-01-01T00:00:00.000Z"
    }
  }
}

thirdPartyCompleteDeviceRegistration

Type:ThirdPartyCompleteDeviceRegistration

URL:https://api.octopus.energy/v1/graphql/

Completes the registration of a device if the contract is eligible and the device registration valid.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-4322: Unable to complete registration error.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'thirdPartyCompleteDeviceRegistration' field is deprecated.

This functionality will no longer be available.

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

Arguments

NameDescription

input (CompleteDeviceRegistrationInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (ThirdPartyCompleteDeviceRegistrationType)

The response showing account validity and optional tariff information.

Mutation

mutation ThirdPartyCompleteDeviceRegistration($input: CompleteDeviceRegistrationInput) {
  thirdPartyCompleteDeviceRegistration(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success {
      ...ThirdPartyCompleteDeviceRegistrationTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "thirdPartyCompleteDeviceRegistration": {
      "possibleErrors": [PossibleErrorType],
      "success": ThirdPartyCompleteDeviceRegistrationType
    }
  }
}

transferLeadOpportunities

Type:TransferLeadOpportunities

URL:https://api.octopus.energy/v1/graphql/

Transfer opportunities across leads.

The possible errors that can be raised are:

  • KT-CT-8907: Lead not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TransferLeadOpportunitiesInput!)

Input for transfer opportunities across leads.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunitiesTransferred (Int)

Number of opportunities transferred.

Mutation

mutation TransferLeadOpportunities($input: TransferLeadOpportunitiesInput!) {
  transferLeadOpportunities(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunitiesTransferred
  }
}

Variables

Response

{
  "data": {
    "transferLeadOpportunities": {
      "possibleErrors": [PossibleErrorType],
      "opportunitiesTransferred": 1
    }
  }
}

transferLedgerBalance

Type:TransferLedgerBalance

URL:https://api.octopus.energy/v1/graphql/

Transfer value from a source ledger to a destination ledger. This decreases the balance of the source ledger by the given amount and increases the balance of the destination ledger by the same amount. If the amount is negative, the effect is reversed (the source ledger's balance increases and the destination ledger's balance decreases).

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-CT-3822: Unauthorized.
  • KT-CT-3823: Unauthorized.
  • KT-CT-9701: Balance transfer to same account is not allowed.
  • KT-CT-9702: Balance transfer is not support for debit account with Zero balance.
  • KT-CT-9703: Balance transfer is not supported for debit account.
  • KT-CT-9704: Balance transfer amount should be non-zero.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TransferLedgerBalanceInputType!)

Input fields for processing an account balance transfer.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

balanceTransfer (AccountBalanceTransferType)

Balance transfer details.

Mutation

mutation TransferLedgerBalance($input: TransferLedgerBalanceInputType!) {
  transferLedgerBalance(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    balanceTransfer {
      ...AccountBalanceTransferTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "transferLedgerBalance": {
      "possibleErrors": [PossibleErrorType],
      "balanceTransfer": AccountBalanceTransferType
    }
  }
}

transferLoyaltyPointsBetweenUsers

Type:TransferLoyaltyPointsBetweenUsers

URL:https://api.octopus.energy/v1/graphql/

Transfer Loyalty Point from one account user to another.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9205: Insufficient Loyalty Points.
  • KT-CT-9204: Negative or zero points set.
  • KT-CT-9208: Invalid posted at datetime.
  • KT-CT-9209: Negative Loyalty Points balance.
  • KT-CT-9210: Unhandled Loyalty Points exception.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TransferLoyaltyPointsBetweenUsersInput!)

Input fields for transferring Loyalty Points.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

pointsTransferred (Int)

The number of loyalty points that were transferred.

Mutation

mutation TransferLoyaltyPointsBetweenUsers($input: TransferLoyaltyPointsBetweenUsersInput!) {
  transferLoyaltyPointsBetweenUsers(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    pointsTransferred
  }
}

Response

{
  "data": {
    "transferLoyaltyPointsBetweenUsers": {
      "possibleErrors": [PossibleErrorType],
      "pointsTransferred": 1
    }
  }
}

triggerBoostCharge

Type:PerformBoostCharge

URL:https://api.octopus.energy/v1/graphql/

Initiate a boost charge for an electric vehicle (EV).

This will start charging the EV and will not stop until the battery reaches 100% charged.

If it is not possible to initiate a boost charge, a KT-CT-4357 error will be returned. It may have a boostChargeRefusalReasons extension which lists the reasons why the boost charge was refused. Possible reasons include:

  • BC_DEVICE_NOT_YET_LIVE (device is not yet live)
  • BC_DEVICE_RETIRED (device is retired)
  • BC_DEVICE_SUSPENDED (device is suspended)
  • BC_DEVICE_DISCONNECTED (device is disconnected)
  • BC_DEVICE_NOT_AT_HOME (device is not at home)
  • BC_BOOST_CHARGE_IN_PROGRESS (boost charge already in progress)
  • BC_DEVICE_FULLY_CHARGED (device is already fully charged)

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4356: A boost charge cannot currently be performed.
  • KT-CT-4357: Unable to trigger boost charge.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'triggerBoostCharge' field is deprecated.

Please use 'updateBoostCharge' instead.

- Marked as deprecated on 2025-05-12.
- Scheduled for removal on or after 2026-01-26.

You can read more about this deprecation on:
https://announcements.kraken.tech/announcements/public/607/

Arguments

NameDescription

input (AccountNumberInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation TriggerBoostCharge($input: AccountNumberInput) {
  triggerBoostCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

{
  "input": AccountNumberInput
}

Response

{
  "data": {
    "triggerBoostCharge": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

triggerCollectionProcessMessage

Type:TriggerCollectionProcessMessage

URL:https://api.octopus.energy/v1/graphql/

Trigger a collection process message with safety checks.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (TriggerCollectionProcessMessageInput!)

Input for sending a collection process communication.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

triggerResult (TriggerCollectionProcessMessageOutput)

Details of the triggered communication.

Mutation

mutation TriggerCollectionProcessMessage($input: TriggerCollectionProcessMessageInput!) {
  triggerCollectionProcessMessage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    triggerResult {
      ...TriggerCollectionProcessMessageOutputFragment
    }
  }
}

Response

{
  "data": {
    "triggerCollectionProcessMessage": {
      "possibleErrors": [PossibleErrorType],
      "triggerResult": TriggerCollectionProcessMessageOutput
    }
  }
}

triggerPostUploadOperations

Type:TriggerPostUploadOperations!

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-8710: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

s3Key (String!)

Return fields

NameDescription

Mutation

mutation TriggerPostUploadOperations($s3Key: String!) {
  triggerPostUploadOperations(s3Key: $s3Key) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    operationsTriggered
  }
}

Variables

{
  "s3Key": "abc123"
}

Response

{
  "data": {
    "triggerPostUploadOperations": {
      "possibleErrors": [PossibleErrorType],
      "operationsTriggered": true
    }
  }
}

triggerTestCharge

Type:PerformTestCharge

URL:https://api.octopus.energy/v1/graphql/

Initiate a test charge of an electric vehicle (EV).

This is to ensure that the EV or EVSE (charge point) can be controlled remotely and successfully charged for a short period.

If it is not possible to initiate a test charge, a KT-CT-4355 error will be returned. It may have a testChargeRefusalReasons extension which lists the reasons why the test charge was refused. Possible reasons include:

  • TC_DEVICE_LIVE (device is already live)
  • TC_DEVICE_ONBOARDING_IN_PROGRESS (test dispatch already in progress)
  • TC_DEVICE_RETIRED (device is retired)
  • TC_DEVICE_SUSPENDED (device is suspended)
  • TC_DEVICE_DISCONNECTED (device is disconnected)
  • TC_DEVICE_ALREADY_CHARGING (device is already charging)
  • TC_DEVICE_AWAY_FROM_HOME (device is away from home)
  • TC_DEVICE_NO_LOCATION_CONFIGURED (device has no location configured)
  • TC_DEVICE_LOCATION_UNABLE_TO_IDENTIFY (unable to identify device location)
  • TC_DEVICE_LOCATION_MISSING (device location is missing)

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4362: Device not ready for test charge.
  • KT-CT-4355: Unable to trigger charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AccountNumberInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

krakenflexDevice (KrakenFlexDeviceType)

Mutation

mutation TriggerTestCharge($input: AccountNumberInput) {
  triggerTestCharge(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    krakenflexDevice {
      ...KrakenFlexDeviceTypeFragment
    }
  }
}

Variables

{
  "input": AccountNumberInput
}

Response

{
  "data": {
    "triggerTestCharge": {
      "possibleErrors": [PossibleErrorType],
      "krakenflexDevice": KrakenFlexDeviceType
    }
  }
}

unenrollAccountFromLoyaltyProgram

Type:UnenrollAccountFromLoyaltyProgram

URL:https://api.octopus.energy/v1/graphql/

Unenroll users account from Loyalty program.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-9220: Ineligible loyalty points unenrollment.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UnenrollAccountFromLoyaltyProgramInput!)

The account number to unenroll from the loyalty program.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

outcome (UnenrollAccountFromLoyaltyProgramOutcome)

Outcome of the loyalty points campaign enrollment.

Mutation

mutation UnenrollAccountFromLoyaltyProgram($input: UnenrollAccountFromLoyaltyProgramInput!) {
  unenrollAccountFromLoyaltyProgram(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    outcome {
      ...UnenrollAccountFromLoyaltyProgramOutcomeFragment
    }
  }
}

Response

{
  "data": {
    "unenrollAccountFromLoyaltyProgram": {
      "possibleErrors": [PossibleErrorType],
      "outcome": UnenrollAccountFromLoyaltyProgramOutcome
    }
  }
}

Return fields

NameDescription

Mutation

mutation UnlinkUserFromLine {
  unlinkUserFromLine {
    ... on LineUnlinkedResponse {
      ...LineUnlinkedResponseFragment
    }
    ... on LinkTokenNotFound {
      ...LinkTokenNotFoundFragment
    }
    ... on LineCommonError {
      ...LineCommonErrorFragment
    }
  }
}

Response

{
  "data": {
    "unlinkUserFromLine": LineUnlinkedResponse
  }
}

updateAccountBillingAddress

Type:UpdateAccountBillingAddress

URL:https://api.octopus.energy/v1/graphql/

Update the account billing address.

The possible errors that can be raised are:

  • KT-CT-4145: Invalid address.
  • KT-CT-7123: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AccountBillingAddressInput!)

Input variables needed for updating an account billing address.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

The updated account.

Mutation

mutation UpdateAccountBillingAddress($input: AccountBillingAddressInput!) {
  updateAccountBillingAddress(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

updateAccountBillingEmail

Type:UpdateAccountBillingEmail

URL:https://api.octopus.energy/v1/graphql/

Update account billing email.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-4122: Invalid email.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAccountBillingEmailInput!)

Input fields for updating billing email for an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountInterface)

Account that was changed.

Mutation

mutation UpdateAccountBillingEmail($input: UpdateAccountBillingEmailInput!) {
  updateAccountBillingEmail(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountInterfaceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAccountBillingEmail": {
      "possibleErrors": [PossibleErrorType],
      "account": AccountInterface
    }
  }
}

updateAccountConsents

Type:UpdateAccountConsents

URL:https://api.octopus.energy/v1/graphql/

Update the consents of an account

The possible errors that can be raised are:

  • KT-CT-9014: Duplicate consent.
  • KT-CT-9016: Consent management not enabled.
  • KT-CT-9017: Consent type not found.
  • KT-CT-9018: Account not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

accountNumber (String!)

The account number to update consents for.

consents ([ConsentInput]!)

Consents to update for account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

consents ([ConsentType!]!)

Consents linked to this account.

Mutation

mutation UpdateAccountConsents(
  $accountNumber: String!,
  $consents: [ConsentInput]!
) {
  updateAccountConsents(
    accountNumber: $accountNumber,
    consents: $consents
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    consents {
      ...ConsentTypeFragment
    }
  }
}

Variables

{
  "accountNumber": "abc123",
  "consents": ConsentInput
}

Response

{
  "data": {
    "updateAccountConsents": {
      "possibleErrors": [PossibleErrorType],
      "consents": ConsentType
    }
  }
}

updateAccountReference

Type:UpdateAccountReference

URL:https://api.octopus.energy/v1/graphql/

Update an account reference.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-8310: Invalid data.
  • KT-CT-8311: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (AccountReferenceInput!)

Input fields for updating an account reference.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReference (AccountReferenceType)

Mutation

mutation UpdateAccountReference($input: AccountReferenceInput!) {
  updateAccountReference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReference {
      ...AccountReferenceTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAccountReference": {
      "possibleErrors": [PossibleErrorType],
      "accountReference": AccountReferenceType
    }
  }
}

updateAccountReferralStatus

Type:UpdateAccountReferralStatus

URL:https://api.octopus.energy/v1/graphql/

Update the status of an account referral.

The possible errors that can be raised are:

  • KT-CT-6712: Invalid reference.
  • KT-CT-6732: Invalid referral status transition.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAccountReferralStatusInput!)

Input fields for updating the status of an account referral.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountReferral (ReferralType)

The updated account referral instance.

Mutation

mutation UpdateAccountReferralStatus($input: UpdateAccountReferralStatusInput!) {
  updateAccountReferralStatus(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountReferral {
      ...ReferralTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAccountReferralStatus": {
      "possibleErrors": [PossibleErrorType],
      "accountReferral": ReferralType
    }
  }
}

updateAccountUserConsents

Type:UpdateAccountUserConsents

URL:https://api.octopus.energy/v1/graphql/

Update the consents of an account user (the authenticated user)

The possible errors that can be raised are:

  • KT-CT-9014: Duplicate consent.
  • KT-CT-9016: Consent management not enabled.
  • KT-CT-9017: Consent type not found.
  • KT-CT-1111: Unauthorized.
  • KT-CT-5421: Account user not found.
  • KT-CT-5422: Invalid data.
  • KT-CT-1605: Invalid input.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

consents ([ConsentTypeInput])

Consents to update for account user.

userNumber (String)

User number of the account user to update consents for. Only needed if the viewer is an organization.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

accountUserConsents (AccountUserConsents)

All the consents for an account user.

Mutation

mutation UpdateAccountUserConsents(
  $consents: [ConsentTypeInput],
  $userNumber: String
) {
  updateAccountUserConsents(
    consents: $consents,
    userNumber: $userNumber
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    accountUserConsents {
      ...AccountUserConsentsFragment
    }
  }
}

Variables

{
  "consents": ConsentTypeInput,
  "userNumber": "abc123"
}

Response

{
  "data": {
    "updateAccountUserConsents": {
      "possibleErrors": [PossibleErrorType],
      "accountUserConsents": AccountUserConsents
    }
  }
}

updateActivePurchase

Type:UpdateActivePurchase

URL:https://api.octopus.energy/v1/graphql/

Update an active purchase.

The possible errors that can be raised are:

  • KT-CT-8225: Received an invalid purchaseId.
  • KT-CT-8226: The provided purchase is not active.
  • KT-CT-8206: Invalid data.
  • KT-CT-8227: Available grants could not be applied.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdatePurchaseInput!)

Input fields for updating an active purchase.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

goodsPurchase (GoodsPurchase)

Goods purchase updated.

Mutation

mutation UpdateActivePurchase($input: UpdatePurchaseInput!) {
  updateActivePurchase(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    goodsPurchase {
      ...GoodsPurchaseFragment
    }
  }
}

Variables

{
  "input": UpdatePurchaseInput
}

Response

{
  "data": {
    "updateActivePurchase": {
      "possibleErrors": [PossibleErrorType],
      "goodsPurchase": GoodsPurchase
    }
  }
}

Type:UpdateAffiliateLink!

URL:https://api.octopus.energy/v1/graphql/

Update an existing affiliate link.

The possible errors that can be raised are:

  • KT-CT-7711: Invalid data.
  • KT-CT-7713: Invalid data.
  • KT-CT-7714: Invalid data.
  • KT-CT-7715: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAffiliateLinkInputType!)

Input fields for Updating an existing affiliate link.

Return fields

NameDescription

Mutation

mutation UpdateAffiliateLink($input: UpdateAffiliateLinkInputType!) {
  updateAffiliateLink(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    affiliateLink {
      ...AffiliateLinkTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAffiliateLink": {
      "possibleErrors": [PossibleErrorType],
      "affiliateLink": AffiliateLinkType
    }
  }
}

updateAffiliateOrganisation

Type:UpdateAffiliateOrganisation!

URL:https://api.octopus.energy/v1/graphql/

Update an existing affiliate organisation.

The possible errors that can be raised are:

  • KT-CT-7717: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAffiliateOrganisationInputType!)

Input fields for Updating an existing affiliate organisation.

Return fields

NameDescription

Mutation

mutation UpdateAffiliateOrganisation($input: UpdateAffiliateOrganisationInputType!) {
  updateAffiliateOrganisation(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    affiliateOrganisation {
      ...AffiliateOrganisationTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateAffiliateOrganisation": {
      "possibleErrors": [PossibleErrorType],
      "affiliateOrganisation": AffiliateOrganisationType
    }
  }
}

updateAgentAuxiliaryStatus

Type:UpdateAgentAuxiliaryStatus

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7813: Support user not found with that username.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAgentAuxiliaryStatusInput!)

The input data for this mutation.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

success (Boolean)

Whether the auxiliary status was successfully updated.

Mutation

mutation UpdateAgentAuxiliaryStatus($input: UpdateAgentAuxiliaryStatusInput!) {
  updateAgentAuxiliaryStatus(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    success
  }
}

Variables

Response

{
  "data": {
    "updateAgentAuxiliaryStatus": {
      "possibleErrors": [PossibleErrorType],
      "success": true
    }
  }
}

updateAgreementPeriod

Type:UpdateAgreementPeriod

URL:https://api.octopus.energy/v1/graphql/

Update the period of an agreement.

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-1501: Agreement not found.
  • KT-CT-1503: Agreement validto date must be later than validfrom date.
  • KT-CT-1504: Account does not match with the agreement.
  • KT-CT-1505: Unable to edit agreement.
  • KT-CT-1506: Agreement period is not within the supply and property period.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAgreementPeriodInput!)

Input for updating the agreement period.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountType)

Account responsible for the update agreement.

Mutation

mutation UpdateAgreementPeriod($input: UpdateAgreementPeriodInput!) {
  updateAgreementPeriod(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Variables

Response

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

updateAgreementRescission

Type:UpdateAgreementRescission

URL:https://api.octopus.energy/v1/graphql/

Update an agreement rescission.

The possible errors that can be raised are:

  • KT-CT-14101: Agreement rescission not found.
  • KT-CT-14102: Cannot update completed agreement rescission.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAgreementRescissionInput!)

Input fields for updating an agreement rescission.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreementRescission (AgreementRescissionType)

The updated agreement rescission instance.

Mutation

mutation UpdateAgreementRescission($input: UpdateAgreementRescissionInput!) {
  updateAgreementRescission(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreementRescission {
      ...AgreementRescissionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAgreementRescission": {
      "possibleErrors": [PossibleErrorType],
      "agreementRescission": AgreementRescissionType
    }
  }
}

updateAgreementRollover

Type:UpdateAgreementRollover

URL:https://api.octopus.energy/v1/graphql/

Update an agreement rollover.

The possible errors that can be raised are:

  • KT-CT-4910: No product exists with the given input.
  • KT-CT-13705: Agreement rollover not found.
  • KT-CT-13706: Agreement rollover has an invalid status for this operation.
  • KT-CT-13707: Agreement rollover has an invalid type for this operation.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAgreementRolloverInput!)

Input for updating an agreement rollover.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

agreementRollover (AgreementRolloverType)

The update agreement rollover.

Mutation

mutation UpdateAgreementRollover($input: UpdateAgreementRolloverInput!) {
  updateAgreementRollover(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    agreementRollover {
      ...AgreementRolloverTypeFragment
    }
  }
}

Variables

Response

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

updateApiException

Type:UpdateAPIException

URL:https://api.octopus.energy/v1/graphql/

Mutation to update an existing APIException instance.

The possible errors that can be raised are:

  • KT-CT-7804: No fields present in the input for updating the APIException.
  • KT-CT-7803: Received an invalid apiExceptionId.
  • KT-CT-7809: Update results in no changes to API Exception.
  • KT-CT-7805: Too many tags associated with this API Exception.
  • KT-CT-7806: Cannot create duplicate tags for the same API exception.
  • KT-CT-7801: Received an invalid operationsTeamId.
  • KT-CT-7811: Received an invalid assignedUserId.
  • KT-CT-7812: Support user is inactive.
  • KT-CT-7814: Received an invalid accountNumber.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAPIExceptionInput!)

Input fields for updating an API exception.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiException (APIExceptionType)

The updated APIException.

Mutation

mutation UpdateApiException($input: UpdateAPIExceptionInput!) {
  updateApiException(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiException {
      ...APIExceptionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateApiException": {
      "possibleErrors": [PossibleErrorType],
      "apiException": APIExceptionType
    }
  }
}

updateApiExceptionNote

Type:UpdateAPIExceptionNote

URL:https://api.octopus.energy/v1/graphql/

Mutation to update an existing APIExceptionNote instance.

The possible errors that can be raised are:

  • KT-CT-7807: Received an invalid apiExceptionNoteId.
  • KT-CT-7808: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAPIExceptionNoteInput!)

Input fields for creating an API exception note.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

apiException (APIExceptionType)

The updates APIExceptionNote.

Mutation

mutation UpdateApiExceptionNote($input: UpdateAPIExceptionNoteInput!) {
  updateApiExceptionNote(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    apiException {
      ...APIExceptionTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateApiExceptionNote": {
      "possibleErrors": [PossibleErrorType],
      "apiException": APIExceptionType
    }
  }
}

updateAutoTopUpAmount

Type:UpdateAutoTopUpAmount

URL:https://api.octopus.energy/v1/graphql/

Change the auto top up amount for the payment schedule.

The possible errors that can be raised are:

  • KT-CT-3815: No active payment schedule found for this account.
  • KT-CT-3941: Invalid data.
  • KT-CT-3942: An unexpected error occurred.
  • KT-CT-3947: An unexpected error occurred.
  • KT-CT-3953: The payment schedule is not a balance triggered schedule.
  • KT-CT-3820: Received both ledger ID and number.
  • KT-CT-3821: Received neither ledger ID nor ledger number.
  • KT-CT-3822: Unauthorized.
  • KT-CT-4123: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateAutoTopUpAmountInput!)

Input fields for updating the auto-top-up amount for a schedule.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

schedule (PaymentScheduleType)

The new schedule created.

Mutation

mutation UpdateAutoTopUpAmount($input: UpdateAutoTopUpAmountInput!) {
  updateAutoTopUpAmount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    schedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateAutoTopUpAmount": {
      "possibleErrors": [PossibleErrorType],
      "schedule": PaymentScheduleType
    }
  }
}

updateBoostCharge

Type:SmartFlexDeviceInterface

URL:https://api.octopus.energy/v1/graphql/

Update the boost charge for a specific device.

If it is not possible to initiate a boost charge, a KT-CT-4357 error will be returned. It may have a boostChargeRefusalReasons extension which lists the reasons why the boost charge was refused. Possible reasons include:

  • BC_DEVICE_NOT_YET_LIVE (device is not yet live)
  • BC_DEVICE_RETIRED (device is retired)
  • BC_DEVICE_SUSPENDED (device is suspended)
  • BC_DEVICE_DISCONNECTED (device is disconnected)
  • BC_DEVICE_NOT_AT_HOME (device is not at home)
  • BC_BOOST_CHARGE_IN_PROGRESS (boost charge already in progress)
  • BC_DEVICE_FULLY_CHARGED (device is already fully charged)

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4354: Unable to cancel boost charge.
  • KT-CT-4356: A boost charge cannot currently be performed.
  • KT-CT-4357: Unable to trigger boost charge.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateBoostChargeInput)

Return fields

NameDescription

id (ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

name (String)

The user-friendly name for the device.

deviceType (KrakenFlexDeviceTypes!)

The type of device.

provider (ProviderChoices!)

The third-party that enables control of this device.

integrationDeviceId (String)

The third-party integration device ID.

status (SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

propertyId (String)

The id of the property linked to the device.

alerts ([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

onboardingWizard (SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferences (SmartFlexDevicePreferencesInterface)

The device's preference details.

preferenceSetting (FlexDevicePreferenceSettingInterface)

The preference setting for this device.

reAuthenticationState (DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

Mutation

mutation UpdateBoostCharge($input: UpdateBoostChargeInput) {
  updateBoostCharge(input: $input) {
    id
    name
    deviceType
    provider
    integrationDeviceId
    status {
      ...SmartFlexDeviceStatusInterfaceFragment
    }
    propertyId
    alerts {
      ...SmartFlexDeviceAlertInterfaceFragment
    }
    onboardingWizard {
      ...SmartFlexOnboardingWizardFragment
    }
    preferences {
      ...SmartFlexDevicePreferencesInterfaceFragment
    }
    preferenceSetting {
      ...FlexDevicePreferenceSettingInterfaceFragment
    }
    reAuthenticationState {
      ...DeviceReAuthenticationInterfaceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateBoostCharge": {
      "id": "abc123",
      "name": "abc123",
      "deviceType": "BATTERIES",
      "provider": "BYD",
      "integrationDeviceId": "abc123",
      "status": SmartFlexDeviceStatusInterface,
      "propertyId": "abc123",
      "alerts": SmartFlexDeviceAlertInterface,
      "onboardingWizard": SmartFlexOnboardingWizard,
      "preferences": SmartFlexDevicePreferencesInterface,
      "preferenceSetting": FlexDevicePreferenceSettingInterface,
      "reAuthenticationState": DeviceReAuthenticationInterface
    }
  }
}

updateCampaignAccountExpiryDate

Type:UpdateCampaignAccountExpiryDate

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4123: Unauthorized.
  • KT-CT-7428: Failed to update campaign account.
  • KT-CT-7429: No active campaign account found for the given account and campaign.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateCampaignAccountExpiryDateInput!)

Input variables needed for updating a campaign account expiry date.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

campaignAccount (AccountCampaignType)

The campaign account with the updated expiry date.

Mutation

mutation UpdateCampaignAccountExpiryDate($input: UpdateCampaignAccountExpiryDateInput!) {
  updateCampaignAccountExpiryDate(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    campaignAccount {
      ...AccountCampaignTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateCampaignAccountExpiryDate": {
      "possibleErrors": [PossibleErrorType],
      "campaignAccount": AccountCampaignType
    }
  }
}

updateCollectionProcessRecordToActive

Type:UpdateCollectionProcessRecordToActive

URL:https://api.octopus.energy/v1/graphql/

Update the Collection Process Record from raised status to active.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11202: No External reference provided.
  • KT-CT-11207: Unsupported external source for collection process.
  • KT-CT-11218: External reference cannot be updated once it has been set.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateCollectionProcessRecordToActiveInputType!)

Input variables needed for making a collection process record active.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessActivated (UpdateCollectionProcessRecordToActiveOutputType)

Whether the collection process was successfully updated.

Mutation

mutation UpdateCollectionProcessRecordToActive($input: UpdateCollectionProcessRecordToActiveInputType!) {
  updateCollectionProcessRecordToActive(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessActivated {
      ...UpdateCollectionProcessRecordToActiveOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateCollectionProcessRecordToActive": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessActivated": UpdateCollectionProcessRecordToActiveOutputType
    }
  }
}

updateCollectionProcessRecordToComplete

Type:UpdateCollectionProcessRecordToComplete

URL:https://api.octopus.energy/v1/graphql/

Update the Collection Process Record from raised status to complete.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-11201: No Collection Process Records associated with id.
  • KT-CT-11203: No Completion reason provided.
  • KT-CT-11204: No Completion details provided.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateCollectionProcessRecordToCompleteInputType!)

Input variables needed for making a collection process record complete.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

collectionProcessComplete (UpdateCollectionProcessRecordToCompleteOutputType)

Whether the collection process was successfully updated.

Mutation

mutation UpdateCollectionProcessRecordToComplete($input: UpdateCollectionProcessRecordToCompleteInputType!) {
  updateCollectionProcessRecordToComplete(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    collectionProcessComplete {
      ...UpdateCollectionProcessRecordToCompleteOutputTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateCollectionProcessRecordToComplete": {
      "possibleErrors": [PossibleErrorType],
      "collectionProcessComplete": UpdateCollectionProcessRecordToCompleteOutputType
    }
  }
}

updateCommsDeliveryPreference

Type:UpdateCommsDeliveryPreference

URL:https://api.octopus.energy/v1/graphql/

Update account communication delivery preference.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-4136: Cannot set comms preference to email when account has no email.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateCommsDeliveryPreferenceInput!)

Input fields for updating comms delivery preferences for an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

account (AccountInterface)

Mutation

mutation UpdateCommsDeliveryPreference($input: UpdateCommsDeliveryPreferenceInput!) {
  updateCommsDeliveryPreference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountInterfaceFragment
    }
  }
}

Response

{
  "data": {
    "updateCommsDeliveryPreference": {
      "possibleErrors": [PossibleErrorType],
      "account": AccountInterface
    }
  }
}

updateCommsHubStatus

Type:UpdateCommsHubStatus

URL:https://api.octopus.energy/v1/graphql/

Update the status of the CHF (Communictions Hub).

The possible errors that can be raised are:

  • KT-GB-4026: Either the mpxn or mpan input must be provided.
  • KT-GB-4027: If both mpxn and mpan are provided, they must match.
  • KT-GB-4028: Please input a valid MPxN.
  • KT-GB-4029: Meter point not found for MPAN.
  • KT-GB-4030: Meter point not found for MPRN.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateCommsHubStatusInput!)

Input fields for updating the status of the communications hub.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

requestReference (String)

The id of the Request object in Kraken.

Mutation

mutation UpdateCommsHubStatus($input: UpdateCommsHubStatusInput!) {
  updateCommsHubStatus(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    requestReference
  }
}

Variables

Response

{
  "data": {
    "updateCommsHubStatus": {
      "possibleErrors": [PossibleErrorType],
      "requestReference": "abc123"
    }
  }
}

updateCommsPreferences

Type:UpdateAccountUserCommsPreferencesMutationPayload

URL:https://api.octopus.energy/v1/graphql/

Update the comms preferences of the account user (the authenticated user).

Arguments

NameDescription

input (UpdateAccountUserCommsPreferencesMutationInput!)

Return fields

NameDescription

isOptedInToClientMessages (Boolean)

isOptedInToOfferMessages (Boolean)

isOptedInToRecommendedMessages (Boolean)

isOptedInToUpdateMessages (Boolean)

isOptedInToThirdPartyMessages (Boolean)

isOptedInMeterReadingConfirmations (Boolean)

isOptedInToSmsMessages (Boolean)

isUsingInvertedEmailColours (Boolean)

fontSizeMultiplier (Float)

emailFormat (String)

preferredHoldMusic (String)

errors ([ErrorType])

commsPreferences (AccountUserCommsPreferences)

clientMutationId (String)

Mutation

mutation UpdateCommsPreferences($input: UpdateAccountUserCommsPreferencesMutationInput!) {
  updateCommsPreferences(input: $input) {
    isOptedInToClientMessages
    isOptedInToOfferMessages
    isOptedInToRecommendedMessages
    isOptedInToUpdateMessages
    isOptedInToThirdPartyMessages
    isOptedInMeterReadingConfirmations
    isOptedInToSmsMessages
    isUsingInvertedEmailColours
    fontSizeMultiplier
    emailFormat
    preferredHoldMusic
    errors {
      ...ErrorTypeFragment
    }
    commsPreferences {
      ...AccountUserCommsPreferencesFragment
    }
    clientMutationId
  }
}

Response

{
  "data": {
    "updateCommsPreferences": {
      "isOptedInToClientMessages": true,
      "isOptedInToOfferMessages": true,
      "isOptedInToRecommendedMessages": true,
      "isOptedInToUpdateMessages": true,
      "isOptedInToThirdPartyMessages": true,
      "isOptedInMeterReadingConfirmations": true,
      "isOptedInToSmsMessages": true,
      "isUsingInvertedEmailColours": true,
      "fontSizeMultiplier": 1.0,
      "emailFormat": "abc123",
      "preferredHoldMusic": "abc123",
      "errors": [ErrorType],
      "commsPreferences": AccountUserCommsPreferences,
      "clientMutationId": "abc123"
    }
  }
}

updateDcaProceeding

Type:UpdateDCAProceeding

URL:https://api.octopus.energy/v1/graphql/

Update the status of a DCA proceeding.

The possible errors that can be raised are:

  • KT-CT-11610: unable to edit the debt collection proceeding.
  • KT-CT-11604: Active debt collection proceeding does not exist for account.
  • KT-CT-11605: Multiple active Proceeding's found for same agency and campaign on account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateDCAProceedingInputType!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

dcaProceedingUpdateStatus (DCAProceedingUpdateStatus)

Whether the update has been applied.

Mutation

mutation UpdateDcaProceeding($input: UpdateDCAProceedingInputType!) {
  updateDcaProceeding(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    dcaProceedingUpdateStatus {
      ...DCAProceedingUpdateStatusFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateDcaProceeding": {
      "possibleErrors": [PossibleErrorType],
      "dcaProceedingUpdateStatus": DCAProceedingUpdateStatus
    }
  }
}

updateDeviceGridExport

Type:SmartFlexDeviceInterface

URL:https://api.octopus.energy/v1/graphql/

Update the grid export preference for a device.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4386: An error occurred while trying to update your device's grid export status.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (UpdateDeviceGridExportInput)

Return fields

NameDescription

id (ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

name (String)

The user-friendly name for the device.

deviceType (KrakenFlexDeviceTypes!)

The type of device.

provider (ProviderChoices!)

The third-party that enables control of this device.

integrationDeviceId (String)

The third-party integration device ID.

status (SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

propertyId (String)

The id of the property linked to the device.

alerts ([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

onboardingWizard (SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferences (SmartFlexDevicePreferencesInterface)

The device's preference details.

preferenceSetting (FlexDevicePreferenceSettingInterface)

The preference setting for this device.

reAuthenticationState (DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

Mutation

mutation UpdateDeviceGridExport($input: UpdateDeviceGridExportInput) {
  updateDeviceGridExport(input: $input) {
    id
    name
    deviceType
    provider
    integrationDeviceId
    status {
      ...SmartFlexDeviceStatusInterfaceFragment
    }
    propertyId
    alerts {
      ...SmartFlexDeviceAlertInterfaceFragment
    }
    onboardingWizard {
      ...SmartFlexOnboardingWizardFragment
    }
    preferences {
      ...SmartFlexDevicePreferencesInterfaceFragment
    }
    preferenceSetting {
      ...FlexDevicePreferenceSettingInterfaceFragment
    }
    reAuthenticationState {
      ...DeviceReAuthenticationInterfaceFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateDeviceGridExport": {
      "id": "abc123",
      "name": "abc123",
      "deviceType": "BATTERIES",
      "provider": "BYD",
      "integrationDeviceId": "abc123",
      "status": SmartFlexDeviceStatusInterface,
      "propertyId": "abc123",
      "alerts": SmartFlexDeviceAlertInterface,
      "onboardingWizard": SmartFlexOnboardingWizard,
      "preferences": SmartFlexDevicePreferencesInterface,
      "preferenceSetting": FlexDevicePreferenceSettingInterface,
      "reAuthenticationState": DeviceReAuthenticationInterface
    }
  }
}

updateDeviceSmartControl

Type:SmartFlexDeviceInterface

URL:https://api.octopus.energy/v1/graphql/

Suspends or resumes the smart control of a specific device. For some devices, this will also adjust smart control of related devices. e.g. suspending one zone in a multi-zone heat pump system will suspend all zones in that system.

The possible errors that can be raised are:

  • KT-CT-4313: Could not find KrakenFlex device.
  • KT-CT-4314: Unable to get provider details.
  • KT-CT-4387: Could not find the KrakenFlex controller device.
  • KT-CT-4358: Unable to suspend device control.
  • KT-CT-4359: Unable to resume device control.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SmartControlInput!)

The input to action the desired device control, i.e. suspend or unsuspend a device.

Return fields

NameDescription

id (ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

name (String)

The user-friendly name for the device.

deviceType (KrakenFlexDeviceTypes!)

The type of device.

provider (ProviderChoices!)

The third-party that enables control of this device.

integrationDeviceId (String)

The third-party integration device ID.

status (SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

propertyId (String)

The id of the property linked to the device.

alerts ([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

onboardingWizard (SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferences (SmartFlexDevicePreferencesInterface)

The device's preference details.

preferenceSetting (FlexDevicePreferenceSettingInterface)

The preference setting for this device.

reAuthenticationState (DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

Mutation

mutation UpdateDeviceSmartControl($input: SmartControlInput!) {
  updateDeviceSmartControl(input: $input) {
    id
    name
    deviceType
    provider
    integrationDeviceId
    status {
      ...SmartFlexDeviceStatusInterfaceFragment
    }
    propertyId
    alerts {
      ...SmartFlexDeviceAlertInterfaceFragment
    }
    onboardingWizard {
      ...SmartFlexOnboardingWizardFragment
    }
    preferences {
      ...SmartFlexDevicePreferencesInterfaceFragment
    }
    preferenceSetting {
      ...FlexDevicePreferenceSettingInterfaceFragment
    }
    reAuthenticationState {
      ...DeviceReAuthenticationInterfaceFragment
    }
  }
}

Variables

{
  "input": SmartControlInput
}

Response

{
  "data": {
    "updateDeviceSmartControl": {
      "id": "abc123",
      "name": "abc123",
      "deviceType": "BATTERIES",
      "provider": "BYD",
      "integrationDeviceId": "abc123",
      "status": SmartFlexDeviceStatusInterface,
      "propertyId": "abc123",
      "alerts": SmartFlexDeviceAlertInterface,
      "onboardingWizard": SmartFlexOnboardingWizard,
      "preferences": SmartFlexDevicePreferencesInterface,
      "preferenceSetting": FlexDevicePreferenceSettingInterface,
      "reAuthenticationState": DeviceReAuthenticationInterface
    }
  }
}

updateDocumentAccessibilityPreference

Type:UpdateDocumentAccessibilityPreference!

URL:https://api.octopus.energy/v1/graphql/

Update the document accessibility preference for an account.

The possible errors that can be raised are:

  • KT-CT-4123: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateDocumentAccessibilityPreferenceInput!)

Input fields for updating document accessibility preference for an account.

Return fields

NameDescription

Mutation

mutation UpdateDocumentAccessibilityPreference($input: UpdateDocumentAccessibilityPreferenceInput!) {
  updateDocumentAccessibilityPreference(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    account {
      ...AccountTypeFragment
    }
  }
}

Response

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

updateIsChargingDurationCapped

Type:SmartFlexDeviceInterface

URL:https://api.octopus.energy/v1/graphql/

Update the charging duration cap preference for a device.

The possible errors that can be raised are:

  • KT-CT-1111: Unauthorized.
  • KT-CT-4389: An error occurred while trying to update your device's isChargingDurationCapped setting.
  • KT-CT-4390: An error occurred while trying to update your device's preference.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (UpdateIsChargingDurationCappedInput)

Input fields for updating the charging duration cap preference.

Return fields

NameDescription

id (ID!)

A UUID that identifies this device registration. Re-registering this device will result in a different ID.

name (String)

The user-friendly name for the device.

deviceType (KrakenFlexDeviceTypes!)

The type of device.

provider (ProviderChoices!)

The third-party that enables control of this device.

integrationDeviceId (String)

The third-party integration device ID.

status (SmartFlexDeviceStatusInterface!)

Information about the current status of this device.

propertyId (String)

The id of the property linked to the device.

alerts ([SmartFlexDeviceAlertInterface])

Active alert message(s) for a device, showing the latest first.

onboardingWizard (SmartFlexOnboardingWizard)

The current onboarding wizard for a device.

preferences (SmartFlexDevicePreferencesInterface)

The device's preference details.

preferenceSetting (FlexDevicePreferenceSettingInterface)

The preference setting for this device.

reAuthenticationState (DeviceReAuthenticationInterface)

The re-authentication state of this device, if applicable.

Mutation

mutation UpdateIsChargingDurationCapped($input: UpdateIsChargingDurationCappedInput) {
  updateIsChargingDurationCapped(input: $input) {
    id
    name
    deviceType
    provider
    integrationDeviceId
    status {
      ...SmartFlexDeviceStatusInterfaceFragment
    }
    propertyId
    alerts {
      ...SmartFlexDeviceAlertInterfaceFragment
    }
    onboardingWizard {
      ...SmartFlexOnboardingWizardFragment
    }
    preferences {
      ...SmartFlexDevicePreferencesInterfaceFragment
    }
    preferenceSetting {
      ...FlexDevicePreferenceSettingInterfaceFragment
    }
    reAuthenticationState {
      ...DeviceReAuthenticationInterfaceFragment
    }
  }
}

Response

{
  "data": {
    "updateIsChargingDurationCapped": {
      "id": "abc123",
      "name": "abc123",
      "deviceType": "BATTERIES",
      "provider": "BYD",
      "integrationDeviceId": "abc123",
      "status": SmartFlexDeviceStatusInterface,
      "propertyId": "abc123",
      "alerts": SmartFlexDeviceAlertInterface,
      "onboardingWizard": SmartFlexOnboardingWizard,
      "preferences": SmartFlexDevicePreferencesInterface,
      "preferenceSetting": FlexDevicePreferenceSettingInterface,
      "reAuthenticationState": DeviceReAuthenticationInterface
    }
  }
}

updateLeadAssignment

Type:UpdateLeadAssignment

URL:https://api.octopus.energy/v1/graphql/

Update assignment fields for a Lead.

The possible errors that can be raised are:

  • KT-CT-8907: Lead not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateLeadAssignmentInput!)

Fields for updating a lead assignment.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

updatedLeadData (JSONString)

Arguments passed.

Mutation

mutation UpdateLeadAssignment($input: UpdateLeadAssignmentInput!) {
  updateLeadAssignment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    updatedLeadData
  }
}

Variables

Response

{
  "data": {
    "updateLeadAssignment": {
      "possibleErrors": [PossibleErrorType],
      "updatedLeadData": {"key": "value"}
    }
  }
}

updateLeadDetails

Type:UpdateLeadDetails

URL:https://api.octopus.energy/v1/graphql/

Update the details of a lead.

The possible errors that can be raised are:

  • KT-CT-8907: Lead not found.
  • KT-CT-8912: Funnel not found.
  • KT-CT-8931: Extra detail value is invalid.
  • KT-CT-8935: National ID bad input.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateLeadDetailsInput!)

Fields for updating a lead's details.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

updatedLeadData (JSONString)

Arguments passed.

Mutation

mutation UpdateLeadDetails($input: UpdateLeadDetailsInput!) {
  updateLeadDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    updatedLeadData
  }
}

Variables

Response

{
  "data": {
    "updateLeadDetails": {
      "possibleErrors": [PossibleErrorType],
      "updatedLeadData": {"key": "value"}
    }
  }
}

updateLeadStage

Type:UpdateLeadStage

URL:https://api.octopus.energy/v1/graphql/

Update the stage of a lead.

The possible errors that can be raised are:

  • KT-CT-8907: Lead not found.
  • KT-CT-8914: Stage not found.
  • KT-CT-8915: Stages are not in the same funnel.
  • KT-CT-8916: Current stage mismatch.
  • KT-CT-8917: Stage transition not allowed.
  • KT-CT-8918: Stage precondition not met.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateLeadStageInput!)

Fields for updating a lead's stage.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

updatedLeadData (JSONString)

Arguments passed.

Mutation

mutation UpdateLeadStage($input: UpdateLeadStageInput!) {
  updateLeadStage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    updatedLeadData
  }
}

Variables

Response

{
  "data": {
    "updateLeadStage": {
      "possibleErrors": [PossibleErrorType],
      "updatedLeadData": {"key": "value"}
    }
  }
}

updateLeaveSupplier

Type:LeaveSupplierUpdated!

URL:https://api.octopus.energy/v1/graphql/

Update an existing leave supplier process.

The possible errors that can be raised are:

  • KT-CT-10304: Mutation not enabled in this environment.
  • KT-CT-10302: Invalid data.
  • KT-CT-10309: Failed to update leave supplier process - the service is not enabled.
  • KT-CT-10310: Failed to update leave supplier process. The process status is not in updatable status.
  • KT-CT-1607: Value cannot be empty.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateLeaveSupplierInput!)

Return fields

NameDescription

Mutation

mutation UpdateLeaveSupplier($input: UpdateLeaveSupplierInput!) {
  updateLeaveSupplier(input: $input) {
    message
  }
}

Variables

Response

{
  "data": {
    "updateLeaveSupplier": {
      "message": "abc123"
    }
  }
}

updateMessageTags

Type:UpdateMessageTags

URL:https://api.octopus.energy/v1/graphql/

The possible errors that can be raised are:

  • KT-CT-7611: The message was not found.
  • KT-CT-7614: The Ink tag was not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateMessageTagsInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

tags ([InkTag!]!)

Confirmed tags.

Mutation

mutation UpdateMessageTags($input: UpdateMessageTagsInput) {
  updateMessageTags(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    tags {
      ...InkTagFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateMessageTags": {
      "possibleErrors": [PossibleErrorType],
      "tags": InkTag
    }
  }
}

updateMetadata

Type:UpdateMetadata

URL:https://api.octopus.energy/v1/graphql/

Update metadata on an object.

The possible errors that can be raised are:

  • KT-CT-4323: Unauthorized.
  • KT-CT-8413: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (MetadataInput!)

Input fields for updating metadata.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

metadata (Metadata)

Mutation

mutation UpdateMetadata($input: MetadataInput!) {
  updateMetadata(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    metadata {
      ...MetadataFragment
    }
  }
}

Variables

{
  "input": MetadataInput
}

Response

{
  "data": {
    "updateMetadata": {
      "possibleErrors": [PossibleErrorType],
      "metadata": Metadata
    }
  }
}

updateNotesOnOpportunity

Type:UpdateNotesOnOpportunity

URL:https://api.octopus.energy/v1/graphql/

Update the notes of an opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateNotesOnOpportunityInput!)

Input to update the note on an opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunityNumber (String)

The number of the opportunity.

Mutation

mutation UpdateNotesOnOpportunity($input: UpdateNotesOnOpportunityInput!) {
  updateNotesOnOpportunity(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunityNumber
  }
}

Variables

Response

{
  "data": {
    "updateNotesOnOpportunity": {
      "possibleErrors": [PossibleErrorType],
      "opportunityNumber": "abc123"
    }
  }
}

updateOfferGroupOnOpportunity

Type:UpdateOfferGroupOnOpportunity

URL:https://api.octopus.energy/v1/graphql/

Update the offer group of an opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateOfferGroupOnOpportunityInput!)

Input to update the offer group on an opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

opportunityNumber (String)

The number of the opportunity.

Mutation

mutation UpdateOfferGroupOnOpportunity($input: UpdateOfferGroupOnOpportunityInput!) {
  updateOfferGroupOnOpportunity(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    opportunityNumber
  }
}

Response

{
  "data": {
    "updateOfferGroupOnOpportunity": {
      "possibleErrors": [PossibleErrorType],
      "opportunityNumber": "abc123"
    }
  }
}

updateOnSiteJobsAppointment

Type:UpdateOnSiteJobsAppointment

URL:https://api.octopus.energy/v1/graphql/

Update an Appointment.

The possible errors that can be raised are:

  • KT-CT-13001: Appointment does not exist.
  • KT-CT-13043: Cannot update appointment as it has terminal status.
  • KT-CT-13044: Failed to update appointment slot.
  • KT-CT-13018: Unable to record cancellationcategory/cancellationsub_category.
  • KT-CT-13039: Cancellation fields require CANCELLED status.
  • KT-CT-13045: Failed to update appointment assets.
  • KT-CT-13050: Cannot provide both supplypointidentifiertomarketnamemapping and supplypointinternal_id when creating assets.
  • KT-CT-13051: Supply point not found when creating assets.
  • KT-CT-13052: Multiple supply points found when creating assets.
  • KT-CT-13062: Datetime field must be timezone-aware.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (OnSiteJobsUpdateAppointmentInput!)

The appointment and its details to update.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsAppointment (OnSiteJobsAppointmentType)

The Appointment that was updated.

Mutation

mutation UpdateOnSiteJobsAppointment($input: OnSiteJobsUpdateAppointmentInput!) {
  updateOnSiteJobsAppointment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsAppointment {
      ...OnSiteJobsAppointmentTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateOnSiteJobsAppointment": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsAppointment": OnSiteJobsAppointmentType
    }
  }
}

updateOnSiteJobsRequest

Type:UpdateOnSiteJobsRequest

URL:https://api.octopus.energy/v1/graphql/

Update an On Site Jobs Request.

The possible errors that can be raised are:

  • KT-CT-13032: Request does not exist.
  • KT-CT-13035: Request is inactive.
  • KT-CT-13038: Invalid request status.
  • KT-CT-13040: Agent not set on request.
  • KT-CT-13045: Failed to update appointment assets.
  • KT-CT-13050: Cannot provide both supplypointidentifiertomarketnamemapping and supplypointinternal_id when creating assets.
  • KT-CT-13051: Supply point not found when creating assets.
  • KT-CT-13052: Multiple supply points found when creating assets.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (OnSiteJobsUpdateRequestInput!)

The input objects required to update a Request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

onSiteJobsRequest (OnSiteJobsRequestType)

The updated request.

Mutation

mutation UpdateOnSiteJobsRequest($input: OnSiteJobsUpdateRequestInput!) {
  updateOnSiteJobsRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    onSiteJobsRequest {
      ...OnSiteJobsRequestTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateOnSiteJobsRequest": {
      "possibleErrors": [PossibleErrorType],
      "onSiteJobsRequest": OnSiteJobsRequestType
    }
  }
}

updateOpportunityAssignment

Type:UpdateOpportunityAssignment

URL:https://api.octopus.energy/v1/graphql/

Update assignment fields for an Opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-8903: Unable to update opportunity.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateOpportunityAssignmentInput!)

Input fields for creating an opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

updatedOpportunityData (JSONString)

Arguments passed.

Mutation

mutation UpdateOpportunityAssignment($input: UpdateOpportunityAssignmentInput!) {
  updateOpportunityAssignment(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    updatedOpportunityData
  }
}

Variables

Response

{
  "data": {
    "updateOpportunityAssignment": {
      "possibleErrors": [PossibleErrorType],
      "updatedOpportunityData": {"key": "value"}
    }
  }
}

updateOpportunityDetails

Type:UpdateOpportunityDetails

URL:https://api.octopus.energy/v1/graphql/

Update the details of an opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-8930: Unable to parse address.
  • KT-CT-8931: Extra detail value is invalid.
  • KT-CT-8912: Funnel not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateOpportunityDetailsInput!)

Input fields for updating the address of a opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

updatedData (JSONString)

Arguments updated.

Mutation

mutation UpdateOpportunityDetails($input: UpdateOpportunityDetailsInput!) {
  updateOpportunityDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    updatedData
  }
}

Variables

Response

{
  "data": {
    "updateOpportunityDetails": {
      "possibleErrors": [PossibleErrorType],
      "updatedData": {"key": "value"}
    }
  }
}

updateOpportunityExtraDetails

Type:UpdateOpportunityExtraDetails

URL:https://api.octopus.energy/v1/graphql/

Update the extra details of a opportunity.

The possible errors that can be raised are:

  • KT-CT-8906: Opportunity not found.
  • KT-CT-8926: Unable to create opportunity.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateExtraDetailsInput!)

Input fields for updating the extra details of a opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

extraDetails (JSONString)

The opportunity's extra details to be added or updated.

Mutation

mutation UpdateOpportunityExtraDetails($input: UpdateExtraDetailsInput!) {
  updateOpportunityExtraDetails(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    extraDetails
  }
}

Variables

Response

{
  "data": {
    "updateOpportunityExtraDetails": {
      "possibleErrors": [PossibleErrorType],
      "extraDetails": {"key": "value"}
    }
  }
}

updateOpportunityStage

Type:UpdateOpportunityStage

URL:https://api.octopus.energy/v1/graphql/

Update the stage of a opportunity.

The possible errors that can be raised are:

  • KT-CT-8903: Unable to update opportunity.
  • KT-CT-8910: Received opportunity current stage is not valid.
  • KT-CT-8914: Stage not found.
  • KT-CT-8915: Stages are not in the same funnel.
  • KT-CT-8916: Current stage mismatch.
  • KT-CT-8917: Stage transition not allowed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateOpportunityStageInput!)

Input fields for updating the state of a opportunity.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

message (String)

Placeholder success message for now.

Mutation

mutation UpdateOpportunityStage($input: UpdateOpportunityStageInput!) {
  updateOpportunityStage(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    message
  }
}

Variables

Response

{
  "data": {
    "updateOpportunityStage": {
      "possibleErrors": [PossibleErrorType],
      "message": "abc123"
    }
  }
}

updatePassword

Type:UpdatePassword

URL:https://api.octopus.energy/v1/graphql/

Update password of the authenticated user.

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-CT-5460: Old password is invalid.
  • KT-CT-5450: Password is invalid.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (UpdatePasswordInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

viewer (AccountUserType)

The currently authenticated user.

This field requires the Authorization header to be set.

Mutation

mutation UpdatePassword($input: UpdatePasswordInput) {
  updatePassword(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    viewer {
      ...AccountUserTypeFragment
    }
  }
}

Variables

{
  "input": UpdatePasswordInput
}

Response

{
  "data": {
    "updatePassword": {
      "possibleErrors": [PossibleErrorType],
      "viewer": AccountUserType
    }
  }
}

updatePaymentSchedulePaymentAmount

Type:UpdatePaymentSchedulePaymentAmount

URL:https://api.octopus.energy/v1/graphql/

Update monthly Direct Debit payment amount. Enter amount in pence

Lower limit: 100p (£1), Upper limit: 100,000p (£1,000)

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-3919: Invalid payment schedule amount.
  • KT-GB-3920: Cannot update payment schedule amount.
  • KT-CT-3922: Ledger not found for the account.
  • KT-CT-3923: Unauthorized.
  • KT-CT-3941: Invalid data.
  • KT-CT-3942: An unexpected error occurred.
  • KT-CT-3822: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdatePaymentSchedulePaymentAmountInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentSchedule (PaymentScheduleType)

Mutation

mutation UpdatePaymentSchedulePaymentAmount($input: UpdatePaymentSchedulePaymentAmountInput!) {
  updatePaymentSchedulePaymentAmount(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentSchedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Response

{
  "data": {
    "updatePaymentSchedulePaymentAmount": {
      "possibleErrors": [PossibleErrorType],
      "paymentSchedule": PaymentScheduleType
    }
  }
}

updatePaymentSchedulePaymentDay

Type:UpdatePaymentSchedulePaymentDay

URL:https://api.octopus.energy/v1/graphql/

Update monthly Direct Debit payment day. Permitted values: 1-28. Not available for business accounts

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-3918: Account not found.
  • KT-GB-3910: This feature is not available to business accounts.
  • KT-GB-3911: Your payment day cannot be changed at this time.
  • KT-GB-3912: Unable to update payment day.
  • KT-CT-3922: Ledger not found for the account.
  • KT-CT-3822: Unauthorized.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (UpdatePaymentSchedulePaymentDayInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

paymentSchedule (PaymentScheduleType)

Mutation

mutation UpdatePaymentSchedulePaymentDay($input: UpdatePaymentSchedulePaymentDayInput!) {
  updatePaymentSchedulePaymentDay(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    paymentSchedule {
      ...PaymentScheduleTypeFragment
    }
  }
}

Response

{
  "data": {
    "updatePaymentSchedulePaymentDay": {
      "possibleErrors": [PossibleErrorType],
      "paymentSchedule": PaymentScheduleType
    }
  }
}

updateProductPrices

Type:UpdateProductPricesOutput!

URL:https://api.octopus.energy/v1/graphql/

Update the prices of a product.

The possible errors that can be raised are:

  • KT-CT-12008: Unable to find the product.
  • KT-CT-12009: Specified product does not have a specification.
  • KT-CT-12010: Unable to find the product's specification.
  • KT-CT-12011: The list of provided prices contains validation errors.
  • KT-CT-12012: Product prices start date is in the past.
  • KT-CT-12013: Product prices would overwrite existing prices.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateProductPricesInput!)

Return fields

NameDescription

Mutation

mutation UpdateProductPrices($input: UpdateProductPricesInput!) {
  updateProductPrices(input: $input) {
    prices {
      ...RateGroupPricesFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateProductPrices": {
      "prices": RateGroupPrices
    }
  }
}

updateSensorDisplayName

Type:UpdateSensorDisplayName

URL:https://api.octopus.energy/v1/graphql/

Update the display name of a sensor.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'updateSensorDisplayName' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

displayName (String!)

The new display name.

euid (ID!)

The EUID of the heat pump controller.

sensorCode (String!)

The code of the sensor to rename (such as 'SENSOR01').

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with updating a sensor attribute.

Mutation

mutation UpdateSensorDisplayName(
  $accountNumber: String!,
  $displayName: String!,
  $euid: ID!,
  $sensorCode: String!
) {
  updateSensorDisplayName(
    accountNumber: $accountNumber,
    displayName: $displayName,
    euid: $euid,
    sensorCode: $sensorCode
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "displayName": "abc123",
  "euid": "abc123",
  "sensorCode": "abc123"
}

Response

{
  "data": {
    "updateSensorDisplayName": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

updateSiteworksRequest

Type:UpdateSiteworksRequest

URL:https://api.octopus.energy/v1/graphql/

Update a Request.

The possible errors that can be raised are:

  • KT-CT-4231: Unauthorized.
  • KT-CT-4232: Status passed is not valid.
  • KT-CT-4233: Request does not exist.
  • KT-CT-4234: Terminated Request cannot be updated.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Deprecated

The 'updateSiteworksRequest' field is deprecated.

Please use updateOnSiteJobsRequest instead.

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

Arguments

NameDescription

input (UpdateSiteworksRequestInputType!)

The input objects required to update a Request.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

siteworksRequest (CoreSiteworksRequestType)

The siteworks request after the update.

Mutation

mutation UpdateSiteworksRequest($input: UpdateSiteworksRequestInputType!) {
  updateSiteworksRequest(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    siteworksRequest {
      ...CoreSiteworksRequestTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateSiteworksRequest": {
      "possibleErrors": [PossibleErrorType],
      "siteworksRequest": CoreSiteworksRequestType
    }
  }
}

updateSmartMeterDataPreferences

Type:UpdateSmartMeterDataPreferences

URL:https://api.octopus.energy/v1/graphql/

Update smart meter data preferences of an account. Includes updating reading frequency and readings analysis consent.

The possible errors that can be raised are:

  • KT-CT-4023: Unauthorized.
  • KT-GB-4015: Cannot update smart meter reading frequency preferences.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateSmartMeterDataPreferencesInput!)

Input fields for updating smart meter data preferences.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

preferencesUpdated (Boolean)

smartMeterDataPreferences (SmartMeterDataPreferencesType)

Mutation

mutation UpdateSmartMeterDataPreferences($input: UpdateSmartMeterDataPreferencesInput!) {
  updateSmartMeterDataPreferences(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    preferencesUpdated
    smartMeterDataPreferences {
      ...SmartMeterDataPreferencesTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateSmartMeterDataPreferences": {
      "possibleErrors": [PossibleErrorType],
      "preferencesUpdated": true,
      "smartMeterDataPreferences": SmartMeterDataPreferencesType
    }
  }
}

updateSpecialCircumstances

Type:UpdateSpecialCircumstances

URL:https://api.octopus.energy/v1/graphql/

Update or create special circumstances for the user, which may entitle them to specialist services

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-5411: Failed to update special circumstance record.
  • KT-CT-9404: Received an invalid accountUserId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateSpecialCircumstancesInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

specialCircumstances (SpecialCircumstancesType)

Return type displaying an AccountUser's special circumstances.

Mutation

mutation UpdateSpecialCircumstances($input: UpdateSpecialCircumstancesInput!) {
  updateSpecialCircumstances(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    specialCircumstances {
      ...SpecialCircumstancesTypeFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateSpecialCircumstances": {
      "possibleErrors": [PossibleErrorType],
      "specialCircumstances": SpecialCircumstancesType
    }
  }
}

updateSpecialCircumstancesAsOrganization

Type:UpdateSpecialCircumstancesAsOrganization

URL:https://api.octopus.energy/v1/graphql/

Update or create special circumstances by an organisation on behalf of a user

This field requires the Authorization header to be set.

The possible errors that can be raised are:

  • KT-GB-5411: Failed to update special circumstance record.
  • KT-CT-9404: Received an invalid accountUserId.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateSpecialCircumstancesAsOrganizationInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

specialCircumstances (SpecialCircumstancesType)

Return type displaying an AccountUser's special circumstances.

Mutation

mutation UpdateSpecialCircumstancesAsOrganization($input: UpdateSpecialCircumstancesAsOrganizationInput!) {
  updateSpecialCircumstancesAsOrganization(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    specialCircumstances {
      ...SpecialCircumstancesTypeFragment
    }
  }
}

Response

{
  "data": {
    "updateSpecialCircumstancesAsOrganization": {
      "possibleErrors": [PossibleErrorType],
      "specialCircumstances": SpecialCircumstancesType
    }
  }
}

updateSsd

Type:UpdateSsd

URL:https://api.octopus.energy/v1/graphql/

Update SSD.

The possible errors that can be raised are:

  • KT-GB-4101: Unable to update SSD for account.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateSsdInput)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

ssdUpdated (Boolean)

estimatedSsd (Date)

Mutation

mutation UpdateSsd($input: UpdateSsdInput) {
  updateSsd(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    ssdUpdated
    estimatedSsd
  }
}

Variables

{
  "input": UpdateSsdInput
}

Response

{
  "data": {
    "updateSsd": {
      "possibleErrors": [PossibleErrorType],
      "ssdUpdated": true,
      "estimatedSsd": "2020-01-01"
    }
  }
}

updateSupplyPointMetadata

Type:UpdateSupplyPointMetadata

URL:https://api.octopus.energy/v1/graphql/

Update metadata for a supply point.

The possible errors that can be raised are:

  • KT-CT-8413: Invalid data.
  • KT-CT-8415: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (SupplyPointMetadataInput!)

Input fields for updating metadata.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

metadata (Metadata)

The updated metadata.

Mutation

mutation UpdateSupplyPointMetadata($input: SupplyPointMetadataInput!) {
  updateSupplyPointMetadata(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    metadata {
      ...MetadataFragment
    }
  }
}

Variables

Response

{
  "data": {
    "updateSupplyPointMetadata": {
      "possibleErrors": [PossibleErrorType],
      "metadata": Metadata
    }
  }
}

updateUser

Type:UpdateUserMutation

URL:https://api.octopus.energy/v1/graphql/

Update the account user details of the authenticated user. Email address changes are silently ignored for OEGB clients.

The possible errors that can be raised are:

  • KT-CT-5413: Invalid data.
  • KT-CT-5414: Invalid data.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (UpdateUserInput!)

Input fields for updating user.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

viewer (AccountUserType)

Mutation

mutation UpdateUser($input: UpdateUserInput!) {
  updateUser(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    viewer {
      ...AccountUserTypeFragment
    }
  }
}

Variables

{
  "input": UpdateUserInput
}

Response

{
  "data": {
    "updateUser": {
      "possibleErrors": [PossibleErrorType],
      "viewer": AccountUserType
    }
  }
}

updateUserDetails

Type:UpdateAccountUserMutationPayload

URL:https://api.octopus.energy/v1/graphql/

DEPRECATED: Please use updateUser instead

Update the account user details of the authenticated user. Only one field can be updated per day. This prevents users from switching accounts to someone else (usually when moving homes) All account changes should be handled by operations or the move out journey. New customers are exempt from this rule for the first 31 days.

Deprecated

The 'updateUserDetails' field is deprecated.


Please use the 'updateUser' mutation instead.


- Marked as deprecated on 2020-10-02.
- Scheduled for removal on or after 2023-04-06.

Arguments

NameDescription

input (UpdateAccountUserMutationInput!)

Return fields

NameDescription

givenName (String)

familyName (String)

pronouns (String)

mobile (String)

email (String)

dateOfBirth (Date)

landline (String)

errors ([ErrorType])

clientMutationId (String)

Mutation

mutation UpdateUserDetails($input: UpdateAccountUserMutationInput!) {
  updateUserDetails(input: $input) {
    givenName
    familyName
    pronouns
    mobile
    email
    dateOfBirth
    landline
    errors {
      ...ErrorTypeFragment
    }
    clientMutationId
  }
}

Variables

Response

{
  "data": {
    "updateUserDetails": {
      "givenName": "abc123",
      "familyName": "abc123",
      "pronouns": "abc123",
      "mobile": "abc123",
      "email": "abc123",
      "dateOfBirth": "2020-01-01",
      "landline": "abc123",
      "errors": [ErrorType],
      "clientMutationId": "abc123"
    }
  }
}

updateWaterSetpoint

Type:UpdateWaterSetpoint

URL:https://api.octopus.energy/v1/graphql/

Set the temperature for the hot water.

The possible errors that can be raised are:

  • KT-CT-4321: Serializer validation error.
  • KT-CT-1113: Disabled GraphQL field requested.

Deprecated

The 'updateWaterSetpoint' field is deprecated.

This mutation has been migrated to Octopus Energy backend. Please see https://api.backend.octopus.energy/v1/graphql.

- Marked as deprecated on 2026-03-18.
- Scheduled for removal on or after 2026-04-30.

Arguments

NameDescription

accountNumber (String!)

The account number.

euid (ID!)

The EUID of the heat pump controller.

setpoint (Int!)

The temperature to set the water to.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

transactionId (ID)

Unique ID associated with this operation.

Mutation

mutation UpdateWaterSetpoint(
  $accountNumber: String!,
  $euid: ID!,
  $setpoint: Int!
) {
  updateWaterSetpoint(
    accountNumber: $accountNumber,
    euid: $euid,
    setpoint: $setpoint
  ) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    transactionId
  }
}

Variables

{
  "accountNumber": "abc123",
  "euid": "abc123",
  "setpoint": 1
}

Response

{
  "data": {
    "updateWaterSetpoint": {
      "possibleErrors": [PossibleErrorType],
      "transactionId": "abc123"
    }
  }
}

Arguments

NameDescription

input (ValidateEmailInput!)

Return fields

NameDescription

isValid (Boolean)

Whether the email is valid or not.

Mutation

mutation ValidateEmail($input: ValidateEmailInput!) {
  validateEmail(input: $input) {
    isValid
  }
}

Variables

{
  "input": ValidateEmailInput
}

Response

{
  "data": {
    "validateEmail": {
      "isValid": true
    }
  }
}

validateMfaDevice

Type:ValidateMfaDevice

URL:https://api.octopus.energy/v1/graphql/

Validate MFA Device for user.

The possible errors that can be raised are:

  • KT-CT-1150: MFA device not found.
  • KT-CT-1151: MFA device not found.
  • KT-CT-1152: Invalid MFA token.
  • KT-CT-1155: Enabled backup device is needed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (ValidateMfaDeviceInputType!)

Input fields for validating a new multi-factor authentication device for the logged user.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

deviceIsValid (Boolean)

Flag to indicate if the device has been verified, so it can be used for MFA.

Mutation

mutation ValidateMfaDevice($input: ValidateMfaDeviceInputType!) {
  validateMfaDevice(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    deviceIsValid
  }
}

Variables

Response

{
  "data": {
    "validateMfaDevice": {
      "possibleErrors": [PossibleErrorType],
      "deviceIsValid": true
    }
  }
}

Arguments

NameDescription

input (ValidatePhoneNumberInput!)

Return fields

NameDescription

isValid (Boolean)

Whether the phone number is valid or not.

Mutation

mutation ValidatePhone($input: ValidatePhoneNumberInput!) {
  validatePhone(input: $input) {
    isValid
  }
}

Variables

Response

{
  "data": {
    "validatePhone": {
      "isValid": true
    }
  }
}

varyContractTerms

Type:VaryContractTermsOutput!

URL:https://api.octopus.energy/v1/graphql/

Vary the terms of a contract.

The possible errors that can be raised are:

  • KT-CT-10003: Contract not found.
  • KT-CT-10008: The contract is currently undergoing an active journey.
  • KT-CT-10011: Unable to vary contract terms.
  • KT-CT-10033: Unable to save term.
  • KT-CT-10012: Contract variation implies breach.
  • KT-CT-10034: Unknown contract journey type.
  • KT-CT-10035: Cannot process a non-active contract journey.
  • KT-CT-10036: The contract journey manager is not found.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (VaryContractTermsInput!)

Return fields

NameDescription

Mutation

mutation VaryContractTerms($input: VaryContractTermsInput!) {
  varyContractTerms(input: $input) {
    contract {
      ...ContractFragment
    }
  }
}

Variables

Response

{
  "data": {
    "varyContractTerms": {
      "contract": Contract
    }
  }
}

verifyCustomer

Type:VerifyCustomer

URL:https://api.octopus.energy/v1/graphql/

Verify a customer using the provided verification code and type.

The possible errors that can be raised are:

  • KT-CT-4191: Error while verifying the customer.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (VerifyCustomerInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

user (AccountUserType)

The currently authenticated user.

Mutation

mutation VerifyCustomer($input: VerifyCustomerInput!) {
  verifyCustomer(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    user {
      ...AccountUserTypeFragment
    }
  }
}

Variables

{
  "input": VerifyCustomerInput
}

Response

{
  "data": {
    "verifyCustomer": {
      "possibleErrors": [PossibleErrorType],
      "user": AccountUserType
    }
  }
}

verifyEmail

Type:VerifyEmail

URL:https://api.octopus.energy/v1/graphql/

Verify user's email address.

The possible errors that can be raised are:

  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (VerifyEmailInput!)

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

isVerified (Boolean)

Whether the email is verified.

Mutation

mutation VerifyEmail($input: VerifyEmailInput!) {
  verifyEmail(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    isVerified
  }
}

Variables

{
  "input": VerifyEmailInput
}

Response

{
  "data": {
    "verifyEmail": {
      "possibleErrors": [PossibleErrorType],
      "isVerified": true
    }
  }
}

verifyIdentity

Type:VerifyIdentity

URL:https://api.octopus.energy/v1/graphql/

Provide identifying information about an account and user to get a scoped token that will permit access to associate an email address with the account's user.

The possible errors that can be raised are:

  • KT-CT-1145: Account/user details do not match.
  • KT-CT-1113: Disabled GraphQL field requested.

Arguments

NameDescription

input (VerifyIdentityInput!)

Details about the user to be verified.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

token (String!)

An expiring token that can be used to request to update the user's email address.

Mutation

mutation VerifyIdentity($input: VerifyIdentityInput!) {
  verifyIdentity(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    token
  }
}

Variables

{
  "input": VerifyIdentityInput
}

Response

{
  "data": {
    "verifyIdentity": {
      "possibleErrors": [PossibleErrorType],
      "token": "abc123"
    }
  }
}

withdrawDunning

Type:WithdrawDunning

URL:https://api.octopus.energy/v1/graphql/

Withdraw a dunning process for an account

The possible errors that can be raised are:

  • KT-CT-4178: No account found with given account number.
  • KT-CT-11301: Account not in a dunning process for the given path name.
  • KT-CT-11302: No active dunning process found.
  • KT-CT-11303: Multiple active dunning processes found.
  • KT-CT-11306: Withdrawing the dunning process failed.
  • KT-CT-1113: Disabled GraphQL field requested.
  • KT-CT-1111: Unauthorized.
  • KT-CT-1112: 'Authorization' header not provided.

Arguments

NameDescription

input (WithdrawDunningInputType!)

Input variables needed for withdrawing a dunning process for an account.

Return fields

NameDescription

possibleErrors ([PossibleErrorType])

Field with the possible errors of the query/mutation.

Deprecated

The 'possibleErrors' field is deprecated.

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

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

withdrawSuccessful (Boolean)

Whether the dunning process was withdrawn successfully.

Mutation

mutation WithdrawDunning($input: WithdrawDunningInputType!) {
  withdrawDunning(input: $input) {
    possibleErrors {
      ...PossibleErrorTypeFragment
    }
    withdrawSuccessful
  }
}

Variables

Response

{
  "data": {
    "withdrawDunning": {
      "possibleErrors": [PossibleErrorType],
      "withdrawSuccessful": true
    }
  }
}