Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/energy-charts-api-ren-share-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Energy-Charts import_export Ren Share API
description: "\n \n\n<h4>Timestamp Format Options</h4>\n <p>When specifying timestamps, you can choose from the following three formats:</p>\n <ol>\n <li><strong>ISO 8601 Format</strong>:\n <ul>\n <li>This format includes the full date and time, with an optional timezone indicator.</li>\n <li>Examples:\n <ul>\n <li><code>2025-01-01T17:00Z</code> (UTC time)</li>\n <li><code>2025-01-01T18:00+01:00</code> (Local time offset by +01:00)</li>\n </ul>\n </li>\n </ul>\n </li>\n <li><strong>Daily Format</strong>:\n <ul>\n <li>This format specifies only the date.</li>\n <li>The start time is assumed to be at 00:00 on the specified date in the local timezone of the specified country or bidding zone (bzn).</li>\n <li>The end timestamp is interpreted as the last minute of the specified day in the same local timezone.</li>\n <li>Example:\n <ul>\n <li><code>2025-01-01</code> (Starts at 00:00 and ends at 23:59 on January 1, 2025, local time)</li>\n </ul>\n </li>\n </ul>\n </li>\n <li><strong>UNIX Timestamp</strong>:\n <ul>\n <li>This format specifies the time as the number of seconds since the Unix Epoch (January 1st, 1970, at 00:00 UTC).</li>\n <li>Example:\n <ul>\n <li><code>1735686000</code></li>\n </ul>\n </li>\n </ul>\n </li>\n </ol>\n <h4>Default Behavior for Timestamps</h4>\n <p>If an end timestamp is not explicitly provided, it is assumed to be the same as the start timestamp. For daily formats, this means that one full day will be returned. If also no start timestamp is provided, the current day in the local timezone is used.</p>\n <h4>Discontinuation of endpoints</h4>\n <p>Endpoint discontinuations will be preceded by an announcement at least six months in advance, indicated by setting the \"deprecated\" status to true.</p>\n <h4>Data License</h4>\n <p>Unless stated otherwise, the data provided by the Energy-Charts API is licensed under the <a href=\"https://creativecommons.org/licenses/by/4.0/\" target=\"_blank\">CC BY 4.0</a> license. Proper attribution to Energy-Charts.info as the source is required.</p>\n <details>\n <summary><b>New in release v1.5 (2025-10-21)</b></summary>\n <ul>\n <li>\n Include stricter rate limitations for public API\n (please contact <a href=\"mailto:leonhard.gandhi@ise.fraunhofer.de\">leonhard.gandhi@ise.fraunhofer.de</a> for commercial access)\n </li>\n <li>Improved load balancing on concurrent requests</li>\n </ul>\n </details>\n <details>\n <summary><b> Older Releases </b></summary>\n <details>\n <summary><b>v1.4 (2024-07-08)</b></summary>\n <ul>\n <li>Fix bug with wrong timezone for unix timestamps as input</li>\n </ul>\n </details> \n <details>\n <summary><b>v1.3 (2024-04-22)</b></summary>\n <ul>\n <li>Fix bug which hid most recent data for /cbet and /cbpf</li>\n <li>Inlcude deprecated tag to all active endpoints</li>\n </ul>\n </details>\n <details>\n <summary><b>v1.2 (2024-04-16)</b></summary>\n <ul>\n <li>Allow also input timestamps in day format and UNIX timestamp</li>\n <li>Inlcude license info for price data available at /price</li>\n </ul>\n </details>\n <details>\n <summary><b>v1.1 (2023-10-20)</b></summary>\n <ul>\n <li>Deprecated /ren_share</li>\n <li>Deprecated /ren_share_prognosis and replaced it with /ren_share_forecast</li>\n <li>Deprecated /power and replaced it with /public_power</li>\n <li>Deprecated /price_spot_market and replaced it with /price</li>\n <li>Deprecated /traffic_signal and replaced it with /signal</li>\n <li>Added endpoint for cross-border electricity trading (/cbet)</li>\n <li>Added endpoint for cross-border physical flow (/cbpf)</li>\n <li>Changed response structure of all endpoints to fit with json specification</li>\n <li>Simplified the response json structure</li>\n <li>Removed unnecessary information from responses like names, descriptions and units</li>\n <li>Added typed response schemes to every endpoint</li>\n <li>Added example values and example requests to every endpoint</li>\n <li>Added postal code to /signal, to consider grid state in future implementations</li>\n <li>Responses that return unix timestamps now all return unix seconds</li>\n <li>Added error handling for false requests and responses</li>\n <li>Added a list of available bidding zones for /price</li>\n </ul>\n </details>\n <details>\n <summary><b>v1.0 (2022-11-30)</b></summary>\n <ul>\n <li>Initial release</li>\n </ul>\n </details>\n </details>\n \n\n<b>Available countries:</b>\n \n\n<details><summary>de - Germany (click to show all available countries)</summary>\n ch - Switzerland<br>\n eu - European Union<br>\n all - Europe<br>\n al - Albania<br>\n am - Armenia<br>\n at - Austria<br>\n az - Azerbaijan<br>\n ba - Bosnia-Herzegovina<br>\n be - Belgium<br>\n bg - Bulgaria<br>\n by - Belarus<br>\n cy - Cyprus<br>\n cz - Czech Republic<br>\n dk - Denmark<br>\n ee - Estonia<br>\n es - Spain<br>\n fi - Finland<br>\n fr - France<br>\n ge - Georgia<br>\n gr - Greece<br>\n hr - Croatia<br>\n hu - Hungary<br>\n ie - Ireland<br>\n it - Italy<br>\n lt - Lithuania<br>\n lu - Luxembourg<br>\n lv - Latvia<br>\n md - Moldova<br>\n me - Montenegro<br>\n mk - North Macedonia<br>\n mt - Malta<br>\n nie - North Ireland<br>\n nl - Netherlands<br>\n no - Norway<br>\n pl - Poland<br>\n pt - Portugal<br>\n ro - Romania<br>\n rs - Serbia<br>\n ru - Russia<br>\n se - Sweden<br>\n si - Slovenia<br>\n sk - Slovak Republic<br>\n tr - Turkey<br>\n ua - Ukraine<br>\n uk - United Kingdom<br>\n xk - Kosovo<br>\n </details>\n \n\n<b>Available bidding zones:</b>\n \n\n<details><summary>AT - Austria (click to show all available bidding zones)</summary>\n BE - Belgium<br>\n BG - Bulgaria<br>\n CH - Switzerland<br>\n CZ - Czech Republic<br>\n DE-LU - Germany, Luxembourg<br>\n DE-AT-LU - Germany, Austria, Luxembourg<br>\n DK1 - Denmark 1<br>\n DK2 - Denmark 2<br>\n EE - Estionia<br>\n ES - Spain<br>\n FI - Finland<br>\n FR - France<br>\n GR - Greece<br>\n HR - Croatia<br>\n HU - Hungary<br>\n IT-Calabria - Italy Calabria<br>\n IT-Centre-North - Italy Centre North<br>\n IT-Centre-South - Italy Centre South<br>\n IT-North - Italy North<br>\n IT-SACOAC - Italy Sardinia Corsica AC<br>\n IT-SACODC - Italy Sardinia Corsica DC<br>\n IT-Sardinia - Italy Sardinia<br>\n IT-Sicily - Italy Sicily<br>\n IT-South - Italy South<br>\n LT - Lithuania<br>\n LV - Latvia<br>\n ME - Montenegro<br>\n NL - Netherlands<br>\n NO1 - Norway 1<br>\n NO2 - Norway 2<br>\n NO2NSL - Norway North Sea Link<br>\n NO3 - Norway 3<br>\n NO4 - Norway 4<br>\n NO5 - Norway 5<br>\n PL - Poland<br>\n PT - Portugal<br>\n RO - Romania<br>\n RS - Serbia<br>\n SE1 - Sweden 1<br>\n SE2 - Sweden 2<br>\n SE3 - Sweden 3<br>\n SE4 - Sweden 4<br>\n SI - Slovenia<br>\n SK - Slovakia<br>\n </details>\n \n\n<b>Hint:</b> Don't use the <b>Try it out</b> button on this documentation page to download large datasets as it might lead to long loading times.\n "
termsOfService: https://energy-charts.info/data-protection.html
contact:
name: Contact
url: https://energy-charts.info/contact.html
license:
name: Publishing notes
url: https://energy-charts.info/publishing-notes.html
version: '1.5'
servers:
- url: https://api.energy-charts.info
description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: ren_share
description: Renewable shares
paths:
/signal:
get:
tags:
- ren_share
summary: Traffic Signal
description: "<b>Electricity traffic signal</b>\n \n\n\n \n\nReturns the renewable share of load in percent from today until prediction is currently available and the corresponding traffic light.\n \n\n\n \n\nThe traffic light \"signal\" is indicated by the following numbers:\n \n\n\n -1: Red (grid congestion),\n 0: Red (low renewable share),\n 1: Yellow (average renewable share),\n 2: Green (high renewable share)\n \n\n\n \n\nIf no data is available from the primary data providers, a best guess is made from historic data. This is indicated by \"substitute\" set to True.\n \n\n\n \n\n\"postal_code\" is an optional input parameter, which will consider the local grid state (e.g. transmission line overload) in future implementations.\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"unix_seconds\": [int],\n \"share\": [float],\n \"signal\": [int],\n \"substitute\": bool,\n \"deprecated\": bool\n}\n```"
operationId: traffic_signal_signal_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
- name: postal_code
in: query
required: false
schema:
type: string
default: ''
title: Postal Code
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/TrafficModel'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/ren_share_forecast:
get:
tags:
- ren_share
summary: Renewable Share Forecast
description: "<b>Renewable share forecast</b>\n \n\n\n \n\nReturns the renewable share of load forecast in percent from today until prediction is currently available. It also includes the forecast for solar, wind on- and offshore share of load.\n \n\n\n \n\nIf no data is available from the primary data providers, a best guess is made from historic data. This is indicated by \"substitute\" set to True.\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"unix_seconds\": [int],\n \"ren_share\": [float],\n \"solar_share\": [float],\n \"wind_onshore_share\": [float],\n \"wind_offshore_share\": [float],\n \"substitute\": bool,\n \"deprecated\": bool\n}\n```"
operationId: renewable_share_forecast_ren_share_forecast_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/RenShareModel'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/ren_share_daily_avg:
get:
tags:
- ren_share
summary: Ren Share Daily Avg
description: "<b>Average daily renewable share of load</b>\n \n\n\n \n\nReturns the average daily renewable share of load of the last 365 days (year = -1) or for a given year if provided.\n \n\n\n \n\nResponse schema:\n \n\n```json\n\n {\n \"days\": [\"dd.mm.yyyy\"],\n \"data\": [float],\n \"deprecated\": bool\n }\n\n ```"
operationId: ren_share_daily_avg_ren_share_daily_avg_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
- name: year
in: query
required: false
schema:
type: integer
default: -1
title: Year
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DailyAvgDict'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/solar_share:
get:
tags:
- ren_share
summary: Solar Share
description: "<b>Solar Share of Load</b>\n \n\n\n \n\nReturns the solar share of load from today until prediction is currently available\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"unix_seconds\": list[int],\n \"data\": list[float],\n \"forecast\": list[float],\n \"deprecated\": bool\n}\n```"
operationId: solar_share_solar_share_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ShareModel'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/solar_share_daily_avg:
get:
tags:
- ren_share
summary: Solar Share Daily Avg
description: "<b>Average daily solar share of load</b>\n \n\n\n \n\nReturns the average daily solar share of load of the last 365 days (year = -1) or for a given year if provided.\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"days\": [\"dd.mm.yyyy\"],\n \"data\": [float],\n \"deprecated\": bool\n}\n```"
operationId: solar_share_daily_avg_solar_share_daily_avg_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
- name: year
in: query
required: false
schema:
type: integer
default: -1
title: Year
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DailyAvgDict'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/wind_onshore_share:
get:
tags:
- ren_share
summary: Wind Onshore Share
description: "<b>Wind Onshore Share of Load</b>\n \n\n\n \n\nReturns the wind onshore share of load from today until prediction is currently available\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"unix_seconds\": list[int],\n \"data\": list[float],\n \"forecast\": list[float],\n \"deprecated\": bool\n}\n```"
operationId: wind_onshore_share_wind_onshore_share_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ShareModel'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/wind_onshore_share_daily_avg:
get:
tags:
- ren_share
summary: Wind Onshore Share Daily Avg
description: "<b>Average daily wind onshore share of load</b>\n \n\n\n \n\nReturns the average daily wind onshore share of load of the last 365 days\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"days\": [\"dd.mm.yyyy\"],\n \"data\": [float],\n \"deprecated\": bool\n}\n```"
operationId: wind_onshore_share_daily_avg_wind_onshore_share_daily_avg_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
- name: year
in: query
required: false
schema:
type: integer
default: -1
title: Year
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DailyAvgDict'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/wind_offshore_share:
get:
tags:
- ren_share
summary: Wind Offshore Share
description: "<b>Wind Offshore Share of Load</b>\n \n\n\n \n\nReturns the wind offshore share of load from today until prediction is currently available\n \n\n\n \n\nResponse schema:\n \n\n```json\n{\n \"unix_seconds\": list[int],\n \"data\": list[float],\n \"forecast\": list[float],\n \"deprecated\": bool\n}\n```"
operationId: wind_offshore_share_wind_offshore_share_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ShareModel'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/wind_offshore_share_daily_avg:
get:
tags:
- ren_share
summary: Wind Offshore Share Daily Avg
description: "<b>Average daily wind offshore share of load</b>\n \n\n\n \n\nReturns the average daily wind offshore share of load of the last 365 days\n \n\n\n \n\nResponse schema:\n \n\n```json\n\n{\n \"days\": [\"dd.mm.yyyy\"],\n \"data\": [float],\n \"deprecated\": bool\n}\n\n```"
operationId: wind_offshore_share_daily_avg_wind_offshore_share_daily_avg_get
parameters:
- name: country
in: query
required: false
schema:
type: string
default: de
title: Country
- name: year
in: query
required: false
schema:
type: integer
default: -1
title: Year
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DailyAvgDict'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
RenShareModel:
properties:
unix_seconds:
items:
type: integer
type: array
title: Unix Seconds
ren_share:
items:
anyOf:
- type: number
- type: 'null'
type: array
title: Ren Share
solar_share:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Solar Share
wind_onshore_share:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Wind Onshore Share
wind_offshore_share:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Wind Offshore Share
substitute:
type: boolean
title: Substitute
deprecated:
type: boolean
title: Deprecated
type: object
required:
- unix_seconds
- ren_share
- substitute
- deprecated
title: RenShareModel
TrafficModel:
properties:
unix_seconds:
items:
type: integer
type: array
title: Unix Seconds
share:
items:
anyOf:
- type: number
- type: 'null'
type: array
title: Share
signal:
items:
anyOf:
- type: integer
- type: 'null'
type: array
title: Signal
description: "\n 0: Red (low renewable share)\n 1: Yellow (average renewable share)\n 2: Green (high renewable share)\n "
substitute:
type: boolean
title: Substitute
deprecated:
type: boolean
title: Deprecated
type: object
required:
- unix_seconds
- share
- substitute
- deprecated
title: TrafficModel
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ShareModel:
properties:
unix_seconds:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Unix Seconds
data:
anyOf:
- items:
anyOf:
- type: number
- type: 'null'
type: array
- type: 'null'
title: Data
forecast:
anyOf:
- items:
anyOf:
- type: number
- type: 'null'
type: array
- type: 'null'
title: Forecast
deprecated:
type: boolean
title: Deprecated
type: object
required:
- deprecated
title: ShareModel
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
DailyAvgDict:
properties:
days:
items:
type: string
type: array
title: Days
description: List of days in the format dd.mm.yyyy
data:
items:
anyOf:
- type: number
- type: 'null'
type: array
title: Data
description: List of average daily values
deprecated:
type: boolean
title: Deprecated
type: object
required:
- days
- data
- deprecated
title: DailyAvgDict