EDF Energy website screenshot

EDF Energy

EDF Energy Ltd is the British integrated energy business wholly owned by Electricite de France (EDF), the French state-owned utility. Formed in 2002 from London Electricity, SWEB and SEEBOARD and enlarged by the 2009 acquisition of British Energy, it is one of the largest suppliers of electricity and gas in Great Britain with roughly five million customer accounts, and it is also Britain's largest generator of zero-carbon electricity — it operates the country's fleet of operating nuclear power stations (the advanced gas-cooled reactors at Hartlepool, Heysham 1, Heysham 2 and Torness, and the Sizewell B pressurised water reactor), is building Hinkley Point C, and owns wind, solar, battery (Pivot Power) and EV charging (Pod Point) businesses. It therefore sits at both ends of the GB value chain: a licensed generator and wholesale market participant, and the retailer of record holding the customer relationship, the billing account and the meter data. Its API posture is the opposite of the mandated-utility pattern. The United Kingdom has no consumer energy data-portability right — no Consumer Data Right, no Green Button obligation. Britain mandated infrastructure instead: the licensed Smart DCC monopoly carries smart-meter traffic under the Smart Energy Code, and EDF is bound by that as a licensed supplier, but it confers no third-party consumer data API. And yet EDF publishes one of the more substantial public API programmes of any European utility, because it does not run its own retail platform: in 2023 EDF licensed Kraken from Octopus Energy Group and completed the migration of 5.8 million customer accounts in fifteen months, so EDF's API is Kraken's API, branded for EDF GB at developer.edfgb-kraken.energy. That portal is fully public and was confirmed live at HTTP 200 on 2026-07-27. It publishes a first-party OpenAPI 3.0.3 document for a 27-path REST API, a second OpenAPI 3.0.3 document for a 16-path customer-migration API, and a GraphQL API whose schema — 2,492 types, 246 queries, 417 mutations — was harvested by anonymous introspection with no key and no account. EDF's retail tariff and product data is genuinely open: GET https://api.edfgb-kraken.energy/v1/products/ returned 21 live products at HTTP 200 anonymously, and the GraphQL energyProducts query returns real EDF tariffs with brand "EDF". Consumer usage and billing data is documented in the same contracts but requires an Authorization token issued to the account holder, or an OAuth application authorised against the OpenID Connect server at auth.edfgb-kraken.energy, whose anonymously served discovery document advertises 111 scopes including request:consumption-data and view:smartflex-data. Open market data is the gap: EDF discloses its REMIT generation unavailability on its own website as an HTML table, but the XML and CSV export links it publishes on that very page both return HTTP 404, and the machine-readable channel for those disclosures is Elexon's BMRS platform, which EDF does not operate — 27 EDF REMIT messages under registration code 48X000000000022A were confirmed there in a single week. Open on tariffs, gated on consumer data, broken on its own market-data exports, and none of it compelled.

EDF Energy publishes 2 APIs on the APIs.io network: EDF Kraken REST API and EDF Kraken Customer Migration (Data Import) API. Tagged areas include Energy, United Kingdom, Utilities, Electricity, and Gas.

EDF Energy’s developer surface includes authentication, changelog, sandbox, developer console, documentation, API reference, getting-started guide, and 40 more developer resources.

55.1/100 developing ▬ flat Agent 52/100 agent native Full breakdown ↓
scored 2026-08-17 · rubric v0.11.0
3 APIs 1 MCP Servers
EnergyUnited KingdomUtilitiesElectricityGasEnergy RetailerEnergy SupplierSmart MeteringNuclearRenewablesEV ChargingDemand ResponseTariffsEnergy Markets

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-08-17 · rubric v0.11.0
Composite quality — 55.1/100 · developing
Contract Quality 11.6 / 21
Developer Ergonomics 10.6 / 17
Commercial Clarity 7.6 / 17
Operational Transparency 6.7 / 11
Governance 2.1 / 10
Discoverability 7.9 / 9
Regulatory Posture 8.5 / 15
Agent readiness — 52/100 · agent native
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 12 / 12
Machine-Readable Auth 10 / 10
Idempotency 9 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 5 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Regulatory Posture applies to this provider. Its tags matched the Energy & Utilities regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
The six quality facets above are damped to 85 points between them, because the conditional facet above carries the other 15. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 85% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/edf-energy: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 3

Individual APIs this provider publishes, each with its own machine-readable definition.

EDF Kraken GraphQL API

EDF Energy's primary developer API, and the surface EDF markets as its "open tariff APIs". It is the Kraken GraphQL API, licensed from Octopus Energy Group and hosted for EDF GB...

EDF Kraken REST API

The REST half of EDF's Kraken platform API, described by a first-party OpenAPI 3.0.3 document that EDF serves itself at https://api.edfgb-kraken.energy/v1/schema?namespaces=defa...

EDF Kraken Customer Migration (Data Import) API

A second, separately published first-party OpenAPI 3.0.3 document describing the Kraken customer-migration API, harvested verbatim from https://api.edfgb-kraken.energy/data-impo...

Open Collections 2

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Kraken

OPEN COLLECTION

Kraken

OPEN COLLECTION

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

edf-energy-mcp.yml

MCP SERVER

GraphQL 1

GraphQL schemas published by this provider.

EDF Energy (EDF GB) Kraken GraphQL API

EDF Energy's primary API is a GraphQL API, because EDF Energy runs on Kraken — the energy

GRAPHQL

Rate Limits 1

Documented rate limits and quota policies.

Edf Energy Rate Limits

5 limits

RATE LIMITS

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Edf Energy Authentication

apiKey/http/oauth2/openIdConnect · 8 schemes

SECURITY

Edf Energy Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Scopes 1

OAuth scopes governing access to this provider's APIs.

Edf Energy Scopes

111 scopes · authorizationCode/clientCredentials/deviceCode/tokenExchange

111 scopes

SCOPES

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Edf Energy Agentic Access

43 operations · 18 acting

43 operations · 18 acting

AGENTIC

Resources

Get Started 6

Portal, sign-up, and the first successful call

Documentation 4

Reference material describing how the API behaves

Agent Surfaces 6

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 7

Pagination, idempotency, versioning, errors, and events

Scroll for all 7

Build 3

SDKs, sample code, and the tooling you integrate with

Access & Security 4

Authentication, authorization, and security posture

Operate 7

Status, limits, changes, and where to get help

Scroll for all 7

Commercial 3

Pricing, plans, and the legal terms of use

Company 5

The organization behind the API

Other 2

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: edf-energy
url: https://raw.githubusercontent.com/api-evangelist/edf-energy/refs/heads/main/apis.yml
name: EDF Energy
kind: company
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
tags:
- Energy
- United Kingdom
- Utilities
- Electricity
- Gas
- Energy Retailer
- Energy Supplier
- Smart Metering
- Nuclear
- Renewables
- EV Charging
- Demand Response
- Tariffs
- Energy Markets
created: '2026-07-27'
modified: '2026-07-27'
specificationVersion: '0.19'
description: 'EDF Energy Ltd is the British integrated energy business wholly owned by Electricite de France (EDF), the French
  state-owned utility. Formed in 2002 from London Electricity, SWEB and SEEBOARD and enlarged by the 2009 acquisition of British
  Energy, it is one of the largest suppliers of electricity and gas in Great Britain with roughly five million customer accounts,
  and it is also Britain''s largest generator of zero-carbon electricity — it operates the country''s fleet of operating nuclear
  power stations (the advanced gas-cooled reactors at Hartlepool, Heysham 1, Heysham 2 and Torness, and the Sizewell B pressurised
  water reactor), is building Hinkley Point C, and owns wind, solar, battery (Pivot Power) and EV charging (Pod Point) businesses.
  It therefore sits at both ends of the GB value chain: a licensed generator and wholesale market participant, and the retailer
  of record holding the customer relationship, the billing account and the meter data. Its API posture is the opposite of
  the mandated-utility pattern. The United Kingdom has no consumer energy data-portability right — no Consumer Data Right,
  no Green Button obligation. Britain mandated infrastructure instead: the licensed Smart DCC monopoly carries smart-meter
  traffic under the Smart Energy Code, and EDF is bound by that as a licensed supplier, but it confers no third-party consumer
  data API. And yet EDF publishes one of the more substantial public API programmes of any European utility, because it does
  not run its own retail platform: in 2023 EDF licensed Kraken from Octopus Energy Group and completed the migration of 5.8
  million customer accounts in fifteen months, so EDF''s API is Kraken''s API, branded for EDF GB at developer.edfgb-kraken.energy.
  That portal is fully public and was confirmed live at HTTP 200 on 2026-07-27. It publishes a first-party OpenAPI 3.0.3 document
  for a 27-path REST API, a second OpenAPI 3.0.3 document for a 16-path customer-migration API, and a GraphQL API whose schema
  — 2,492 types, 246 queries, 417 mutations — was harvested by anonymous introspection with no key and no account. EDF''s
  retail tariff and product data is genuinely open: GET https://api.edfgb-kraken.energy/v1/products/ returned 21 live products
  at HTTP 200 anonymously, and the GraphQL energyProducts query returns real EDF tariffs with brand "EDF". Consumer usage
  and billing data is documented in the same contracts but requires an Authorization token issued to the account holder, or
  an OAuth application authorised against the OpenID Connect server at auth.edfgb-kraken.energy, whose anonymously served
  discovery document advertises 111 scopes including request:consumption-data and view:smartflex-data. Open market data is
  the gap: EDF discloses its REMIT generation unavailability on its own website as an HTML table, but the XML and CSV export
  links it publishes on that very page both return HTTP 404, and the machine-readable channel for those disclosures is Elexon''s
  BMRS platform, which EDF does not operate — 27 EDF REMIT messages under registration code 48X000000000022A were confirmed
  there in a single week. Open on tariffs, gated on consumer data, broken on its own market-data exports, and none of it compelled.'
apis:
- aid: edf-energy:edf-kraken-graphql-api
  name: EDF Kraken GraphQL API
  description: 'EDF Energy''s primary developer API, and the surface EDF markets as its "open tariff APIs". It is the Kraken
    GraphQL API, licensed from Octopus Energy Group and hosted for EDF GB. Introspection is enabled anonymously: a standard
    IntrospectionQuery POSTed with no credentials returned HTTP 200 on 2026-07-27, yielding 2,492 types, 246 Query fields
    and 417 Mutation fields, saved verbatim as SDL in this repository. Retail product and tariff data resolves without any
    credential — energyProducts(postcode: "SW1A1AA", brand: "EDF") returned live EDF tariffs including EDF_FOL_06M_B1_1YR_26-07-24_v1
    "Fixed Online 1 Year". Everything customer-scoped (smartMeterTelemetry, annualElectricityConsumption, applicableRates,
    plannedDispatches, vehicleChargingPreferences, fitInstallations, prepay ledgers) requires an Authorization header held
    by the account user, an organisation, or an OAuth application. Published limits: 50,000 points/hour for account users,
    100,000 for organisations, 300,000 for OAuth applications; complexity limit 200; 10,000 nodes per request; rate-limit
    error KT-CT-1199. No consumer data mandate in Great Britain produced any of this.'
  humanURL: https://developer.edfgb-kraken.energy/graphql/
  baseURL: https://api.edfgb-kraken.energy/v1/graphql/
  tags:
  - GraphQL
  - Kraken
  - Tariffs
  - Energy Products
  - Smart Metering
  - Consumption
  - EV Charging
  - United Kingdom
  properties:
  - type: GraphQL
    url: graphql/edf-energy-graphql.md
  - type: Documentation
    url: https://developer.edfgb-kraken.energy/graphql/guides/
  - type: APIReference
    url: https://developer.edfgb-kraken.energy/graphql/reference/
  - type: Changelog
    url: https://developer.edfgb-kraken.energy/graphql/changelog/
  - type: Documentation
    url: https://www.edfenergy.com/energywise/edfs-open-tariff-apis
  - type: Authentication
    url: authentication/edf-energy-kraken-openid-configuration.json
  - type: ToolCrosswalk
    url: mcp/edf-energy-tool-crosswalk.yml
  - type: ErrorCatalog
    url: errors/edf-energy-error-codes.yml
  - type: RateLimits
    url: rate-limits/edf-energy-rate-limits.yml
  - type: Console
    name: GraphiQL IDE
    url: https://api.edfgb-kraken.energy/v1/graphql/
- aid: edf-energy:edf-kraken-rest-api
  name: EDF Kraken REST API
  description: 'The REST half of EDF''s Kraken platform API, described by a first-party OpenAPI 3.0.3 document that EDF serves
    itself at https://api.edfgb-kraken.energy/v1/schema?namespaces=default and renders through ReDoc on its developer portal.
    Harvested verbatim on 2026-07-27 at HTTP 200 with no credentials: 27 paths and 57 component schemas covering energy products
    and their electricity and gas tariffs (day, night, standard, off-peak and peak EV unit rates and standing charges), grid
    supply points, electricity and gas meter point consumption, account creation, tariff renewal, quotes and payment intents.
    Access is split inside the same document: /v1/products/ carries an empty security option and returned HTTP 200 anonymously
    with 21 live EDF products, and /v1/industry/grid-supply-points/ resolved a postcode to GSP group _C anonymously, while
    /v1/electricity-meter-points/{mpan}/ and the consumption endpoints require KeyAuthentication ("Authorization: Token ...")
    or a Kraken JWT. Five security schemes are declared: AccountUserAPIKeyAuthentication, AffiliateAuthentication, DRFKrakenTokenAuthentication,
    KeyAuthentication and PartnerUserOnlyAuthentication.'
  humanURL: https://developer.edfgb-kraken.energy/rest/reference/
  baseURL: https://api.edfgb-kraken.energy/v1/
  tags:
  - REST
  - OpenAPI
  - Kraken
  - Tariffs
  - Products
  - Meter Points
  - Consumption
  - Grid Supply Points
  - United Kingdom
  properties:
  - type: OpenAPI
    url: openapi/edf-energy-kraken-openapi.yml
  - type: Documentation
    url: https://developer.edfgb-kraken.energy/rest/guides/api-basics/
  - type: APIReference
    url: https://developer.edfgb-kraken.energy/rest/reference/
  - type: Documentation
    url: https://www.edfenergy.com/energywise/edfs-open-tariff-apis
  - type: Authentication
    url: authentication/edf-energy-kraken-openid-configuration.json
  - type: Overlay
    url: overlays/edf-energy-kraken-overlay.yaml
  - type: ErrorCatalog
    url: errors/edf-energy-problem-types.yml
  - type: DataModel
    url: data-model/edf-energy-data-model.yml
  - type: AgentSkill
    name: Compare EDF electricity and gas tariffs for a postcode
    url: skills/edf-energy-compare-tariffs.md
  - type: AgentSkill
    name: Read a customer's electricity and gas consumption
    url: skills/edf-energy-read-consumption.md
  - type: AgentSkill
    name: Quote a supply and enrol a customer
    url: skills/edf-energy-quote-and-enrol.md
  - type: GettingStarted
    url: https://developer.edfgb-kraken.energy/rest/guides/api-basics/
- aid: edf-energy:edf-kraken-customer-migration-api
  name: EDF Kraken Customer Migration (Data Import) API
  description: 'A second, separately published first-party OpenAPI 3.0.3 document describing the Kraken customer-migration
    API, harvested verbatim from https://api.edfgb-kraken.energy/data-import/schema/ at HTTP 200 on 2026-07-27 with no credentials
    — 16 paths and 139 component schemas. It is the machine-readable expression of how a customer book moves between suppliers
    onto Kraken: account import processes are created, validated and processed, transfer status is polled per external account
    number, and historical statements, transactions, notes and payment instructions are imported, all keyed by an import_supplier_code.
    This is the operational counterpart to the fact that EDF itself migrated 5.8 million accounts onto this platform in fifteen
    months. It is a partner-facing contract: the endpoints require authentication, and a developer needs a migration relationship
    with EDF rather than a signup form.'
  humanURL: https://developer.edfgb-kraken.energy/rest/guides/data-import/
  baseURL: https://api.edfgb-kraken.energy/v1/
  tags:
  - REST
  - OpenAPI
  - Kraken
  - Customer Migration
  - Data Import
  - Switching
  - United Kingdom
  properties:
  - type: OpenAPI
    url: openapi/edf-energy-kraken-data-import-openapi.yml
  - type: Documentation
    url: https://developer.edfgb-kraken.energy/rest/guides/data-import/
  - type: APIReference
    url: https://developer.edfgb-kraken.energy/rest/reference/
  - type: Overlay
    url: overlays/edf-energy-kraken-data-import-overlay.yaml
  - type: Authentication
    url: authentication/edf-energy-authentication.yml
  - type: AgentSkill
    name: Migrate a customer book onto Kraken
    url: skills/edf-energy-migrate-customer-book.md
common:
- type: AgenticAccess
  url: agentic-access/edf-energy-agentic-access.yml
- type: DomainSecurity
  url: security/edf-energy-domain-security.yml
- type: Authentication
  url: authentication/edf-energy-authentication.yml
- type: OAuthScopes
  url: scopes/edf-energy-scopes.yml
- type: Conventions
  url: conventions/edf-energy-conventions.yml
- type: Idempotency
  url: conventions/edf-energy-conventions.yml
- type: RateLimits
  url: rate-limits/edf-energy-rate-limits.yml
- type: ErrorCatalog
  name: Kraken KT-CT-* error code registry (1,370 codes)
  url: errors/edf-energy-error-codes.yml
- type: ErrorCatalog
  name: REST problem types derived from the OpenAPI
  url: errors/edf-energy-problem-types.yml
- type: Lifecycle
  url: lifecycle/edf-energy-lifecycle.yml
- type: Deprecation
  url: https://developer.edfgb-kraken.energy/announcements/
- type: ChangeLog
  url: changelog/edf-energy-changelog.yml
- type: ChangeLog
  name: GraphQL schema changelog
  url: https://developer.edfgb-kraken.energy/graphql/changelog/
- type: Conformance
  url: conformance/edf-energy-conformance.yml
- type: DataModel
  url: data-model/edf-energy-data-model.yml
- type: Sandbox
  name: Public GraphiQL IDE
  url: sandbox/edf-energy-sandbox.yml
- type: Console
  url: https://api.edfgb-kraken.energy/v1/graphql/
- type: WellKnown
  url: well-known/edf-energy-well-known.yml
- type: Packages
  url: packages/edf-energy-packages.yml
- type: MCPServer
  url: mcp/edf-energy-mcp.yml
- type: ToolCrosswalk
  url: mcp/edf-energy-tool-crosswalk.yml
- type: AgentSkill
  url: skills/_index.yml
- type: LLMsTxt
  name: EDF Energy llms.txt (published, verbatim)
  url: llms/edf-energy-llms.txt
- type: LLMsTxt
  name: API-surface llms.txt (generated)
  url: llms/edf-energy-api-llms.txt
- type: Overlay
  url: overlays/edf-energy-kraken-overlay.yaml
- type: Overlay
  url: overlays/edf-energy-kraken-data-import-overlay.yaml
- type: Website
  url: https://www.edfenergy.com/
- type: DeveloperPortal
  url: https://developer.edfgb-kraken.energy/
- type: Documentation
  url: https://developer.edfgb-kraken.energy/
- type: APIReference
  url: https://developer.edfgb-kraken.energy/rest/reference/
- type: GettingStarted
  url: https://developer.edfgb-kraken.energy/rest/guides/api-basics/
- type: Changelog
  url: https://developer.edfgb-kraken.energy/announcements/
- type: Authentication
  url: authentication/edf-energy-kraken-openid-configuration.json
- type: Documentation
  url: https://www.edfenergy.com/energywise/edfs-open-tariff-apis
- type: Documentation
  url: https://www.edfenergy.com/energy/remit-summary
- type: About
  url: https://www.edfenergy.com/about
- type: News
  url: https://www.edfenergy.com/media-centre
- type: Blog
  url: https://www.edfenergy.com/energywise
- type: Support
  url: https://www.edfenergy.com/help-support
- type: HelpCenter
  url: https://www.edfenergy.com/for-home/help-centre
- type: Pricing
  url: https://www.edfenergy.com/deemed-tariff-prices
- type: SignUp
  url: https://www.edfenergy.com/gas-and-electricity/switch-energy-supplier
- type: Login
  url: https://www.edfenergy.com/customer-information/activate-myaccount
- type: TermsOfService
  url: https://www.edfenergy.com/terms-conditions
- type: PrivacyPolicy
  url: https://www.edfenergy.com/terms-conditions/privacy-cookie-policy
- type: GitHubOrganization
  url: https://github.com/edfenergy
- type: LinkedIn
  url: https://www.linkedin.com/company/edf-energy
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com