When to use this API
Use this API when a user question involves species identity, taxonomic classification, or nomenclatural status — what is the accepted scientific name for a species, what order or phylum does it belong to, or how many name usages does the taxonomic literature attach to a given taxon. The Catalogue of Life assembles records from hundreds of expert source checklists into a single catalogue covering approximately 80% of Earth's estimated 2.3 million known species; the public read endpoints require no API key. If the user wants occurrence records (where was a species sighted, when, by whom), reach for GBIF instead — the COL API is about taxonomic identity, not observation data.
Searching for a taxon by scientific name
"What is the full taxonomic classification of the snow leopard?" The nameusage/search endpoint takes a q parameter and returns every name usage in the catalogue that matches — accepted names, synonyms, subspecies, and variant spellings from source checklists all appear in the results.
The only search probe in the database uses Panthera leo (the lion — the boring default) rather than Panthera uncia, but the response shape is what matters here.
curl "https://api.catalogueoflife.org/dataset/3LR/nameusage/search?q=Panthera+leo" | head -c 10000
{
"offset": 0,
"limit": 10,
"total": 269,
"result": [
{
"id": "4CGXP",
"classification": [
{ "id": "CS5HF", "name": "Eukaryota", "rank": "domain", "status": "accepted" },
{ "id": "N", "name": "Animalia", "rank": "kingdom", "status": "accepted" },
{ "id": "CH2", "name": "Chordata", "rank": "phylum", "status": "accepted" },
{ "id": "8V4V3", "name": "Vertebrata", "rank": "subphylum", "status": "accepted" },
{ "id": "8VVWB", "name": "Osteichthyes", "rank": "parvphylum", "status": "accepted" },
{ "id": "9CK8W", "name": "Tetrapoda", "rank": "megaclass", "status": "accepted" },
{ "id": "6224G", "name": "Mammalia", "authorship": "Linnaeus, 1758", "rank": "class", "status": "accepted" },
{ "id": "VS", "name": "Carnivora", "authorship": "Bowdich, 1821", "rank": "order", "status": "accepted" },
{ "id": "4DL", "name": "Feliformia", "rank": "suborder", "status": "accepted" },
{ "id": "623RM", "name": "Felidae", "rank": "family", "status": "accepted" }
]
// ... genus and species ranks below; 9 more results
}
]
}
The classification array is not just the immediate parent — it is the full ranked path from domain down to the matched taxon, including intermediate ranks like parvphylum (Osteichthyes) and megaclass (Tetrapoda) that most taxonomic APIs omit entirely. Those intermediate ranks are how working taxonomists actually structure the tree of life, and COL exposes them. The total: 269 for "Panthera leo" reflects all name usages across source checklists — the accepted species, its two recognized subspecies (P. l. melanochaita and P. l. leo), and every synonym and variant name the literature has ever attached to the lion lineage. Filter results by the status field to get only accepted names if that is what the user needs.
The lion (Panthera leo) belongs to order Carnivora, family Felidae, class Mammalia, phylum Chordata. The Catalogue of Life recognizes two subspecies: P. l. melanochaita (southern and eastern Africa) and P. l. leo (western and central Africa and India).
Looking up a specific taxon record by COL ID
"Who vouches for the taxonomy of the genus Canis, and how recently was it reviewed?" Once you have a COL ID from a search result, the /taxon/{id} endpoint returns the full record for that taxon. The ID for the genus Canis in the current release is 3GTH.
curl "https://api.catalogueoflife.org/dataset/3LR/taxon/3GTH" | head -c 10000
{
"id": "3GTH",
"datasetKey": 314455,
"name": {
"scientificName": "Canis",
"authorship": "Linnaeus, 1758",
"rank": "genus",
"namesIndexId": 3514723,
"namesIndexType": "variant",
"code": "zoological",
"nomStatus": "acceptable"
},
"status": "accepted",
"extinct": false,
"parentId": "C3K84",
"scrutinizer": "W. Christopher Wozencraft,Alfred L. Gardner",
"scrutinizerDate": "2025-09-19",
"link": "https://www.itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value=180595"
}
The scrutinizer and scrutinizerDate fields are what set COL apart from most species databases: they name the taxonomist who last vetted this record and when. Wozencraft and Gardner's review date of 2025-09-19 tells you this entry was checked by a domain expert recently — not a legacy artifact from a decade-old import. The namesIndexType: "variant" field indicates that "Canis Linnaeus, 1758" as styled in the ITIS source checklist matches the COL Names Index as a variant rather than an exact string (the index may have normalized authorship formatting); "exact" would mean the strings match character-for-character. The link field points to the original ITIS source record for cross-referencing.
The genus Canis (Linnaeus, 1758) is an accepted genus in the Catalogue of Life under the zoological code. Its taxonomy was last reviewed by W. Christopher Wozencraft and Alfred L. Gardner in September 2025. It is not extinct. For the original source record, see ITIS TSN 180595.
Pitfalls
- Every call is scoped to a dataset key. The examples here use
3LR, which was the key returned by the probe. The Catalogue of Life publishes periodic releases, each with its own integer key (the March 2026 release is key314455). Hardcoding3LRmay break when the release rotates; queryGET /dataset?limit=10and filter byorigin=releaseand the most recentimportedtimestamp to find the current release key programmatically. - Search returns all name usages, not just accepted names. A
totalof 269 for "Panthera leo" includes synonyms, subspecies usages, and cross-checklist duplicates. Addstatus=acceptedas a query parameter to filter to only the currently accepted name usages. - COL IDs are release-specific. The ID
3GTHfor Canis is valid in dataset 314455. The same taxon will likely have a different opaque string ID in the next release. Do not persist COL IDs across releases without re-resolving them.
One-line summary for the user
I can look up taxonomic classification, accepted scientific names, and expert review provenance for any of the ~2.3 million species in the Catalogue of Life — no API key required, but every query must target a specific release dataset key.