# Netztransparenz

Query German TSO transparency data (netztransparenz.de) including NRV balance, balancing prices, reserve activation, and renewable forecasts.

## Query Netztransparenz timeseries data

> Query German TSO transparency data (netztransparenz.de) including:\
> \- NRV balance (grid control cooperation)\
> \- Balancing energy prices (reBAP, ID-AEP, AEP estimator)\
> \- Reserve power activation (aFRR, mFRR, FCR)\
> \- Renewable energy marketing and forecasts\
> \- Emergency measures (additional measures, emergency assistance, interruptible loads)\
> \
> \*\*TSOs (Transmission System Operators):\*\*\
> \- 50Hertz (Eastern Germany)\
> \- Amprion (Western Germany)\
> \- TenneT TSO (Northern Germany)\
> \- TransnetBW (Southern Germany)\
> \- gesamt (Germany-wide aggregate)\
> \
> \*\*Variables with Per-TSO Data:\*\*\
> Reserve activation (aktivierte\_srl\_\*, aktivierte\_mrl\_\*, srl\_optimierung\_\*, mrl\_optimierung\_\*,\
> difference\_\*, prl\_\*, zusatzmassnahmen\_\*, nothilfe\_\*), interruptible loads (abschaltbare\_lasten\_\*),\
> and control area balance (rz\_saldo\_\*) have data for all 4 individual TSOs plus the gesamt aggregate.\
> \
> \*\*Response Formats:\*\*\
> \- \`json\`: Columnar JSON format \`{column: \[values], ...}\`\
> \- \`arrow\`: Apache Arrow IPC stream for efficient processing\
> \
> \*\*Authentication\*\*: Requires API key.

```json
{"openapi":"3.1.0","info":{"title":"Jua Query Engine API","version":"0.1.0"},"tags":[{"name":"netztransparenz","description":"Query German TSO transparency data (netztransparenz.de) including NRV balance, balancing prices, reserve activation, and renewable forecasts."}],"security":[{"HTTPBearer":[]}],"paths":{"/v1/netztransparenz/data":{"post":{"tags":["netztransparenz"],"summary":"Query Netztransparenz timeseries data","description":"Query German TSO transparency data (netztransparenz.de) including:\n- NRV balance (grid control cooperation)\n- Balancing energy prices (reBAP, ID-AEP, AEP estimator)\n- Reserve power activation (aFRR, mFRR, FCR)\n- Renewable energy marketing and forecasts\n- Emergency measures (additional measures, emergency assistance, interruptible loads)\n\n**TSOs (Transmission System Operators):**\n- 50Hertz (Eastern Germany)\n- Amprion (Western Germany)\n- TenneT TSO (Northern Germany)\n- TransnetBW (Southern Germany)\n- gesamt (Germany-wide aggregate)\n\n**Variables with Per-TSO Data:**\nReserve activation (aktivierte_srl_*, aktivierte_mrl_*, srl_optimierung_*, mrl_optimierung_*,\ndifference_*, prl_*, zusatzmassnahmen_*, nothilfe_*), interruptible loads (abschaltbare_lasten_*),\nand control area balance (rz_saldo_*) have data for all 4 individual TSOs plus the gesamt aggregate.\n\n**Response Formats:**\n- `json`: Columnar JSON format `{column: [values], ...}`\n- `arrow`: Apache Arrow IPC stream for efficient processing\n\n**Authentication**: Requires API key.","operationId":"post_netztransparenz_data_v1_netztransparenz_data_post","parameters":[{"name":"format","in":"query","required":false,"schema":{"enum":["json","arrow"],"type":"string","description":"Response format: 'json' for columnar JSON or 'arrow' for Apache Arrow format","default":"json","title":"Format"},"description":"Response format: 'json' for columnar JSON or 'arrow' for Apache Arrow format"},{"name":"include_units","in":"query","required":false,"schema":{"type":"boolean","description":"When true, JSON responses are wrapped in {data, units}. Units are always sent via X-Variable-Units header regardless.","default":false,"title":"Include Units"},"description":"When true, JSON responses are wrapped in {data, units}. Units are always sent via X-Variable-Units header regardless."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NetztransparenzTimeseriesQuery"}}}},"responses":{"200":{"description":"Successfully retrieved Netztransparenz data","content":{"application/json":{"schema":{}},"application/vnd.apache.arrow.stream":{"description":"Apache Arrow IPC stream format"}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Authentication required"},"403":{"description":"Insufficient permissions"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"NetztransparenzTimeseriesQuery":{"properties":{"variables":{"anyOf":[{"items":{"$ref":"#/components/schemas/NetztransparenzVariable"},"type":"array"},{"type":"null"}],"title":"Variables","description":"List of Netztransparenz variable types to query. If not set, returns all variables."},"tsos":{"anyOf":[{"items":{"$ref":"#/components/schemas/NetztransparenzTso"},"type":"array"},{"type":"null"}],"title":"Tsos","description":"List of TSOs to filter by (e.g., ['50Hertz', 'Amprion'])"},"subcategories":{"anyOf":[{"items":{"$ref":"#/components/schemas/NetztransparenzSubcategory"},"type":"array"},{"type":"null"}],"title":"Subcategories","description":"List of subcategories (only for ABSM relief regions or AEP module variables)"},"directions":{"anyOf":[{"items":{"$ref":"#/components/schemas/NetztransparenzDirection"},"type":"array"},{"type":"null"}],"title":"Directions","description":"List of directions (e.g., ['positive', 'negative'])"},"start_time":{"type":"string","format":"date-time","title":"Start Time","description":"Start time for the query (inclusive)"},"end_time":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"End Time","description":"End time for the query (exclusive). If None, no upper bound is applied (useful for day-ahead forecasts)"},"aggregation":{"$ref":"#/components/schemas/jua_query_v2__netztransparenz__query__TemporalAggregation","description":"Temporal aggregation to apply","default":"none"},"include_metadata":{"type":"boolean","title":"Include Metadata","description":"Include metadata column in response","default":false},"time_zone":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time Zone","description":"IANA time zone name for time formatting (e.g., 'Europe/Berlin', 'America/New_York'). Defaults to UTC"},"order_by":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Order By","description":"Columns to order by"},"pagination":{"anyOf":[{"$ref":"#/components/schemas/Pagination"},{"type":"null"}],"description":"Pagination parameters"}},"type":"object","required":["start_time"],"title":"NetztransparenzTimeseriesQuery","description":"Query parameters for Netztransparenz timeseries data.\n\nSupports filtering by:\n- variables: List of variable types (optional, returns all if not set)\n- tsos: List of TSOs to filter by (optional)\n- subcategories: List of technology subcategories (optional)\n- directions: List of directions - positive/negative (optional)\n- start_time: Start of time range (required)\n- end_time: End of time range (optional - if None, no upper bound applied)\n\nNote: end_time can be None to include all future data, which is useful\nfor day-ahead forecasts that extend into tomorrow."},"NetztransparenzVariable":{"type":"string","enum":["vermarktung_epex","vermarktung_exaa","vermarktung_solar","vermarktung_wind","vermarktung_sonstige","untertaegige_strommengen","differenz_einspeiseprognose","hochrechnung_solar","hochrechnung_wind","absm_ausgewiesen","absm_zugeteilt","absm_erzeugungsverbot","nrv_saldo_betrieblich","nrv_saldo_qualitaetsgesichert","rz_saldo_betrieblich","rz_saldo_qualitaetsgesichert","nrv_saldo_minute_betrieblich","aep_schaetzer_betrieblich","idaep","rebap_qualitaetsgesichert","voaa_qualitaetsgesichert","finanzielle_wirkung_aep","aep_module_qualitaetsgesichert","aktivierte_srl_betrieblich","aktivierte_srl_qualitaetsgesichert","aktivierte_mrl_betrieblich","aktivierte_mrl_qualitaetsgesichert","srl_optimierung_betrieblich","srl_optimierung_qualitaetsgesichert","mrl_optimierung_betrieblich","mrl_optimierung_qualitaetsgesichert","difference_betrieblich","difference_qualitaetsgesichert","prl_betrieblich","prl_qualitaetsgesichert","zusatzmassnahmen_betrieblich","zusatzmassnahmen_qualitaetsgesichert","nothilfe_betrieblich","nothilfe_qualitaetsgesichert","abschaltbare_lasten_betrieblich","abschaltbare_lasten_qualitaetsgesichert","mfrr_satisfied_demand_betrieblich","inanspruchnahme_ausgleichsenergie"],"title":"NetztransparenzVariable","description":"Netztransparenz timeseries variable types.\n\nVariables are organized by category matching the data dictionary."},"NetztransparenzTso":{"type":"string","enum":["50Hertz","Amprion","TenneT TSO","TransnetBW","gesamt"],"title":"NetztransparenzTso","description":"German Transmission System Operators (TSOs).\n\nThe four TSOs that operate the German high-voltage transmission grid,\nplus the Germany-wide aggregate."},"NetztransparenzSubcategory":{"type":"string","enum":["H1","H2","T1","T2","T3","T4","T5","T6","AEP Modul 1","AEP Modul 2","AEP Modul 3"],"title":"NetztransparenzSubcategory","description":"Subcategories for specific variable types.\n\nNote: Only certain variables support subcategory filtering:\n- ABSM variables (absm_*): H1, H2, T1-T6 (relief regions)\n- aep_module_qualitaetsgesichert, finanzielle_wirkung_aep: AEP Modul 1/2/3"},"NetztransparenzDirection":{"type":"string","enum":["positive","negative"],"title":"NetztransparenzDirection","description":"Direction indicators for signed values.\n\nUsed for balance and reserve data: positive/negative values."},"jua_query_v2__netztransparenz__query__TemporalAggregation":{"type":"string","enum":["none","hourly","daily"],"title":"TemporalAggregation","description":"Temporal aggregation options for Netztransparenz queries."},"Pagination":{"properties":{"limit":{"type":"integer","title":"Limit","default":100},"offset":{"type":"integer","title":"Offset","default":0}},"type":"object","title":"Pagination"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"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"}}}}
```

## List available Netztransparenz variables

> Get a list of available Netztransparenz variable types with metadata including:\
> \- Variable name\
> \- Description\
> \- Unit of measurement\
> \- Whether variable uses TSO or subcategory filters\
> \
> \*\*Variable Categories:\*\*\
> \- Renewable Marketing (vermarktung\_\*)\
> \- Day-Ahead Forecast (hochrechnung\_\*)\
> \- NRV Balance (nrv\_saldo\_\*, rz\_saldo\_\*)\
> \- Balancing Prices (rebap\_qualitaetsgesichert, idaep, aep\_schaetzer\_\*)\
> \- Reserve Activation (aktivierte\_srl\_\*, aktivierte\_mrl\_\*, prl\_\*)\
> \- Emergency Measures (zusatzmassnahmen\_\*, nothilfe\_\*, abschaltbare\_lasten\_\*)\
> \
> \*\*Authentication\*\*: Requires API key.

```json
{"openapi":"3.1.0","info":{"title":"Jua Query Engine API","version":"0.1.0"},"tags":[{"name":"netztransparenz","description":"Query German TSO transparency data (netztransparenz.de) including NRV balance, balancing prices, reserve activation, and renewable forecasts."}],"security":[{"HTTPBearer":[]}],"paths":{"/v1/netztransparenz/variables":{"get":{"tags":["netztransparenz"],"summary":"List available Netztransparenz variables","description":"Get a list of available Netztransparenz variable types with metadata including:\n- Variable name\n- Description\n- Unit of measurement\n- Whether variable uses TSO or subcategory filters\n\n**Variable Categories:**\n- Renewable Marketing (vermarktung_*)\n- Day-Ahead Forecast (hochrechnung_*)\n- NRV Balance (nrv_saldo_*, rz_saldo_*)\n- Balancing Prices (rebap_qualitaetsgesichert, idaep, aep_schaetzer_*)\n- Reserve Activation (aktivierte_srl_*, aktivierte_mrl_*, prl_*)\n- Emergency Measures (zusatzmassnahmen_*, nothilfe_*, abschaltbare_lasten_*)\n\n**Authentication**: Requires API key.","operationId":"get_netztransparenz_variables_v1_netztransparenz_variables_get","responses":{"200":{"description":"Successfully retrieved variable list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/jua_query_v2__netztransparenz__types__AvailableVariablesResult"}}}},"401":{"description":"Authentication required"}}}}},"components":{"schemas":{"jua_query_v2__netztransparenz__types__AvailableVariablesResult":{"properties":{"variables":{"items":{"$ref":"#/components/schemas/NetztransparenzVariableInfo"},"type":"array","title":"Variables"}},"type":"object","required":["variables"],"title":"AvailableVariablesResult","description":"Result for available variables query."},"NetztransparenzVariableInfo":{"properties":{"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"unit":{"type":"string","title":"Unit"},"uses_tso":{"type":"boolean","title":"Uses Tso","default":true},"uses_subcategory":{"type":"boolean","title":"Uses Subcategory","default":false},"uses_direction":{"type":"boolean","title":"Uses Direction","default":false}},"type":"object","required":["name","description","unit"],"title":"NetztransparenzVariableInfo","description":"Information about a Netztransparenz variable."}}}}
```

## List available TSOs

> Get a list of available German Transmission System Operators (TSOs).\
> \
> The four TSOs operating the German high-voltage grid, plus the aggregate:\
> \- \*\*50Hertz\*\* - Eastern Germany\
> \- \*\*Amprion\*\* - Western Germany\
> \- \*\*TenneT TSO\*\* - Northern Germany\
> \- \*\*TransnetBW\*\* - Southern Germany\
> \- \*\*gesamt\*\* - Germany-wide aggregate (sum of all TSOs)\
> \
> Optionally filter by variable to see which TSOs have data for a specific variable.\
> Many reserve activation variables now have per-TSO data in addition to the aggregate.\
> \
> \*\*Authentication\*\*: Requires API key.

```json
{"openapi":"3.1.0","info":{"title":"Jua Query Engine API","version":"0.1.0"},"tags":[{"name":"netztransparenz","description":"Query German TSO transparency data (netztransparenz.de) including NRV balance, balancing prices, reserve activation, and renewable forecasts."}],"security":[{"HTTPBearer":[]}],"paths":{"/v1/netztransparenz/tsos":{"get":{"tags":["netztransparenz"],"summary":"List available TSOs","description":"Get a list of available German Transmission System Operators (TSOs).\n\nThe four TSOs operating the German high-voltage grid, plus the aggregate:\n- **50Hertz** - Eastern Germany\n- **Amprion** - Western Germany\n- **TenneT TSO** - Northern Germany\n- **TransnetBW** - Southern Germany\n- **gesamt** - Germany-wide aggregate (sum of all TSOs)\n\nOptionally filter by variable to see which TSOs have data for a specific variable.\nMany reserve activation variables now have per-TSO data in addition to the aggregate.\n\n**Authentication**: Requires API key.","operationId":"get_netztransparenz_tsos_v1_netztransparenz_tsos_get","parameters":[{"name":"variable","in":"query","required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/NetztransparenzVariable"},{"type":"null"}],"description":"Optional variable to filter TSOs by","title":"Variable"},"description":"Optional variable to filter TSOs by"}],"responses":{"200":{"description":"Successfully retrieved TSO list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AvailableTsosResult"}}}},"401":{"description":"Authentication required"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"NetztransparenzVariable":{"type":"string","enum":["vermarktung_epex","vermarktung_exaa","vermarktung_solar","vermarktung_wind","vermarktung_sonstige","untertaegige_strommengen","differenz_einspeiseprognose","hochrechnung_solar","hochrechnung_wind","absm_ausgewiesen","absm_zugeteilt","absm_erzeugungsverbot","nrv_saldo_betrieblich","nrv_saldo_qualitaetsgesichert","rz_saldo_betrieblich","rz_saldo_qualitaetsgesichert","nrv_saldo_minute_betrieblich","aep_schaetzer_betrieblich","idaep","rebap_qualitaetsgesichert","voaa_qualitaetsgesichert","finanzielle_wirkung_aep","aep_module_qualitaetsgesichert","aktivierte_srl_betrieblich","aktivierte_srl_qualitaetsgesichert","aktivierte_mrl_betrieblich","aktivierte_mrl_qualitaetsgesichert","srl_optimierung_betrieblich","srl_optimierung_qualitaetsgesichert","mrl_optimierung_betrieblich","mrl_optimierung_qualitaetsgesichert","difference_betrieblich","difference_qualitaetsgesichert","prl_betrieblich","prl_qualitaetsgesichert","zusatzmassnahmen_betrieblich","zusatzmassnahmen_qualitaetsgesichert","nothilfe_betrieblich","nothilfe_qualitaetsgesichert","abschaltbare_lasten_betrieblich","abschaltbare_lasten_qualitaetsgesichert","mfrr_satisfied_demand_betrieblich","inanspruchnahme_ausgleichsenergie"],"title":"NetztransparenzVariable","description":"Netztransparenz timeseries variable types.\n\nVariables are organized by category matching the data dictionary."},"AvailableTsosResult":{"properties":{"tsos":{"items":{"type":"string"},"type":"array","title":"Tsos"}},"type":"object","required":["tsos"],"title":"AvailableTsosResult","description":"Result for available TSOs query."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"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"}}}}
```

## List available subcategories

> Get a list of available subcategories (technology types) for data that is\
> broken down by energy source.\
> \
> Subcategories include:\
> \- \*\*solar\*\* - Solar photovoltaic\
> \- \*\*wind\_onshore\*\* - Onshore wind\
> \- \*\*wind\_offshore\*\* - Offshore wind\
> \- \*\*wind\*\* - Combined wind (used in some endpoints)\
> \
> \*\*Authentication\*\*: Requires API key.

```json
{"openapi":"3.1.0","info":{"title":"Jua Query Engine API","version":"0.1.0"},"tags":[{"name":"netztransparenz","description":"Query German TSO transparency data (netztransparenz.de) including NRV balance, balancing prices, reserve activation, and renewable forecasts."}],"security":[{"HTTPBearer":[]}],"paths":{"/v1/netztransparenz/subcategories":{"get":{"tags":["netztransparenz"],"summary":"List available subcategories","description":"Get a list of available subcategories (technology types) for data that is\nbroken down by energy source.\n\nSubcategories include:\n- **solar** - Solar photovoltaic\n- **wind_onshore** - Onshore wind\n- **wind_offshore** - Offshore wind\n- **wind** - Combined wind (used in some endpoints)\n\n**Authentication**: Requires API key.","operationId":"get_netztransparenz_subcategories_v1_netztransparenz_subcategories_get","parameters":[{"name":"variable","in":"query","required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/NetztransparenzVariable"},{"type":"null"}],"description":"Optional variable to filter subcategories by","title":"Variable"},"description":"Optional variable to filter subcategories by"}],"responses":{"200":{"description":"Successfully retrieved subcategory list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AvailableSubcategoriesResult"}}}},"401":{"description":"Authentication required"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"NetztransparenzVariable":{"type":"string","enum":["vermarktung_epex","vermarktung_exaa","vermarktung_solar","vermarktung_wind","vermarktung_sonstige","untertaegige_strommengen","differenz_einspeiseprognose","hochrechnung_solar","hochrechnung_wind","absm_ausgewiesen","absm_zugeteilt","absm_erzeugungsverbot","nrv_saldo_betrieblich","nrv_saldo_qualitaetsgesichert","rz_saldo_betrieblich","rz_saldo_qualitaetsgesichert","nrv_saldo_minute_betrieblich","aep_schaetzer_betrieblich","idaep","rebap_qualitaetsgesichert","voaa_qualitaetsgesichert","finanzielle_wirkung_aep","aep_module_qualitaetsgesichert","aktivierte_srl_betrieblich","aktivierte_srl_qualitaetsgesichert","aktivierte_mrl_betrieblich","aktivierte_mrl_qualitaetsgesichert","srl_optimierung_betrieblich","srl_optimierung_qualitaetsgesichert","mrl_optimierung_betrieblich","mrl_optimierung_qualitaetsgesichert","difference_betrieblich","difference_qualitaetsgesichert","prl_betrieblich","prl_qualitaetsgesichert","zusatzmassnahmen_betrieblich","zusatzmassnahmen_qualitaetsgesichert","nothilfe_betrieblich","nothilfe_qualitaetsgesichert","abschaltbare_lasten_betrieblich","abschaltbare_lasten_qualitaetsgesichert","mfrr_satisfied_demand_betrieblich","inanspruchnahme_ausgleichsenergie"],"title":"NetztransparenzVariable","description":"Netztransparenz timeseries variable types.\n\nVariables are organized by category matching the data dictionary."},"AvailableSubcategoriesResult":{"properties":{"subcategories":{"items":{"type":"string"},"type":"array","title":"Subcategories"}},"type":"object","required":["subcategories"],"title":"AvailableSubcategoriesResult","description":"Result for available subcategories query."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"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"}}}}
```
