BYTETOOLS

Encyclopedia of Life API

Free Encyclopedia of Life API with no key: species pages aggregating names, classifications, traits and media from hundreds of contributing databases and museums.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the Encyclopedia of Life API?

The Encyclopedia of Life API is a free, key-free service returning species pages that aggregate content from hundreds of contributing sources. A page request returns the scientific name, every contributing taxonomic concept with its source, and optionally text descriptions, media and trait data.

EOL set out to give every known species a web page, and its API is the machine-readable version of that ambition. What comes back is explicitly an aggregation: the `taxonConcepts` array lists each source that has a record for the organism — a national species list, a museum photo collection, a regional checklist — with that source's own identifier for it. For cross-referencing across biodiversity databases, that mapping is the most valuable thing here.

Set expectations about content depth. Well-studied organisms have rich pages with descriptions, images and traits; obscure ones have little more than a name and a couple of source records. The `details=true` flag pulls in text objects, and separate parameters control images, videos and maps, each of which makes the response substantially larger. EOL's TraitBank is the other reason to use it — structured, sourced measurements such as body mass or habitat, which is unusual among biodiversity APIs and accessible through the same page endpoint.

Quick facts

Base URL
https://eol.org/api
Authentication
No API key required for the public page endpoints; an optional free account key raises limits. Content licences vary by contributor and are stated per media object, so check before reusing images.
Rate limit
Unauthenticated use is throttled per IP. A free API key, available with an EOL account, raises the allowance.
Pricing
Free. EOL is a non-profit project; individual content items carry their own Creative Commons or other licences.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Encyclopedia of Life API

Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.

1. Fetch the species page for the western honey bee

GET https://eol.org/api/pages/1.0/1045608.json?details=true

curl
curl 'https://eol.org/api/pages/1.0/1045608.json?details=true'
JavaScript (fetch)
const res = await fetch("https://eol.org/api/pages/1.0/1045608.json?details=true");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://eol.org/api/pages/1.0/1045608.json?details=true", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "taxonConcept": {
    "identifier": 1045608,
    "scientificName": "Apis mellifera Linnaeus, 1758",
    "richness_score": null,
    "taxonConcepts": [
      {
        "identifier": 13331793,
        "scientificName": "Apis mellifera",
        "name": "Apis mellifera",
        "nameAccordingTo": "Eswatini Species List",
        "canonicalForm": "<i>Apis mellifera</i>",
        "sourceIdentifier": "T104184",
        "taxonRank": "species"
      },
      {
        "identifier": 14722330,
        "scientificName": "Apis mellifera",
        "name": "Apis mellifera",
        "nameAccordingTo": "Jordan Species List",
        "canonicalForm": "<i>Apis mellifera</i>",
        "sourceIdentifier": "T101866",
        "taxonRank": "species"
      },
      {
        "identifier": 17218442,
        "scientificName": "Apis mellifera",
        "name": "Apis mellifera",
        "nameAccordingTo": "Afghanistan Species List",
        "canonicalForm": "<i>Apis mellifera</i>",
        "sourceIdentifier": "T106313"
      },
      {
        "identifier": 22203556,
        "scientificName": "Apis mellifera",
        "name": "Apis mellifera",
        "nameAccordingTo": "CalPhotos",
        "canonicalForm": "<i>Apis mellifera</i>",
        "sourceIdentifier": "27e12bcc7bdcc623acb0a53562a1c043"
      },
      {
        "identifier": 24986578,
        "scientificName": "Apis mellifera Linnaeus 1758",
        "name": "Apis mellifera Linnaeus 1758",
        "nameAccordingTo": "NBII images",
        "canonicalForm": "<i>Apis mellifera</i>",
        "sourceIdentifier": "d2cfae8796fac8b1d518acc5a4506711

Parameters

ParameterTypeRequiredDescription
idpath segmentRequiredEOL page identifier for the taxon. 1045608
detailsqueryOptionalInclude text objects such as descriptions and habitat notes. true
images_per_pagequeryOptionalHow many images to include. Zero keeps the response small. 3
texts_per_pagequeryOptionalHow many text objects to include. 2
common_namesqueryOptionalInclude vernacular names with language codes. true
synonymsqueryOptionalInclude synonymous scientific names. true
taxonomyqueryOptionalInclude hierarchy entries from contributing classifications. true

Response fields

taxonConcept.identifierinteger
The EOL page id, echoing your request.
taxonConcept.scientificNamestring
EOL's preferred scientific name, including the authority.
taxonConcepts[]array
One entry per contributing source, each with its own identifier, `nameAccordingTo` and `sourceIdentifier`. This is the cross-reference map.
taxonConcepts[].nameAccordingTostring
Which source asserts this concept — a national species list, a museum collection, a checklist.
taxonConcepts[].canonicalFormstring
Name with HTML italic markup, ready to render.
dataObjects[]array
Text, image and video objects when requested, each with its own licence and attribution fields.

What you can build with the Encyclopedia of Life API

  • Show a species summary with images on a nature or education site
  • Cross-reference a taxon to identifiers in many other biodiversity databases
  • Pull licensed species photographs with correct attribution
  • Fetch trait data such as body mass or habitat from TraitBank
  • Look up vernacular names across languages

Common errors and how to fix them

404

Unknown page id.

Fix: EOL page ids are its own; resolve a scientific name through the `/search` endpoint first rather than guessing.

Sparse response

Optional content was not requested.

Fix: Descriptions, images and names are all opt-in. Add `details=true`, `images_per_page` and `common_names` as needed.

429

Anonymous rate limit exceeded.

Fix: Create a free EOL account for an API key, which raises the allowance considerably.

Image reuse uncertainty

Media licences vary by contributor.

Fix: Read the licence and attribution fields on each `dataObject`. EOL aggregates content under many different Creative Commons terms, and some are non-commercial.

Encyclopedia of Life API — frequently asked questions

Is the Encyclopedia of Life API free?

Yes, and it works without a key. A free account key is available and raises the rate limit, but it is not required. Content licences vary by contributor and are declared per item.

Can I use EOL images on my site?

Sometimes, and you must check each one. EOL aggregates media from hundreds of contributors under a mixture of Creative Commons licences, some of which exclude commercial use or require share-alike. The licence and attribution are on every media object.

What is TraitBank?

EOL's structured trait database — sourced, machine-readable measurements and categorical facts such as body mass, lifespan, diet and habitat. It is unusual among biodiversity APIs and is accessible through the same page endpoints.

How do I find an EOL page id from a species name?

Use the `/search` endpoint with the scientific name; it returns candidate pages with their ids. EOL ids are internal and do not correspond to GBIF keys, ITIS TSNs or any other registry's identifiers.

Tools that pair with this API

Encyclopedia of Life is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.