{
  "endpoint": "/api/herps",
  "location": {
    "lat": 17.8375,
    "lon": -101.7606,
    "name": "La Saladita, Guerrero, Mexico"
  },
  "recent_window_days": 90,
  "recent_sightings": [],
  "recent_fetch_errors": [
    {
      "class": "Reptilia",
      "error": "iNat HTTP 429"
    },
    {
      "class": "Amphibia",
      "error": "iNat HTTP 429"
    }
  ],
  "n_recent": 0,
  "climatology_summary": {
    "generated_at": "2026-09-19T15:20:25Z",
    "center": {
      "lat": 17.8375,
      "lon": -101.7606,
      "name": "La Saladita, Guerrero, Mexico"
    },
    "bounding_box": {
      "lat_min": 17.09,
      "lat_max": 18.09,
      "lon_min": -101.93,
      "lon_max": -100.93,
      "radius_km": 50
    },
    "methodology_note": "iNaturalist research-grade observations within 50 km radius. GBIF records within rectangular bounding box ~50 km from Saladita (lat 17.09-18.09, lon -101.93--100.93); queried per species because GBIF class-level taxonKey=358 returns 0 due to backbone mismatch. Snake records are known to be severely undercounted — cryptic behaviour and widespread kill-on-sight mean absence of GBIF/iNat records does NOT indicate absence. Amphibian activity concentrates in wet season (Jun-Oct). AmphibiaWeb and Reptile Database are HTML-only references consulted for species accounts; not machine-queried.",
    "data_gaps": [
      "Geckos (Phyllodactylus lanei, Hemidactylus frenatus) are nocturnal and rarely photographed — iNat records undercount real abundance.",
      "Snake records are severely undercounted: cryptic + kill-on-sight bias.",
      "No confirmed Aspidoscelis (whiptail) records found within 50 km in iNat; genus expected from regional literature.",
      "Caecilians (Dermophis oaxacae) are fossorial; single iNat record expected to be significant undercount.",
      "GBIF Reptilia taxonKey=358 returns 0 records; individual species queries used."
    ],
    "summary": {
      "inat_reptilia_total_results": 1495,
      "inat_reptilia_fetched": 1000,
      "inat_amphibia_total_results": 124,
      "inat_amphibia_fetched": 124,
      "gbif_reptilia_bbox_total": 1073,
      "gbif_amphibia_bbox_total": 221,
      "n_reptile_species_queried": 29,
      "n_amphibian_species_queried": 17
    },
    "reptile_species_list": [
      {
        "scientific_name": "Iguana iguana",
        "common_name": "Green Iguana",
        "iucn_status": "LC",
        "n_obs_inat": 250,
        "n_obs_gbif_bbox": 223,
        "data_sparse": false
      },
      {
        "scientific_name": "Ctenosaura pectinata",
        "common_name": "Western Spiny-tailed Iguana",
        "iucn_status": "VU",
        "n_obs_inat": 104,
        "n_obs_gbif_bbox": 99,
        "data_sparse": false
      },
      {
        "scientific_name": "Basiliscus vittatus",
        "common_name": "Brown Basilisk",
        "iucn_status": "LC",
        "n_obs_inat": 6,
        "n_obs_gbif_bbox": 4,
        "data_sparse": false
      },
      {
        "scientific_name": "Sceloporus melanorhinus",
        "common_name": "Black-nosed Lizard",
        "iucn_status": "LC",
        "n_obs_inat": 20,
        "n_obs_gbif_bbox": 29,
        "data_sparse": false
      },
      {
        "scientific_name": "Sceloporus siniferus",
        "common_name": "Longtail Spiny Lizard",
        "iucn_status": "LC",
        "n_obs_inat": 36,
        "n_obs_gbif_bbox": 90,
        "data_sparse": false
      },
      {
        "scientific_name": "Sceloporus pyrocephalus",
        "common_name": "Boulder Spiny Lizard",
        "iucn_status": "DD",
        "n_obs_inat": 20,
        "n_obs_gbif_bbox": 32,
        "data_sparse": false
      },
      {
        "scientific_name": "Anolis nebulosus",
        "common_name": "Clouded Anole",
        "iucn_status": "LC",
        "n_obs_inat": 26,
        "n_obs_gbif_bbox": 40,
        "data_sparse": false
      },
      {
        "scientific_name": "Urosaurus bicarinatus",
        "common_name": "Tropical tree lizard",
        "iucn_status": "LC",
        "n_obs_inat": 25,
        "n_obs_gbif_bbox": 42,
        "data_sparse": false
      },
      {
        "scientific_name": "Holcosus undulatus",
        "common_name": "Rainbow Ameiva",
        "iucn_status": "LC",
        "n_obs_inat": 8,
        "n_obs_gbif_bbox": 14,
        "data_sparse": false
      },
      {
        "scientific_name": "Marisora aquilonaria",
        "common_name": "Southern Sierra Madre Skink",
        "iucn_status": "DD",
        "n_obs_inat": 8,
        "n_obs_gbif_bbox": 6,
        "data_sparse": false
      },
      {
        "scientific_name": "Phyllodactylus lanei",
        "common_name": "Lane's Leaf-toed Gecko",
        "iucn_status": "LC",
        "n_obs_inat": 3,
        "n_obs_gbif_bbox": 23,
        "data_sparse": true
      },
      {
        "scientific_name": "Crocodylus acutus",
        "common_name": "American Crocodile",
        "iucn_status": "VU",
        "n_obs_inat": 185,
        "n_obs_gbif_bbox": 184,
        "data_sparse": false
      },
      {
        "scientific_name": "Trimorphodon biscutatus",
        "common_name": "Western Lyre Snake",
        "iucn_status": "LC",
        "n_obs_inat": 11,
        "n_obs_gbif_bbox": 18,
        "data_sparse": false
      },
      {
        "scientific_name": "Leptophis diplotropis",
        "common_name": "Pacific Coast Parrot Snake",
        "iucn_status": "LC",
        "n_obs_inat": 14,
        "n_obs_gbif_bbox": 12,
        "data_sparse": false
      },
      {
        "scientific_name": "Drymarchon melanurus",
        "common_name": "Central American Indigo Snake",
        "iucn_status": "LC",
        "n_obs_inat": 2,
        "n_obs_gbif_bbox": 3,
        "data_sparse": true
      },
      {
        "scientific_name": "Boa sigma",
        "common_name": "Mexican West Coast Boa Constrictor",
        "iucn_status": "LC",
        "n_obs_inat": 20,
        "n_obs_gbif_bbox": 0,
        "data_sparse": false
      },
      {
        "scientific_name": "Oxybelis microphthalmus",
        "common_name": "Thornscrub Vine Snake",
        "iucn_status": "DD",
        "n_obs_inat": 14,
        "n_obs_gbif_bbox": 10,
        "data_sparse": false
      },
      {
        "scientific_name": "Pseudoleptodeira latifasciata",
        "common_name": "False Cat-eyed Snake",
        "iucn_status": "LC",
        "n_obs_inat": 12,
        "n_obs_gbif_bbox": 12,
        "data_sparse": false
      },
      {
        "scientific_name": "Salvadora mexicana",
        "common_name": "Mexican Patchnose Snake",
        "iucn_status": "LC",
        "n_obs_inat": 10,
        "n_obs_gbif_bbox": 10,
        "data_sparse": false
      },
      {
        "scientific_name": "Conophis vittatus",
        "common_name": "Striped Road Guarder",
        "iucn_status": "LC",
        "n_obs_inat": 7,
        "n_obs_gbif_bbox": 13,
        "data_sparse": false
      },
      {
        "scientific_name": "Manolepis putnami",
        "common_name": "Ridgehead Snake",
        "iucn_status": "DD",
        "n_obs_inat": 4,
        "n_obs_gbif_bbox": 9,
        "data_sparse": true
      },
      {
        "scientific_name": "Micrurus browni",
        "common_name": "Brown's Coralsnake",
        "iucn_status": "LC",
        "n_obs_inat": 4,
        "n_obs_gbif_bbox": 2,
        "data_sparse": true
      },
      {
        "scientific_name": "Kinosternon integrum",
        "common_name": "Mexican Mud Turtle",
        "iucn_status": "NT",
        "n_obs_inat": 15,
        "n_obs_gbif_bbox": 20,
        "data_sparse": false
      },
      {
        "scientific_name": "Rhinoclemmys rubida",
        "common_name": "Mexican Spotted Terrapin",
        "iucn_status": "EN",
        "n_obs_inat": 5,
        "n_obs_gbif_bbox": 7,
        "data_sparse": false
      },
      {
        "scientific_name": "Trachemys ornata",
        "common_name": "Ornate Slider",
        "iucn_status": "LC",
        "n_obs_inat": 2,
        "n_obs_gbif_bbox": 2,
        "data_sparse": true
      },
      {
        "scientific_name": "Lepidochelys olivacea",
        "common_name": "Olive Ridley Sea Turtle",
        "iucn_status": "VU",
        "n_obs_inat": 46,
        "n_obs_gbif_bbox": 101,
        "data_sparse": false
      },
      {
        "scientific_name": "Chelonia mydas",
        "common_name": "Green Sea Turtle",
        "iucn_status": "EN",
        "n_obs_inat": 6,
        "n_obs_gbif_bbox": 50,
        "data_sparse": false
      },
      {
        "scientific_name": "Eretmochelys imbricata",
        "common_name": "Hawksbill Sea Turtle",
        "iucn_status": "CR",
        "n_obs_inat": 12,
        "n_obs_gbif_bbox": 12,
        "data_sparse": false
      },
      {
        "scientific_name": "Dermochelys coriacea",
        "common_name": "Leatherback Sea Turtle",
        "iucn_status": "VU",
        "n_obs_inat": 2,
        "n_obs_gbif_bbox": 6,
        "data_sparse": true
      }
    ],
    "amphibian_species_list": [
      {
        "scientific_name": "Smilisca baudinii",
        "common_name": "Mexican Treefrog",
        "iucn_status": "LC",
        "n_obs_inat": 39,
        "n_obs_gbif_bbox": 46,
        "data_sparse": false
      },
      {
        "scientific_name": "Rhinella horribilis",
        "common_name": "Giant Toad",
        "iucn_status": "LC",
        "n_obs_inat": 35,
        "n_obs_gbif_bbox": 29,
        "data_sparse": false
      },
      {
        "scientific_name": "Rhinella marina",
        "common_name": "Cane Toad / Marine Toad",
        "iucn_status": "LC",
        "n_obs_inat": 0,
        "n_obs_gbif_bbox": 1,
        "data_sparse": true
      },
      {
        "scientific_name": "Agalychnis dacnicolor",
        "common_name": "Mexican Giant Tree Frog",
        "iucn_status": "LC",
        "n_obs_inat": 14,
        "n_obs_gbif_bbox": 16,
        "data_sparse": false
      },
      {
        "scientific_name": "Scinax staufferi",
        "common_name": "Stauffer's Tree Frog",
        "iucn_status": "LC",
        "n_obs_inat": 3,
        "n_obs_gbif_bbox": 3,
        "data_sparse": true
      },
      {
        "scientific_name": "Tlalocohyla smithii",
        "common_name": "Dwarf Mexican Tree Frog",
        "iucn_status": "LC",
        "n_obs_inat": 5,
        "n_obs_gbif_bbox": 12,
        "data_sparse": false
      },
      {
        "scientific_name": "Incilius marmoreus",
        "common_name": "Marbled Toad",
        "iucn_status": "LC",
        "n_obs_inat": 11,
        "n_obs_gbif_bbox": 38,
        "data_sparse": false
      },
      {
        "scientific_name": "Incilius occidentalis",
        "common_name": "Mexican Toad",
        "iucn_status": "LC",
        "n_obs_inat": 0,
        "n_obs_gbif_bbox": 21,
        "data_sparse": true
      },
      {
        "scientific_name": "Leptodactylus melanonotus",
        "common_name": "Sabinal Frog",
        "iucn_status": "LC",
        "n_obs_inat": 8,
        "n_obs_gbif_bbox": 37,
        "data_sparse": false
      },
      {
        "scientific_name": "Craugastor occidentalis",
        "common_name": "Taylor's Barking Frog",
        "iucn_status": "LC",
        "n_obs_inat": 1,
        "n_obs_gbif_bbox": 0,
        "data_sparse": true
      },
      {
        "scientific_name": "Lithobates sierramadrensis",
        "common_name": "Sierra Madre Occidental Frog",
        "iucn_status": "LC",
        "n_obs_inat": 0,
        "n_obs_gbif_bbox": 1,
        "data_sparse": true
      },
      {
        "scientific_name": "Lithobates forreri",
        "common_name": "Forrer's Grass Frog",
        "iucn_status": "LC",
        "n_obs_inat": 2,
        "n_obs_gbif_bbox": 9,
        "data_sparse": true
      },
      {
        "scientific_name": "Rhinophrynus dorsalis",
        "common_name": "Mexican Burrowing Toad",
        "iucn_status": "LC",
        "n_obs_inat": 3,
        "n_obs_gbif_bbox": 1,
        "data_sparse": true
      },
      {
        "scientific_name": "Eleutherodactylus albolabris",
        "common_name": "White-lipped Rain Frog",
        "iucn_status": "LC",
        "n_obs_inat": 1,
        "n_obs_gbif_bbox": 1,
        "data_sparse": true
      },
      {
        "scientific_name": "Dermophis oaxacae",
        "common_name": "Oaxacan Caecilian",
        "iucn_status": "DD",
        "n_obs_inat": 1,
        "n_obs_gbif_bbox": 0,
        "data_sparse": true
      },
      {
        "scientific_name": "Hypopachus variolosus",
        "common_name": "Sheep Frog",
        "iucn_status": "LC",
        "n_obs_inat": 0,
        "n_obs_gbif_bbox": 4,
        "data_sparse": true
      },
      {
        "scientific_name": "Exerodonta smaragdina",
        "common_name": "Emerald Treefrog",
        "iucn_status": "LC",
        "n_obs_inat": 0,
        "n_obs_gbif_bbox": 2,
        "data_sparse": true
      }
    ]
  },
  "data_quality_notes": [
    {
      "level": "warning",
      "note": "Snake records in iNaturalist and GBIF are severely undercounted for this region. Cryptic behaviour, dense vegetation, and kill-on-sight by locals mean recorded absence is NOT indicative of actual absence. All documented snake species should be treated as present year-round."
    },
    {
      "level": "info",
      "note": "GBIF Reptilia class-level taxonKey=358 returns 0 records due to a backbone taxonomy mismatch. The climatology artifact uses per-species bounding-box queries instead. GBIF Amphibia returns 285 records correctly via class search."
    },
    {
      "level": "info",
      "note": "Amphibian activity concentrates strongly in the wet season (June–October). Dry-season records are sparse but do not indicate absence — breeding frogs are highly detectable when calling at night after rain."
    },
    {
      "level": "info",
      "note": "iNaturalist records represent research-grade citizen-science observations. They are biased toward diurnal, charismatic, easily photographed animals. Nocturnal geckos, burrowing toads (Rhinophrynus), and fossorial caecilians are especially undercounted."
    },
    {
      "level": "info",
      "note": "AmphibiaWeb (amphibiaweb.org) and the Reptile Database (reptile-database.reptarium.cz) are the primary taxonomic and natural history references for this guide. Both are HTML-only; no machine-readable API query was performed against them."
    }
  ],
  "sources": {
    "recent_sightings": "iNaturalist API v1 (https://api.inaturalist.org/v1/observations)",
    "climatology": "iNaturalist API v1 + GBIF Occurrence Search API v1",
    "taxonomy_reptiles": "Reptile Database (https://reptile-database.reptarium.cz)",
    "taxonomy_amphibians": "AmphibiaWeb (https://amphibiaweb.org)",
    "iucn_status": "IUCN Red List (https://www.iucnredlist.org)"
  },
  "generated_at": "2026-09-20T13:29:54.812Z"
}