List Species

List the EUDR species taxonomy snapshot — each accepted binomial with its known synonyms. The species counterpart to List Annex I Entries, and the same data behind the species_name_unresolved pre-submission blocker: what you see here is exactly what the submit gate enforces.

Use it to drive a validated species picker (offer accepted binomials), or to show an operator the accepted name a declared synonym should be replaced with.

Reference data: global, not org-scoped — every org sees the same list. The response is small (a curated timber set) and returned in one envelope; there is no pagination. meta.count is the number of accepted species and meta.snapshot_version is fixed by construction — a taxonomy refresh rewrites this snapshot's rows under the same key — so cache on meta.snapshot_updated_at (ISO 8601), which moves on every reseed. meta.total_names counts accepted + synonyms. Entries are ordered by accepted binomial.

Query params

ParamDescription
versionOptional explicit snapshot version key (e.g. 2026-timber-gbif-v1). Defaults to the active snapshot. A non-active version is flagged via meta.is_active: false and a meta.notes advisory.

Response

Each item is a JSON:API-style resource object (type / id / attributes), matching the other resource list endpoints. id is the GBIF taxon key when the record is GBIF-sourced, else the accepted binomial.

attributes fieldMeaning
accepted_binomialThe accepted scientific name (Genus species) to file
common_nameEditorial English common name, or null
synonymsKnown unaccepted synonyms that resolve to this accepted binomial. Declaring one of these trips species_name_unresolved with accepted_binomial as the suggested fix
sourceProvenance of the accepted record — e.g. GBIF:<taxonKey> for the GBIF-resolved snapshot

How the gate uses this

At pre-submission (and mirrored in the audit-trail summary's meta.submission), each declared timber speciesInfo.scientificName is normalised (author stripped, genus + epithet, case-folded) and matched:

  • Accepted binomial (an accepted_binomial here) → passes.
  • Known synonym (a synonyms entry here) → blocked with the accepted binomial as the fix.
  • Malformed (not a binomial — a bare epithet, sp., a delimited blob) → blocked.
  • Plausible but not in this list → passes in the current version (the snapshot is curated to commercial timber, not exhaustive).

Errors

StatusCodeWhen
400BAD_REQUESTOver-long version
401UNAUTHORIZEDMissing/invalid API key
403FORBIDDENKey lacks both eudr:reference and eudr:read
404NOT_FOUNDUnknown version, or no active snapshot

Required scope: eudr:reference or eudr:read