--- id: ecmwf-api-client version: "1.7.0" license: Apache License Version 2.0 license_treatment: permissive maintenance: active --- # ecmwf-api-client — Python client for ECMWF web services API. License: permissive · Maintenance: active · Downloads: 94.0K/mo ## What it is and what it does This is a Python client for ECMWF's Web API, providing two main entry points: ECMWFDataServer for retrieving IFS research experiments, and ECMWFService for accessing MARS (Meteorological Archival and Retrieval System) for authorized users. The package handles authentication via credentials stored in a config file or environment variables, and abstracts away the HTTP details of communicating with ECMWF's servers. It is designed for researchers and developers who need programmatic access to ECMWF weather and climate data. The package supports both anonymous access (lower quality of service, IFS experiments only) and registered access (full MARS archive, better performance). Configuration is flexible: you can use a local config file, environment variables, or pass credentials directly in code. The package includes logging support and integrates with ECMWF's documentation on retrieval efficiency and request limits. Use it for: - Download IFS research experiment data for weather model validation or climate studies. - Retrieve historical meteorological data from MARS archive for authorized institutional users. - Automate batch retrieval of weather data as part of a data processing pipeline. - Access forecast data programmatically without manual web interface interaction. - Build monitoring or analysis tools that depend on ECMWF meteorological datasets. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python client for accessing ECMWF's IFS research experiments and MARS meteorological archive via their Web API. Yes. The package is actively maintained, has no external dependencies, supports modern Python versions (3.8–3.13), carries no known security vulnerabilities, and is licensed permissively. Install it if you need programmatic access to ECMWF IFS experiments or MARS archive data. The main constraint is that MARS access requires ECMWF authorization; anonymous access is limited to IFS experiments with reduced quality of service. ## Install pip install ecmwf-api-client uv add ecmwf-api-client poetry add ecmwf-api-client ## Installing ecmwf-api-client Before you install: Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent release 58 days ago and consistent commit activity. Supports Python 3.8–3.13 and PyPy. License in practice: Apache License Version 2.0 (permissive). You can use, modify, and distribute this package freely in commercial and private projects, provided you include the license notice. Quickstart: pip install ecmwf-api-client from ecmwf_api_client import ECMWFDataServer server = ECMWFDataServer() server.retrieve({"dataset": "..."}) ECMWF API credentials (URL, key, email) required for registered access; anonymous access available but with lower quality of service and limited to IFS research experiments only. Verify before relying: - Whether the package handles automatic retry logic or rate-limiting for large requests. - Performance characteristics when retrieving large datasets or multiple concurrent requests. - Whether MARS access requires additional system-level setup beyond API credentials. ## Package facts - License: Apache License Version 2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 94.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags ECMWF weather data API client, meteorological archive retrieval, IFS experiments download, MARS weather data access, ECMWF web services Python, weather forecast data retrieval, climate data API client, weather-data, meteorology, api-client [View on SkillFed](https://skillfed.io/packages/ecmwf-api-client) · [View on PyPI](https://pypi.org/project/ecmwf-api-client/)