Skip to main content
VersionDateSummary
0.1.1.AE2026-03-27First cleanup and proposed changes by Auth Energy
0.1.02026-03-26Generated from public material

v0.1.1.AE

#CategoryChangeDetail
1Endpoints/registerResponse renamed to /consentREST-idiomatic resource path replacing a verb-phrase URL
2Endpoints/v1/tariff/{mpid}/{tariff_id}/consumer renamed to /v1/tariff/customerNo path params needed; OAuth token provides sufficient consumer identity
3EndpointsGET /v1/users/{user_id} addedRetrieve a single RTI User by ID; same public / supplier-auth access split as GET /v1/users
4EndpointsAPI versioning addedAll paths prefixed with /v1
5EndpointsPagination added to GET /v1/suppliers and GET /v1/tariff/{mpid}limit / offset query params and PaginationMeta response object (total, limit, offset, next_offset) added
6EndpointsPer-operation server overrides addedGET /v1/suppliers, GET /v1/users, GET /v1/users/{user_id} pinned to https://register.tariff.interop; all tariff, consent, webhook, and report endpoints pinned to https://example-supplier.co.uk
7EndpointsWebhook timescale set for tariff.change / tariff.updateWas TBC; set to 60 minutes
8EndpointsNine filter query params added to GET /v1/tariff/{mpid}tariff_type, fuel_type, energy_flow, payment_method, ldz_region, meter_type, customer_type, valid_from, valid_to
9Schemastariff_id changed to prefixed compact UUIDPattern ^trf_[0-9a-f]{32}$; supplier-generated; prefixed with trf_
10Schemasuser_id changed to prefixed compact UUIDPattern ^usr_[0-9a-f]{32}$; RECCo-generated; prefixed with usr_
11SchemasWebhookId changed to format: uuidExample updated to a valid UUID
12Schemasregistration_id changed to format: uuidApplied to consent response body and DELETE /v1/consent/{registration_id} path parameter
13SchemasRegion replaced by LdzRegionCollapsed dual integer/string encoding into a single string enum (SC, NO, NE, NWT, WMD, EM, EA, NT, SO, SE, WN, WW, SW); field renamed ldz_region throughout
14SchemasTariffRate replaced with FlatPeak rate structureNew hierarchy: TariffScheduleEntryDaysAndHoursHourlyRateRateTier; field on TariffDetail named rates
15Schemasunit_price and standing_charge changed to decimal stringstype: string with pattern ^\d+\.\d{2,5}$; 2 to 5 decimal places; avoids floating-point rounding errors
16SchemasPerformanceReport redesignedavailability and success changed from opaque strings to typed floats (availability_pct, success_pct); response_times replaced with response_time_ms object with typed p50, p95, p99 integer fields
17SchemasTariffVersion addedInteger field for tracking descriptive-only corrections to a tariff; prices or time changes require a new tariff
18SchemasUserStatus enum addedValues: active, suspended, disabled, removed; used on both SupplierRegisterEntry and RtiUserRegisterEntry
19SchemasSupportContact type addedFreeform string for email, URL, or telephone; required on both supplier and RTI User records
20Schemasdisplay_name added to SupplierRegisterEntry and RtiUserRegisterEntryRequired short trading name for display to consumers; separate from legal name on RTI User
21SchemasMeterType enum addedValues: single_rate, multi_rate, smart, prepayment; added to TariffDetail and TariffSummary
22SchemasCustomerType enum addedValues: residential, business; added to TariffDetail and TariffSummary
23Schemasvat_included added to TariffDetailBoolean; indicates whether prices include VAT
24Schemasvat_rate added to TariffDetailInteger 0–100; required when vat_included is false; standard domestic electricity rate is 5%
25SchemasTariffSummary extendedAdded tariff_type, fuel_type, meter_type, customer_type to the lightweight listing record
26SchemasFuelType enum values changedFrom single-character E / G to full words electricity / gas
27SchemasEnergyFlow enum values changedFrom single-character I / E to full words import / export
28ServersSupplier server URL sethttps://energy.supplier placeholder replaced with https://example-supplier.co.uk
29DescriptionsWarning added to /v1/consent endpointsFlags that the consent mechanism may be out of scope if customer-specific tariffs are removed from Phase 1
30CleanupTags renamed to plain EnglishRegistry, Tariffs, Consumer Tariffs, Consent, Webhooks, Reporting
31CleanupSchema names rationalisedTariffEventNotificationTariffEvent; MeteringPointEnergyFlowEnergyFlow; HighResDatetimeTimestamp
32CleanupEMDS internal reference codes strippedDI90061, DIYYYY9 etc. removed from all field descriptions
33CleanupMMXXXX / SVZZZZ catalogue codes removedRemoved from all operation summaries and descriptions
34Cleanup£ symbols replaced with GBPAvoids encoding issues in downstream tooling
35FixrequestBody on POST /consent correctedAdded required content property; required: false alone is not valid OpenAPI 3.x
36FixOAuth authorizationUrl / tokenUrl correctedReplaced URI templates with concrete placeholder URLs; OpenAPI does not permit templates in securitySchemes

v0.1.0

Initial draft spec constructed from public RECCo source material:
  • Annex D — Draft REC Tariff Interoperability Arrangements Schedule
  • Annex E — Draft TI API Technical Specification and Energy Market Data Specification Changes
  • RECCo TI Project page — retailenergycode.co.uk
Last modified on March 28, 2026