This is a recipe for first time users of CAMS Reanalysis data and ECMWF's data server.
1. Learn about CAMS Reanalysis data
- Read the CAMS Reanalysis data documentation and take note of the parameters (fields) you want to use, and of the corresponding values for data type, stream, level type (surface, pressure levels, model levels, etc) base time and forecast steps.
- Browse the CAMS Reanalysis catalogue and make sure the data you are interested in is available in CAMS Reanalysis catalogue.
2. User account and License agreement
- The CAMS Reanalysis data is hosted at ECMWF. To access the CAMS Reanalysis data you need a user account with ECMWF, so if you do not have a account, register a ECMWF account now.
- Read the Copernicus license agreement and accept the agreement at the bottom the page. This is necessary so we have a record of you accepting the license agreement.
3. Technical prerequisites
- A computer with a *nix operating system is highly recommended. Microsoft Windows is known to work too, but is unsupported, see here for details.
- The Python programming language. If you do not have it installed yet, install Python now.
4. Set up your computer
This is to configure your computer to programmatically retrieve data from ECMWF. You only need to do this once, and only if you have never retrieved ECMWF data using Python before. For more information refer to Access ECMWF Public Datasets of ECMWF WebAPI.
1. Install the ECMWF WebAPI client library by running:
If you cannot use the sudo pip command above (e.g. no admin rights on your machine), use the
--user option of pip to install it in
2.Get and install an ECMWF API key:
Go to https://apps.ecmwf.int/auth/login/ to verify you are logged in. If you are not, log in with your ECMWF account details (as registered in step 2).
Go to https://api.ecmwf.int/v1/key/ . You will see something like below:
3. Copy the bit with the curly brackets as shown above into a text file and save the file as $HOME/.ecmwfapirc (on Unix/Linux) or %USERPROFILE%\.ecmwfapirc (on Windows)
5. Run a test
This is to verify that your computer is set up correctly.
1. Copy the following Python script to a text file and save it, for example as 'my_CAMS-Reanalysis_test_script.py'
2. Run the script. On most computers you would do this by opening a command prompt and typing
The test request will download data from ECMWF and save as file 'my_CAMS-Reanalysis_test_file.nc' in the directory you issued the command from.
Note that the data retrieval is not designed to be instant. The test request above usually takes a few minutes to complete, but depending on demand can take longer.
3. With your favourite NetCDF file reader verify that you can read the file. If you are not familiar with NetCDF please see What are NetCDF files and how can I read them
If you get an error message or the output is not as specified in to the Python script, most likely your computer setup is wrong, or you did not accept the Copernicus license, so please go back to the previous steps.
6. Create your data retrieval script
- Browse the CAMS Reanalysis catalogue for the data you are interested in, and in the last step make a selection in all boxes and click 'View the MARS request'. This shows a template Python script with your selected options.
- Copy the Python script to a text file and save it, for example as 'my_CAMS-Reanalysis_script_v1.py'.
- If you specify "format" as "netcdf", then you will need to set "grid". Otherwise, GRIB to netCDF conversion will fail.
- Adapt the Python script to your requirements,e.g. change date, time and grid. Here is some guidance:
For available "keyword":"value" combinations please browsefor the data you are interested in, and in the last step make a selection in all boxes and click 'View the MARS request'. This shows a template Python script with your selected options.
- You can have a maximum of three active requests at a time.
- The maximum data volume is 20GB per request.
- The maximum number of fields to be retrieved is 600,000 fields per request.
Note that the data retrieval is not designed to be instant. A larger request can take hours and even days to complete.
To retrieve data efficiently (and get your data quicker!) you should retrieve all the data you need from one tape, then from the next tape, and so on. In most cases this means retrieving all the data you need for one month, then for the next month, and so on. See CAMS Reanalysis retrieval efficiency.
Also before attempting to retrieve CAMS Reanalysis forecast data in NetCDF format, to avoid disappointment, please be aware of this potential issue.
7. Run your data retrieval script
On most computers you would do this by opening a command prompt and typing
This will retrieve the data as specified and download it as a single file to your computer into the current directory (or whichever "target" directory you specified).
For long running processes you can check the progress of your request in your job list.
8. Check results
Check that the data you downloaded meets your requirements.
To report an issue or bug please contact Copernicus Support at ECMWF