See the Getting started page for examples of EOL API usage, terms of use and information on registering for an API key.
Methods
| Method | Description |
|---|---|
| ping | returns either a positive response (indicating APIs are functional), or returns a negative response or nothing at all (indicating APIs are not functional at that time). |
| pages | takes an EOL page identifier and returns the scientific name for that page, and optionally returns information about common names, media (text, images and videos), and references to the hierarchies which recognize the taxon described on the page |
| search | given a value for a specific element (e.g. scientific name=Homo sapiens), returns a paginated list of the EOL pages containing the search term |
| collections | returns all metadata about a particular collection and the items it contains indexed by EOL |
| data_objects | returns all metadata about a particular data object (text, image or video) indexed by EOL |
| hierarchy_entries | gives access to a single hierarchy indexed by EOL and its internal relationships |
| hierarchies | given a hierarchy identifier, this method returns metadata about the hierarchy and lists the root taxa |
| provider_hierarchies | lists the identifiers for all hierarchies supplied by content partners |
| search_by_provider | get the EOL page IDs given a provider's hierarchy_id and the provider's own unique identifier (e.g. search for the EOL page ID for the ITIS TSN 180542: http://eol.org/api/search_by_provider/1.0/180542?hierarchy_id=903) |
Response Formats
All APIs return by default an XML response. The API methods may be called without a format extension to get the XML response, and adding an XML extension will give an identical response:
http://eol.org/api/search/Robin
http://eol.org/api/search/Robin.xml
Every method can also return a JSON response by adding a .json extension.
http://eol.org/api/search/Robin.json
... and JSONP by adding a callback parameter
http://eol.org/api/search/Robin.json?callback=some_neat_function
You can identify yourself to EOL by adding your API key to your requests (login and generate your key in your preference page):
http://eol.org/api/search/Robin?key=1111111111111111111111111111111111
Each method's documentation page has an example of both the XML and JSON formatted responses.
Caching Results
The response of any API call can be cached for a specified length of time. A "cache_ttl" parameter can be provided whose value is the number of seconds for which the response will be cached. This will create HTTP headers indicating the result should be cached by web browsers, and additionally the response will be cached on EOL's servers for the specified number of seconds. If the value of "cache_ttl" is changed, the first request with the new value will not hit the cache, but subsequent requests will leverage the newly cached response.
http://eol.org/api/search/Robin?cache_ttl=60