ATS Labs · Episode 11 · Open data, production-grade map
Species Lens
Search any species and see everywhere it has been recorded — a density surface from GBIF’s map API, 300 records as points from zoom level 4, a record card that names each record’s license and publisher, and a 3D globe.
The problem
A record is not a sighting
A map of where a species lives looks simple: search a name, draw the dots. The records are public, from one index that thousands of publishers feed. Getting them right is where the time goes. Some records say the species was looked for and not found, every record carries its own license, and a point on the map can be kilometers from where the animal was seen.
Watch it work
Episode 11 — Species Lens (5:06)
One public source end to end: where the occurrence records live, the three details that cost the most time, and the map and globe they turn into.
What it covers
One source, three details, one map
- The source: GBIF, the Global Biodiversity Information Facility. GBIF is an index, not one survey: it holds nearly four billion occurrence records that museums, national surveys and citizen science apps publish as their own datasets. One search API returns counts and records, and one map API returns density tiles; neither needs a key.
- Detail one, a record is not a sighting: with coordinates, the Atlantic puffin has 305,156 records. 2,523 of them are absence records, from surveys that looked for the puffin and did not find it, and another 106 carry a geospatial issue flag. Species Lens asks only for records reported as present with no geospatial issue — 302,527 — and the density tiles apply the same two filters. The chips under the chart also count preserved specimens, material samples and machine observations.
- Detail two, every record keeps its own license: GBIF does not set one license for the whole index. Each publisher chooses CC0, CC BY or CC BY-NC for its own records. For the puffin, 78,402 records, about a quarter, carry CC BY-NC, which does not allow commercial reuse, so the record card in Species Lens names the license and the publisher.
- Detail three, a point is not an exact location: a record can state how far the true location may be from its coordinates. Among the 300 records the app draws, that distance runs from 1 meter to almost 30 kilometers; 32 state no distance at all, 16 were blurred on purpose by about 28 kilometers to protect a threatened species or at the observer’s request, and 19 were moved to a grid of one twentieth of a degree. A single point is best read as an area.
- How it becomes a map: the search box asks GBIF’s suggest API as you type; picking a species swaps in a new density layer from the map API; the header shows the record count and a bar chart shows the records by year; from zoom level 4, 300 records appear as cyan points, and a click opens a card with the country, date, basis, license and publisher and a link to the record on GBIF; a dice button jumps to one of 12 curated species; and a 3D globe wraps the same density surface and labels the species’ top countries.
What it does not do
- Not a range map — Species Lens shows where a species has been recorded, not where it lives or could live.
- Not a population estimate — more records can mean more observers, not more animals.
- Not every record as a point — the points are 300 records from GBIF’s search, in GBIF’s order; the density surface counts them all.
Where the data comes from
Every source in the episode
- GBIF, the Global Biodiversity Information Facility — www.gbif.org/
- GBIF occurrence API — techdocs.gbif.org/en/openapi/v1/occurrence
- GBIF maps API, density tiles — techdocs.gbif.org/en/openapi/v2/maps
- GBIF species API, suggest and common names — techdocs.gbif.org/en/openapi/v1/species
- GBIF terms of use — www.gbif.org/terms
- Source sheet with every endpoint — allthingsspatial.io/pages/sources.html
The records are credited to GBIF.org and to each record’s publisher. The credit sits in the Species Lens footer, and every record card names its publisher and license.
Build with us
Need this on your data?
Species Lens is an ATS Labs build — TypeScript on the ArcGIS Maps SDK for JavaScript and the Calcite Design System, over public GBIF records — and it is a demonstration of what All Things Spatial builds. The real thing — your data, your brand, your infrastructure — is the work we do for clients.