openapi: 3.0.3 info: title: Octopus Energy Public Consumption ElectricityTariffs API version: '1.0' description: 'The Octopus Energy Public API is a free JSON-over-HTTPS REST API exposing the UK product catalog, electricity and gas tariffs, electricity and gas meter points, half-hourly smart-meter consumption, and industry grid supply points. Authentication uses HTTP Basic auth with a per-customer API key as the username and an empty password. Products and tariffs endpoints are open and do not require authentication; meter-point and consumption endpoints require a key for the account that owns the meter. ' contact: name: Octopus Energy Developer Support url: https://developer.octopus.energy/docs/api/ license: name: Octopus Energy API Terms url: https://octopus.energy/policies/ servers: - url: https://api.octopus.energy/v1 description: Public production API security: - basicAuth: [] - {} tags: - name: ElectricityTariffs description: Electricity tariff unit rates and standing charges. paths: /products/{product_code}/electricity-tariffs/{tariff_code}/standard-unit-rates/: get: tags: - ElectricityTariffs summary: List Electricity Standard Unit Rates description: Half-hourly or daily standard unit rates for an electricity tariff such as Agile Octopus or Octopus Tracker. operationId: listElectricityStandardUnitRates parameters: - $ref: '#/components/parameters/ProductCode' - $ref: '#/components/parameters/TariffCode' - $ref: '#/components/parameters/PeriodFrom' - $ref: '#/components/parameters/PeriodTo' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' responses: '200': description: A paginated list of standard unit rates. content: application/json: schema: $ref: '#/components/schemas/PaginatedUnitRateList' /products/{product_code}/electricity-tariffs/{tariff_code}/standing-charges/: get: tags: - ElectricityTariffs summary: List Electricity Standing Charges operationId: listElectricityStandingCharges parameters: - $ref: '#/components/parameters/ProductCode' - $ref: '#/components/parameters/TariffCode' - $ref: '#/components/parameters/PeriodFrom' - $ref: '#/components/parameters/PeriodTo' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' responses: '200': description: A paginated list of standing charges. content: application/json: schema: $ref: '#/components/schemas/PaginatedStandingChargeList' /products/{product_code}/electricity-tariffs/{tariff_code}/day-unit-rates/: get: tags: - ElectricityTariffs summary: List Electricity Day Unit Rates operationId: listElectricityDayUnitRates parameters: - $ref: '#/components/parameters/ProductCode' - $ref: '#/components/parameters/TariffCode' - $ref: '#/components/parameters/PeriodFrom' - $ref: '#/components/parameters/PeriodTo' responses: '200': description: A paginated list of day unit rates. content: application/json: schema: $ref: '#/components/schemas/PaginatedUnitRateList' /products/{product_code}/electricity-tariffs/{tariff_code}/night-unit-rates/: get: tags: - ElectricityTariffs summary: List Electricity Night Unit Rates operationId: listElectricityNightUnitRates parameters: - $ref: '#/components/parameters/ProductCode' - $ref: '#/components/parameters/TariffCode' - $ref: '#/components/parameters/PeriodFrom' - $ref: '#/components/parameters/PeriodTo' responses: '200': description: A paginated list of night unit rates. content: application/json: schema: $ref: '#/components/schemas/PaginatedUnitRateList' components: parameters: ProductCode: name: product_code in: path required: true schema: type: string description: Product code, for example AGILE-24-10-01 or VAR-22-11-01. Page: name: page in: query schema: type: integer minimum: 1 PeriodTo: name: period_to in: query schema: type: string format: date-time description: ISO 8601 exclusive end of the period. TariffCode: name: tariff_code in: path required: true schema: type: string description: Tariff code, for example E-1R-AGILE-24-10-01-A. PageSize: name: page_size in: query schema: type: integer minimum: 1 maximum: 1500 PeriodFrom: name: period_from in: query schema: type: string format: date-time description: ISO 8601 inclusive start of the period. schemas: UnitRate: type: object properties: value_exc_vat: type: number value_inc_vat: type: number valid_from: type: string format: date-time valid_to: type: string format: date-time nullable: true payment_method: type: string nullable: true PaginatedStandingChargeList: allOf: - $ref: '#/components/schemas/Paginated' - type: object properties: results: type: array items: $ref: '#/components/schemas/StandingCharge' Paginated: type: object properties: count: type: integer next: type: string nullable: true previous: type: string nullable: true StandingCharge: type: object properties: value_exc_vat: type: number value_inc_vat: type: number valid_from: type: string format: date-time valid_to: type: string format: date-time nullable: true payment_method: type: string nullable: true PaginatedUnitRateList: allOf: - $ref: '#/components/schemas/Paginated' - type: object properties: results: type: array items: $ref: '#/components/schemas/UnitRate' securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic authentication with the customer API key as the username and an empty password.