ESA Gaia DR3 Star Catalog Scraper
parseforge/gaia-star-catalog-scraper
Developer toolsOther
Scrapes stellar sources from the ESA Gaia DR3 catalog by ADQL query or cone search and returns each star as a flat row with astrometry, photometry, and radial velocity.
- Total users
- 2
- Monthly active
- 1
- Total runs
- 85
- Bookmarked
- 0
- Rating
- Not rated yet
- Last modified
- 12 days ago
Overview
ESA Gaia DR3 Star Catalog Scraper
Scrape stellar data from the ESA Gaia DR3 catalog by ADQL query or cone search, up to a million stars per run. Every star returns its position, parallax, proper motion, magnitudes, radial velocity, and effective temperature. Export to CSV, JSON, Excel, or XML.
The ESA Gaia DR3 archive holds astrometric and photometric data for nearly two billion stars, but the official web interface limits you to small, manual downloads. This Actor talks directly to the Gaia TAP service, runs your ADQL query or builds one from a cone search, and streams every matching row into a flat dataset. No local database setup, no command-line tools, no page-by-page clicking.
| Who uses it | What they scrape ESA Gaia DR3 Archive for |
|---|---|
| Astrophysics researchers | Pull a clean sample of stars in a cluster or field for population studies. |
| Data science students | Get a real, large astronomical dataset to practice SQL and analysis. |
| Astronomy educators | Download a region of sky to build lab exercises on HR diagrams or parallax. |
| Amateur astronomers | Extract all Gaia sources around a target object for charting or observation planning. |
What it does
This Actor collects stellar sources from the ESA Gaia DR3 catalog by ADQL query or cone search and returns each star as a flat row with astrometry, photometry, and radial velocity.
- π ADQL query mode: write a full ADQL SELECT against gaiadr3.gaia_source and the Actor runs it directly on the archive.
- π Cone search mode: give an RA, Dec, and radius in degrees and the Actor builds the query for you.
- π Flat row output: every star is one row with ra, dec, parallax, proper motion, magnitudes, radial velocity, and effective temperature.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with ESA Gaia DR3 Archive data
π Build a cluster member catalog.
An astrophysicist runs a cone search on an open cluster, filters by parallax and proper motion in the ADQL, and exports the clean member list for an isochrone fit.
π Create an HR diagram for a field.
A student queries a 0.5-degree radius around a globular cluster, downloads BP and RP magnitudes, and plots a color-magnitude diagram in a Jupyter notebook.
π°οΈ Cross-match with your own survey.
A researcher uploads a list of source IDs, runs an ADQL JOIN against gaia_source, and pulls Gaia astrometry for every object in their catalog.
πΊοΈ Map stellar density in a dark cloud.
An educator queries a large cone around a molecular cloud, bins the stars by position, and builds an extinction map from the source counts.
Why choose this scraper
| What you get | |
|---|---|
| No local tools needed | Query the Gaia archive from your browser; no TOPCAT, no astroquery, no command line. |
| ADQL or cone search | Use the full power of ADQL for complex selections, or drop in coordinates for a quick region. |
| Up to a million stars | Pull large samples in one run, far beyond the default web interface limits. |
| Fixed, flat schema | Every run returns the same columns so your downstream scripts never break. |
How it compares
No other Store actor targets ESA Gaia DR3 Archive the same way, so the honest comparison is with the alternatives teams actually weigh.
| ESA Gaia DR3 Star Catalog Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When ESA Gaia DR3 Archive changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor from a full ADQL query or a cone search center and radius, and set a maximum star count so your run stays within your plan. The Input tab lists every parameter.
A first run with the defaults:
{
"adqlQuery": "SELECT TOP 20 source_id, ra, dec, parallax, pmra, pmdec, phot_g_mean_mag, phot_bp_mean_mag, phot_rp_mean_mag, radial_velocity, teff_gspphot FROM gaiadr3.gaia_source WHERE parallax IS NOT NULL",
"radius": "0.1",
"maxItems": 10
}
A larger pull:
{
"adqlQuery": "SELECT TOP 20 source_id, ra, dec, parallax, pmra, pmdec, phot_g_mean_mag, phot_bp_mean_mag, phot_rp_mean_mag, radial_velocity, teff_gspphot FROM gaiadr3.gaia_source WHERE parallax IS NOT NULL",
"radius": "0.1",
"maxItems": 200
}
Pricing
Pay-per-result: $0.004 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $0.40 |
| 1,000 results | $4.00 |
| 10,000 results | $40.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the ESA Gaia DR3 Star Catalog Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to ESA Gaia DR3 Archive through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/gaia-star-catalog-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
My run timed out with no results.
The Gaia TAP service has query time limits. Reduce your cone radius, lower the maxItems, or simplify your ADQL query. Try adding a TOP clause to limit the rows the server must sort or scan.
I got a syntax error from the archive.
Check your ADQL query for typos. Make sure table names use the gaiadr3.gaia_source format, column names match the Gaia schema exactly, and string values are in single quotes.
The cone search returned zero stars.
Your RA or Dec may be outside the valid range (RA 0-360, Dec -90 to 90), or the radius may be so small that no Gaia sources fall inside it. Try increasing the radius to 0.05 or 0.1 degrees.
My ADQL query runs but returns fewer rows than I expected.
The maxItems setting caps the total rows the Actor will collect. If your query would return more, the Actor stops at the limit. Increase maxItems to get the full result set.
I need columns that are not in the prefill example.
Switch to ADQL query mode and write your own SELECT statement with the columns you need. The full Gaia DR3 schema is documented on the ESA website.
FAQ
| Question | Answer |
|---|---|
| What is the difference between ADQL query mode and cone search mode? | Cone search mode asks for an RA, Dec, and radius and builds a simple ADQL query for you. ADQL query mode lets you write the full SELECT statement yourself, so you can add WHERE clauses, JOINs, and custom column selections. |
| How many stars can I download in one run? | You can set the maximum up to 1,000,000 stars per run. The Gaia archive itself may time out on extremely large or complex queries, so start with a smaller limit and increase it once you know the query performs well. |
| Which Gaia table does this Actor query? | It queries the main source catalog table gaiadr3.gaia_source. If you need other tables like astrophysical parameters or variability, include them with a JOIN in your ADQL query. |
| Do I need an ESA account or API key? | No. The Actor queries the public Gaia TAP service anonymously. No registration, no token, no authentication of any kind is required. |
| What columns does the Actor return? | The output columns match the fields you request in your ADQL query. The prefill example returns source_id, ra, dec, parallax, pmra, pmdec, phot_g_mean_mag, phot_bp_mean_mag, phot_rp_mean_mag, radial_velocity, and teff_gspphot. |
| Can I query by object name instead of coordinates? | Not directly. The Actor takes RA and Dec in degrees or a raw ADQL query. You can resolve an object name to coordinates using a service like SIMBAD and then paste the RA and Dec into the cone search fields. |
| What is the cone radius unit? | The radius is in decimal degrees. A value of 0.1 is about 6 arcminutes, which is a good starting point for a single star cluster. Keep it small to avoid hitting archive timeouts. |
| Does this Actor handle Gaia DR2 or EDR3? | This Actor is built for Gaia DR3. You can query older releases by changing the table name in your ADQL query, but the prefill and cone search target DR3. |
| What output formats are supported? | You can export your dataset to CSV, JSON, Excel, or XML from the Apify platform after the run completes. |
| Can I schedule this Actor to run regularly? | Yes. Apify supports scheduled runs. You could, for example, re-run a query monthly if the Gaia catalog receives incremental updates, though DR3 is a fixed release. |
Related actors
- nasa-exoplanet-archive-scraper: Use this instead when you need confirmed exoplanet parameters and host-star data from the NASA Exoplanet Archive.
Browse the full ParseForge collection for more scrapers.
π Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
β οΈ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by European Space Agency. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| adqlQuery | string | Optional. A full ADQL query to run against the Gaia DR3 archive (table gaiadr3.gaia_source). When provided, this overrides the cone search fields below. Leave empty to use a cone search instead. | SELECT TOP 20 source_id, ra, dec, parall |
| ra | integer | Right ascension of the cone search center in degrees (0 to 360). Used only when no ADQL query is provided above. | not set |
| dec | integer | Declination of the cone search center in degrees (-90 to 90). Used only when no ADQL query is provided above. | not set |
| radius | string | Search radius in degrees around the cone center (for example 0.1). Keep small to stay within archive limits. Used only when no ADQL query is provided. | 0.1 |
| maxItems | integer | How many stars to collect per run. | 10 |
Pricing
from $3.00 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| result | Single result in the default dataset. | $0.003 to $0.004 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~gaia-star-catalog-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"helloWorld": 123
}' Examples
Input that runs as-is.
{
"helloWorld": 123
} Reviews
No reviews yet. Be the first.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
