ESO Archive Frequently Asked Questions
How do I programmatically access the Archive?
Currently there are three possibilities that allow to programmatically search data files of certain characteristics (e.g. belonging to your observing programme) and download the identified datasets:
⚠️ Methods not mentioned in this page (e.g. older bash and python scripts provided via the Archive FAQs) are deprecated and should not be used anymore after July 2026.
ESO Lightweight CLI eso-download
Lightweight command-line utility to query and download ESO Archive raw and reduced data relying on VO protocols and astroquery.
Install eso-download
$ pip install eso-download
Examples
Retrieve raw metadata
$ eso-download raw --run-id '090.C-0733(A)' \
--instrument FORS2 \
--start-date 2013-01-01 --end-date 2013-04-01 \
--file-cat SCIENCE \
--max-rows 30 --metadata-only
Retrieve reduced metadata
$ eso-download phase3 \
--proposal-id "094.B-0345(A)" \
--collection MUSE
Full documentation and repository:
Astroquery ESO module
Astroquery is a python library for querying online astronomical databases and services. It provides a consistent interface to retrieve data from sources such as astronomical catalogs, archives, and observatories, making it easy to fetch images, spectra, object information, and other scientific data directly from python.
The recommended astroquery version to use is astroquery >= 0.4.12. At the time of writing still in pre-release installable via pip:
pip install astroquery==0.4.12.dev10885
The official documentation of the eso astroquery module is available at https://astroquery.readthedocs.io/en/latest/eso/eso.html.
⚠️ Support for astroquery versions earlier than 0.4.7 is expected to be discontinued within 2026. A subsequent update planned for later this year is expected to require astroquery 0.4.12 or later. Please keep astroquery up to date to ensure continued compatibility.
Standard VO protocols
VO standards allow to use common astronomical tools to access the archive directly from within tools like Aladin, TOPCAT, and SPLAT-VO. ESO provides access raw and reduced data, science catalogues, and ambient measurements using these standards. Example ADQL queries, python (astropy/pyvo) scripts and jupyter notebooks can be found at https://archive.eso.org/programmatic/.
Virtual Observatory in a nutshell
- SQL-based Astronomical Data Query Language ADQL 2.0, and the Tabular Access Protocol (TAP) allow users to query the ESO databases. - Query a TAP service. Two TAP endpoints are available:
- tap_obs - query tables describing raw and reduced data, ambient and meteorological measurements of the ESO sites + some ALMA data as well;
- tap_cat - query catalogues provided by the principal investigators [PIs] of ESO public surveys and observing programmes.
- PyVO allows to access data through Python Scripts and Jupyter notebooks - Script your access
- Via DataLink, raw and reduced data files can be downloaded directly via https together with their associated calibration reference files, as well as retrieving URLs to fetch metadata, previews, provenance information, etc. - Dataset actions
- Token authentication is supported to perform authorized queries and download files under proprietary period.
More about virtual observatory standard protocols and interfaces.
Data Access Policy
Access to the ESO science archive remains regulated by the ESO Data Access Policy.