{"id":8136,"library":"energyquantified","title":"Energy Quantified Time Series API Client","description":"The official Python library for Energy Quantified's Time Series API (eq-python-client). It allows users to access thousands of data series directly from Energy Quantified's time series database. The library integrates with popular data science tools like Pandas and Polars for high-performance data analysis and manipulation. Developed for Python 3.10+, it maintains an active release cadence with frequent minor updates.","status":"active","version":"0.15.1","language":"en","source_language":"en","source_url":"https://github.com/energyquantified/eq-python-client","tags":["energy","quantified","timeseries","api-client","data-analysis","pandas","polars","finance"],"install":[{"cmd":"pip install energyquantified","lang":"bash","label":"Install stable version"}],"dependencies":[{"reason":"Optional, for converting data series to Pandas DataFrames.","package":"pandas","optional":true},{"reason":"Optional, for converting data series to Polars DataFrames.","package":"polars","optional":true},{"reason":"Implicit dependency, unpinned in v0.14.1 for broader compatibility.","package":"websocket-client","optional":false}],"imports":[{"note":"The primary client class is directly importable from the top-level package.","wrong":"import energyquantified.EnergyQuantified","symbol":"EnergyQuantified","correct":"from energyquantified import EnergyQuantified"},{"note":"Use this class for users subscribing to the API via the Realto marketplace.","symbol":"RealtoConnection","correct":"from energyquantified import RealtoConnection"}],"quickstart":{"code":"import os\nfrom datetime import date, timedelta\nfrom energyquantified import EnergyQuantified\n\n# Initialize client with API key from environment variable\napi_key = os.environ.get('EQ_API_KEY', 'YOUR_API_KEY')\neq = EnergyQuantified(api_key=api_key)\n\n# Free-text search for curves\ncurves = eq.metadata.curves(q='de wind production actual')\n\nif curves:\n    # Load time series data for the first matching curve\n    curve = curves[0]\n    timeseries = eq.timeseries.load(\n        curve,\n        begin=date.today() - timedelta(days=10),\n        end=date.today()\n    )\n\n    print(f\"Loaded {len(timeseries)} values for {curve.name}\")\n\n    # Convert to Pandas DataFrame (requires pandas installed)\n    try:\n        pd_df = timeseries.to_pandas_dataframe()\n        print(\"\\nPandas DataFrame head:\")\n        print(pd_df.head())\n    except AttributeError:\n        print(\"\\nSkipping Pandas conversion: pandas not installed or old client version.\")\nelse:\n    print(\"No curves found for the query.\")\n","lang":"python","description":"This quickstart initializes the EnergyQuantified client using an API key (preferably from an environment variable), searches for a time series, loads data for it, and then converts the result to a Pandas DataFrame."},"warnings":[{"fix":"Update your code to use `to_pd_df()` or `to_pandas_dataframe()` for Pandas DataFrame conversions, and `to_pl_df()` or `to_polars_dataframe()` for Polars.","message":"Pandas DataFrame conversion methods `to_df()` and `to_dataframe()` were renamed to `to_pd_df()` and `to_pandas_dataframe()` respectively. The old methods are deprecated and will be removed in a future major release.","severity":"breaking","affected_versions":">=0.14"},{"fix":"Replace all occurrences of `exlude_tags` with `exclude_tags` in your method calls.","message":"The method parameter `exlude_tags` has been deprecated in favor of `exclude_tags`. This affects methods like `eq.instances.list()` and `eq.instances.load()`.","severity":"deprecated","affected_versions":">=0.14.5"},{"fix":"Upgrade `energyquantified` client to `v0.14.6` or newer. If you must stay on an older client, avoid Python versions 3.13.1-3.13.3.","message":"Users on Python versions >=3.13.1 and <3.13.4 may experience crashes when calling `PeriodSeries.to_timeseries()` due to a regression in Python's iterator behavior. This was patched in client version v0.14.6.","severity":"gotcha","affected_versions":"Python 3.13.1 to 3.13.3, client versions <0.14.6"}],"env_vars":null,"last_verified":"2026-04-16T00:00:00.000Z","next_check":"2026-07-15T00:00:00.000Z","problems":[{"fix":"Ensure you have a valid API key from Energy Quantified and that it's correctly passed during client initialization, either directly via `api_key='YOUR_KEY'` or from a file via `api_key_file='path/to/key.txt'`, or via an environment variable. For Realto users, use `RealtoConnection` and specify `api_url`.","cause":"The provided API key is missing or invalid. An API key is required to use the client.","error":"energyquantified.exceptions.EnergyQuantifiedException: Authentication failed"},{"fix":"Update your code to use the new method names: `timeseries.to_pandas_dataframe()` or `timeseries.to_pd_df()`.","cause":"You are attempting to use an old method name for Pandas DataFrame conversion. The method names were changed in `v0.14`.","error":"AttributeError: 'Timeseries' object has no attribute 'to_df'"},{"fix":"Install `pandas` or `polars` separately using `pip install pandas` or `pip install polars`.","cause":"The `pandas` or `polars` library is not installed in your environment, but the `energyquantified` client attempts to use its integration methods. The `energyquantified` package does not automatically install these data analysis libraries.","error":"AttributeError: 'Timeseries' object has no attribute 'to_pandas_dataframe' or 'to_polars_dataframe'"}]}