Skip to main content

A python API wrapper for JAO.eu

Project description

jao-py

tests

Python client for the various endpoints offered by jao.eu, the Joint Allocation Office. "Europe's single leading trading platform( e-CAT) for cross-border transmission capacity"

More information about JAO can be found on their website https://jao.eu/

jao.eu has various ways of retrieving data. This package tries to offer useful functions to handle them. This package is not exhaustive, more methods are added when the authors needs them. If you want to see other methods added please either open a feature request issue to give others ideas or supply a pull request yourself.

Installation

python3 -m pip install jao-py

Usage

Current clients

The package comes with the current pandas clients:

  • JaoAPIClient: api client for the webservice API defined here
  • JaoPublicationToolClient: client for the Core Day-Ahead publication tool defined here
  • JaoPublicationToolPandasClient: Pandas client for the Core Day-Ahead publication tool defined here
  • JaoPublicationToolPandasIntraDay: client for Core Intradaypublication tool for Intraday defined here
  • JaoPublicationToolPandasNordics: client for Nordic Day-Ahead publication tool defined here The publication tool clients have valid data from their respective go lives:
  • Core Day-Ahead: business day 2022-06-09 onwards
  • Core Intraday(a): business day 2024-06-14 onwards
  • Core Intraday(b): business day 2024-05-29 onwards
  • Core Intraday(c): business day 2025-06-25 onwards
  • Nordic Day-Ahead: business day 2024-10-30 onwards

Core Intraday a and b are combined in the same intraday client. In the initialization of the client you can choose which one you want like so:

from jao import JaoPublicationToolPandasIntraDay

client = JaoPublicationToolPandasIntraDay(version='a') # IDCC(a)
client = JaoPublicationToolPandasIntraDay(version='b') # IDCC(b)
client = JaoPublicationToolPandasIntraDay(version='c') # IDCC(c)

Rate Limiter

JAO currently has a fixed rate limiting of 100 requests per minute, if you surpass this a HTTP 429 is returned. The library has a naive way of handling this by sleeping for RATE_LIMIT_HANDLER seconds, which is by default 60 seconds.
If you want to disable this set RATE_LIMIT_HANDLER to 0 through environment variables and the library will throw a HTTP exception that you can handle yourself.

Experimental Features

This package provides support for the experimental data mirror mirror.flowbased.eu. This allows to download final and prefinal domain from the fast mirror. If the requested day is not available the package will fallback to the JAO publication tool.
To enable it either use use_mirror=True in the function call or set the environment variable JAO_USE_MIRROR=1, by default this feature is off.

Deprecated clients

The package also includes legacy clients for flowbased CWE data in the CWE subpackage. These return data up until business day 2022-06-08

  • JaoUtilityToolASMXClient: a very light wrapper around the ASMX Web Service API implemented as a passthrough to the suds-community pakcage
  • JaoUtilityToolCSVClient: client to download csv data inm the same way as the utility tool excel file, returns pandas dataframes
  • JaoUtilityToolXmlClient: downloads xml data of the utilitytool, this requires solving a captcha by the user, returns pandas dataframes

To use these deprecated clients be sure to install the following additional dependencies:

suds-community
lxml
pillow

this is only required for the CWE deprecated subpackage

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jao_py-0.6.9.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jao_py-0.6.9-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file jao_py-0.6.9.tar.gz.

File metadata

  • Download URL: jao_py-0.6.9.tar.gz
  • Upload date:
  • Size: 19.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jao_py-0.6.9.tar.gz
Algorithm Hash digest
SHA256 4901e8ce44c0195950f5101cb1e7975a9abd3eba04445819e3e3d97256edeeb2
MD5 a4e2a4f63cc6d8a3eead1dee04daef8c
BLAKE2b-256 0550855e8f3a55b0e9e1e61d58ca27c7bd3a343267878043448025371b4220a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for jao_py-0.6.9.tar.gz:

Publisher: publish-to-test-pypi.yml on fboerman/jao-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jao_py-0.6.9-py3-none-any.whl.

File metadata

  • Download URL: jao_py-0.6.9-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jao_py-0.6.9-py3-none-any.whl
Algorithm Hash digest
SHA256 3d5f3fc813fcc093f78b977706f1a699f30006e0fe09ba4ce1338f538e76f625
MD5 40c62a665034194d02a5f68de70f07e4
BLAKE2b-256 b7ca01d72fca9e6075a020e5abd65718fc6ea68872c79f2b391544605034219f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jao_py-0.6.9-py3-none-any.whl:

Publisher: publish-to-test-pypi.yml on fboerman/jao-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page