Amazing Endemic Species

Animals API · Endemic & endangered species · Conservation data

TL;DR

The Amazing Endemic Species API provides structured data about species that are unique to specific geographic regions — found nowhere else on Earth. Each record includes the species name, common name, endemic region, conservation status (IUCN), taxonomic classification, and habitat information. It's a valuable resource for conservation projects, educational apps, and biodiversity research.

Quick start: https://amazing-endemic-species-api.herokuapp.com/api/species

No API key needed — just make a request!

How to Use This API

1. Get All Species

https://amazing-endemic-species-api.herokuapp.com/api/species

Returns a list of all endemic species in the database with their full details.

2. Filter by Region

https://amazing-endemic-species-api.herokuapp.com/api/species?region=Madagascar

Filter species endemic to a specific geographic region or country.

3. Filter by Conservation Status

https://amazing-endemic-species-api.herokuapp.com/api/species?conservation_status=CR

Use IUCN codes: CR (Critically Endangered), EN (Endangered), VU (Vulnerable), NT (Near Threatened), LC (Least Concern).

4. JavaScript — Species Explorer

async function getEndemicSpecies(filters = {}) {
  const params = new URLSearchParams(filters);
  const resp = await fetch(
    `https://amazing-endemic-species-api.herokuapp.com/api/species?${params}`
  );
  return await resp.json();
}

async function exploreMadagascar() {
  const species = await getEndemicSpecies({ region: 'Madagascar' });
  if (!species.length) return;
  
  const endangered = species.filter(s =>
    ['CR', 'EN'].includes(s.conservation_status)
  );
  
  console.log(`${species.length} endemic species in Madagascar`);
  console.log(`${endangered.length} of which are endangered/critically endangered`);
  endangered.slice(0, 5).forEach(s => {
    console.log(`  ${s.common_name} (${s.scientific_name}) — ${s.conservation_status}`);
  });
}

exploreMadagascar();

5. Python — Conservation Status Count

import requests

def status_breakdown():
    resp = requests.get(
        'https://amazing-endemic-species-api.herokuapp.com/api/species'
    )
    species = resp.json()
    
    status_counts = {}
    for s in species:
        status = s.get('conservation_status', 'Unknown')
        status_counts[status] = status_counts.get(status, 0) + 1
    
    print("Conservation status breakdown:")
    for status, count in sorted(status_counts.items()):
        print(f"  {status}: {count} species")

status_breakdown()
Try all endemic species: https://amazing-endemic-species-api.herokuapp.com/api/species

Frequently Asked Questions

What does "endemic" mean in this context?
A species is endemic if it is native to and found only within a specific geographic area. For example, the lemur is endemic to Madagascar — you won't find it naturally anywhere else on Earth.
What conservation status codes are used?
IUCN Red List codes: EX (Extinct), EW (Extinct in Wild), CR (Critically Endangered), EN (Endangered), VU (Vulnerable), NT (Near Threatened), LC (Least Concern), DD (Data Deficient).
How many species are in the database?
The database covers hundreds of endemic species across major biodiversity hotspots including Madagascar, the Galapagos Islands, Australia, New Zealand, Hawaii, and the Cape Floristic Region.
Can I search by taxonomic group?
Yes, filter by taxonomic class or family: ?taxonomy=Mammalia or ?family=Lemuridae.
What fields are available per species?
Scientific name, common name, endemic region, conservation status, kingdom, phylum, class, order, family, genus, habitat description, and population notes.

API Details

API URL
https://amazing-endemic-species-api.herokuapp.com/api
Documentation
GitHub Repository
Category
Animals
Authentication
Not Required
Geographic Coverage
Global — Biodiversity hotspots worldwide

What You Can Build