Taxonomy Service

ENA provides a REST service to perform look-ups of (NCBI) tax IDs and taxonomic name.  There are several functions available which include retrieving the full taxonomic information for a single taxon via ID or name, as well as retrieving a list of several possible matches to a taxonomic name (or prefix).  All options return JSON output and both the URLs and output are described in more depth below.

Fetch taxon by ID

The full taxonomic information for a taxon can be fetched using a known NCBI taxonomic ID. In this case only a single taxon will be returned or "No results".


Fetch taxon by scientific name

If the taxon ID is not known, the full taxonomic information can be retrieved using the scientific name. Please note that in this case, there will be spaces in the name which you may need to encode (to "%20").


Sometimes the scientific name is not unique. In this case, all taxa that use that scientific name are returned. For example:

Fetch taxon by any taxonomic name

Support is also provided to retrieve the taxon via any registered taxonomic name. These include: scientific name, common name, synonym, anamorph and telomorph.


Fetch list of suggested taxa

The taxonomy service also includes URLs to return a list of suggested taxa. This is meant to be used to suppport autofill services where users can start typing in a taxonomic name and find the organism they are after in a list. The names that can be matched are scientific name, common name, synonym, anamorph and teleomorph. The matches are sorted alphanumerically and by default, the list of matches is limited to the first 20 names. This limit can be altered by using the limit keyword.

There are two sets of taxa that are available for this type of search: submittable and searchable. Searchable taxa are all public taxa that are made available through the ENA browser. Submittable taxa are all taxa that are valid to be used to submit data to ENA. These include both public and private taxa but are limited to species level classification and below.

Please note that the matches for these taxa are based on looking at the prefix of the available taxonomic names. For example, searching using "coli" will require the name to start with coli and will not find Escherichia coli. All searches are case insensitive.

Example 1: Find searchable taxa starting with "cat"

Example 2: Find submittable taxa starting with "yellowfin"

Example 3: Find the first 5 searchable taxa starting with "canis"

JSON output

All URLs return JSON output. Fetching the taxon by tax ID, scientific name and taxonomic name will return the full taxon information, whereas the suggested taxa URLs return a list of abbreviated taxa, mapping a display name (the name searched against) to a taxon. All fields available in the JSON are listed in the table below, including which fields are available in the full taxon and which in the abbreviated taxon for the suggested taxa.

Field Description Full Suggested
taxId NCBI taxonomy ID Y Y
scientificName Scientific name of the taxon Y Y
commonName Official NCBI common name for the taxon Y Y
displayName Unique display name, used for suggestion services that match an array of possible names for the taxon including scientific name, common name and synonyms. N Y
formalName Boolean value to indicate whether the scientific name of the taxon is a formal name. Y N
rank Taxonomic classification rank, eg family or species. Y N
division Taxonomic division, eg HUM (human), INV (invertebrate) Y N
lineage Lineage showing the higher classification of the taxon Y N
geneticCode Which translation table to use for the nuclear genome Y N
mitochondrialGeneticCode Which translation table to use for the mitochondrion Y N
plastidGeneticCode Which translation table to use for the plastid (only given where applicable) Y N
submittable Boolean value to indicate whether this taxon can be used to submit sequence data Y N