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"
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.
|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|