API
The atlas as data
Free, read-only JSON over the site's cached database — the same structured data the pages render, with the same confidence labels and caveats. No key needed for reasonable personal and research use.
| Endpoint | Returns |
|---|---|
/api/v1/regions | The 8 dive regions |
/api/v1/countries | Country guides: seasons, cost bands, water ranges |
/api/v1/destinations?country=®ion= | Destinations with best months and typical costs |
/api/v1/destination/{slug} | One destination including the month-by-month block, its sites and species |
/api/v1/sites?destination=&country=&type=&difficulty=&month= | Dive-site finder — structured records |
/api/v1/site/{slug} | One dive site, full record incl. species |
/api/v1/species?group= | Marine species catalog |
/api/v1/species/{slug} | One species incl. where/when sightings |
/api/v1/wrecks?country= | Wreck database |
/api/v1/liveaboards?region= | Liveaboard directory |
/api/v1/operators?destination= | Dive centers and resorts |
/api/v1/parks | Marine protected areas |
/api/v1/chambers | Hyperbaric planning reference (NOT emergency data) |
/api/v1/season/{month} | Destinations in season for month 1–12 |
Example
curl https://scuba.guide/api/v1/season/2 curl "https://scuba.guide/api/v1/sites?type=wreck&difficulty=beginner" curl https://scuba.guide/api/v1/species/whale-shark
The contract
Every response is an envelope: {"data": ..., "meta": {...}} — meta carries counts, attribution, an as-of timestamp and the disclaimer. Values are ranges and labels as displayed on the site; missing means not yet verified, never zero. Cached ~5 minutes; served from our database with no live upstream calls. Attribution required: "Data: The Scuba Atlas" with a link. Commercial licensing: via the contact page.