Skip to content
GET/api/hazard/tsunami/events/1 credit

Tsunami events

A pass-through proxy for the NOAA National Centers for Environmental Information Global Historical Tsunami Database. This is a historical geophysical catalogue, not an astrological calculation, and it reaches back to the second millennium BC — years before the common era appear as negative numbers. Query parameters are forwarded to NOAA unchanged. The main ones are `year`, `minYear` and `maxYear`, `day` and `month`, `country`, `area` and `regionCode` (numeric ocean-basin codes such as 85 for Japan, 50 for the Mediterranean and 89 for the west coast of South America; several can be given comma-separated), a latitude and longitude box, `minCauseCode`/`maxCauseCode` (0 unknown, 1 earthquake, 6 volcano, 8 landslide, 9 meteorological, 10 explosion, 11 astronomical tide, among others), `minEventValidity`/`maxEventValidity` on a scale from -1 erroneous to 4 definite, and thresholds on wave height, earthquake magnitude, deaths, injuries, houses destroyed and damage in millions of dollars. Several of those also come in an 'amount order' form, a coarse 0-4 banding used where an exact figure was never recorded. Paging uses `page`, `itemsPerPage` and `order` (for example `year:asc`). The response is NOAA's own envelope with an `items` list. Each item carries an id, the date parts, `eventValidity`, `causeCode`, the linked earthquake or volcano event ids, country and `locationName`, `regionCode`, latitude and longitude, `maxWaterHeight` in metres, the number of recorded runups, tsunami intensity and the death and damage order bands for both the source region and the event as a whole.

https://yogataraapi.prahlad.app/api/hazard/tsunami/events/
Test Request

Authentication

Send your key in the X-API-Key header. Keys are server-side credentials — never put one in browser JavaScript or a mobile app.

X-API-Key: yt_live_a1b2c3d4_…

Query parameters (103)

Passed in the URL. All optional unless marked, and they combine — filter, then page, then sort.

ParameterTypeExampleWhat it does
areastringState, Province or Prefecture of the tsunami source
assocDepositsstringFilter by associated tsunami deposits
causeCodestringCause code(s), comma-separated. 0-Unknown, 1-Earthquake, 2-Questionable Earthquake, 3-Earthquake and Landslide, 4-Volcano and Earthquake, 5-Volcano/Earthquake/Landslide, 6-Volcano, 7-Volcano and Landslide, 8-Landslide, 9-Meteorological, 10-Explosion, 11-Astronomical Tide. Example: 2,9,11

Comma-separated list, e.g. '2,9,11'. 0 Unknown; 1 Earthquake; 2 Questionable Earthquake; 3 Earthquake and Landslide; 4 Volcano and Earthquake; 5 Volcano/Earthquake/Landslide; 6 Volcano; 7 Volcano and Landslide; 8 Landslide; 9 Meteorological; 10 Explosion; 11 Astronomical Tide.

one of: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
commentsEndstringComments end with

FREE-FORM text - 'comments end with'.

commentsIncludestringComments include

FREE-FORM text - 'comments include'.

commentsMatchstringComments match exactly

FREE-FORM text - 'comments match exactly'.

commentsNotstringComments do not include

FREE-FORM text - 'comments do not include'.

commentsStartstringComments start with

FREE-FORM text - 'comments start with'.

countrystringCountry where the tsunami source occurred (e.g. Japan)
dayintegerDay of the event (1–31)
idintegerExact event ID
itemsPerPageintegerNumber of items per page
locEndstringLocation name ends with

FREE-FORM text - 'location name ends with'.

locIncludestringLocation name includes

FREE-FORM text - 'location name includes'.

locMatchstringLocation name matches exactly

FREE-FORM text - 'location name matches exactly'.

locNotstringLocation name does not include

FREE-FORM text - 'location name does not include'.

locStartstringLocation name starts with

FREE-FORM text - 'location name starts with'. Proxied to NOAA.

maxCauseCodeintegerMax cause code. 0-Unknown, 1-Earthquake, 2-Questionable Earthquake, 3-Earthquake and Landslide, 4-Volcano and Earthquake, 5-Volcano/Earthquake/Landslide, 6-Volcano, 7-Volcano and Landslide, 8-Landslide, 9-Meteorological, 10-Explosion, 11-Astronomical Tide. Example: 2,9,11
maxDamageAmountOrderintegerMax damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
maxDamageAmountOrderTotalintegerMax total damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
maxDamageMillionsDollarsnumberMax damage in millions of dollars
maxDamageMillionsDollarsTotalnumberMax total damage in millions of dollars (tsunami + source event)
maxDeathsintegerMax deaths from the tsunami
maxDeathsAmountOrderintegerMax deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
maxDeathsAmountOrderTotalintegerMax total deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
maxDeathsTotalintegerMax total deaths from tsunami and source event
maxEqMagnitudenumberMax earthquake magnitude [0.0, 9.9]
maxEventValidityintegerMax event validity. −1-erroneous, 0-None, 1-very doubtful, 2-questionable, 3-probable, 4-definite
maxHousesDestroyedintegerMax houses destroyed
maxHousesDestroyedAmountOrderintegerMax houses destroyed description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
maxIdintegerMaximum event ID
maxInjuriesintegerMax injuries from the tsunami
maxInjuriesAmountOrderintegerMax injuries description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
maxLatitudenumberMax latitude [−90, 90]
maxLongitudenumberMax longitude [−180, 180]
maxMaxWaterHeightnumberMax maximum water height above sea level (m)
maxNumRunupsintegerMax number of runup locations associated with the event
maxRunupHoriznumberMax maximum horizontal inland flooding distance (m)
maxYearintegerMaximum year
minCauseCodeintegerMin cause code. 0-Unknown, 1-Earthquake, 2-Questionable Earthquake, 3-Earthquake and Landslide, 4-Volcano and Earthquake, 5-Volcano/Earthquake/Landslide, 6-Volcano, 7-Volcano and Landslide, 8-Landslide, 9-Meteorological, 10-Explosion, 11-Astronomical Tide. Example: 2,9,11
minDamageAmountOrderintegerMin damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
minDamageAmountOrderTotalintegerMin total damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
minDamageMillionsDollarsnumberMin damage in millions of dollars
minDamageMillionsDollarsTotalnumberMin total damage in millions of dollars (tsunami + source event)
minDeathsintegerMin deaths from the tsunami
minDeathsAmountOrderintegerMin deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
minDeathsAmountOrderTotalintegerMin total deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
minDeathsTotalintegerMin total deaths from tsunami and source event
minEqMagnitudenumberMin earthquake magnitude [0.0, 9.9]
minEventValidityintegerMin event validity. −1-erroneous, 0-None, 1-very doubtful, 2-questionable, 3-probable, 4-definite
minHousesDestroyedintegerMin houses destroyed
minHousesDestroyedAmountOrderintegerMin houses destroyed description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
minIdintegerMinimum event ID
minInjuriesintegerMin injuries from the tsunami
minInjuriesAmountOrderintegerMin injuries description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
minLatitudenumberMin latitude [−90, 90]
minLongitudenumberMin longitude [−180, 180]
minMaxWaterHeightnumberMin maximum water height above sea level (m)
minNumRunupsintegerMin number of runup locations associated with the event
minRunupHoriznumberMin maximum horizontal inland flooding distance (m)
minYearintegerMinimum year
monthintegerMonth of the event (1–12)
oceanicTsunamibooleanFilter by oceanic tsunami (true/false)
opstringLogical operator for filters
orderstringSort order. Examples: year:asc, month:desc

FORMAT constraint rather than a fixed enum: '<field>:asc' or '<field>:desc', e.g. 'year:asc', 'month:desc'. The field name must be one NOAA recognises; not validated locally.

pageintegerPage number
regionCodestringRegion code(s). 87 - Alaska (including Aleutian Islands), 40 - Black Sea and Caspian Sea, 74 - Caribbean Sea, 78 - Central Africa, 84 - China/North and South Korea/Philippines/Taiwan, 81 - E Coast Australia/New Zealand/South Pacific Is., 75 - East Coast USA and Canada, 76 - Gulf of America/Mexico, 80 - Hawaii/Johnston Atoll/Midway I, 60 - Indian Ocean (including west coast of Australia), 83 - Indonesia (Pacific Ocean) and Malaysia, 85 - Japan, 86 - Kamchatka and Kuril Islands, 50 - Mediterranean Sea, 82 - New Caledonia/New Guinea/Solomon Is./Vanuatu, 73 - Northeast Atlantic Ocean, 72 - Northwest Atlantic Ocean, 30 - Red Sea and Persian Gulf, 70 - Southeast Atlantic Ocean, 71 - Southwest Atlantic Ocean, 77 - West Coast of Africa, 88 - West Coast of North and Central America, 89 - West Coast of South America. Example: 87,30,89

Comma-separated list of numeric region codes, e.g. '87,30,89'. Meanings: 30 Red Sea and Persian Gulf; 40 Black Sea and Caspian Sea; 50 Mediterranean Sea; 60 Indian Ocean (incl. west coast of Australia); 70 Southeast Atlantic Ocean; 71 Southwest Atlantic Ocean; 72 Northwest Atlantic Ocean; 73 Northeast Atlantic Ocean; 74 Caribbean Sea; 75 East Coast USA and Canada; 76 Gulf of America/Mexico; 77 West Coast of Africa; 78 Central Africa; 80 Hawaii/Johnston Atoll/Midway I; 81 E Coast Australia/New Zealand/South Pacific Is.; 82 New Caledonia/New Guinea/Solomon Is./Vanuatu; 83 Indonesia (Pacific Ocean) and Malaysia; 84 China/North and South Korea/Philippines/Taiwan; 85 Japan; 86 Kamchatka and Kuril Islands; 87 Alaska (incl. Aleutian Islands); 88 West Coast of North and Central America; 89 West Coast of South America. Proxied verbatim to NOAA NCEI.

one of: 30, 40, 50, 60, 70, 71, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89
runupAreastringState/Province/Prefecture of the runup location
runupCountrystringCountry of the runup location
runupDoubtfulstringValidity of runup: n-OK, y-Doubtful, m-Meteorological, a-Atmospheric

Single letter: n = OK, y = Doubtful, m = Meteorological, a = Atmospheric.

one of: n, y, m, a
runupLocEndstringRunup location name ends with

FREE-FORM text - 'runup location name ends with'.

runupLocIncludestringRunup location name includes

FREE-FORM text - 'runup location name includes'.

runupLocMatchstringRunup location name matches exactly

FREE-FORM text - 'runup location name matches exactly'.

runupLocNotstringRunup location name does not include

FREE-FORM text - 'runup location name does not include'.

runupLocStartstringRunup location name starts with

FREE-FORM text - 'runup location name starts with'.

runupMaxDamageAmountOrderintegerMax runup damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
runupMaxDamageMillionsDollarsnumberMax damage at runup location (millions $)
runupMaxDeathsintegerMax deaths at the runup location
runupMaxDeathsAmountOrderintegerMax runup deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMaxDistanceintegerMax distance from source to runup (km)
runupMaxHeightnumberMax maximum water height at runup location (m)
runupMaxHousesDestroyedintegerMax houses destroyed at runup location
runupMaxHousesDestroyedAmountOrderintegerMax runup houses destroyed description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMaxInjuriesintegerMax injuries at the runup location
runupMaxInjuriesAmountOrderintegerMax runup injuries description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMaxTravelTimeintegerMax travel time (minutes)
runupMaxTroughHtnumberMax maximum water trough below sea level (m)
runupMeasureTypeintegerType of measurement: 1-Eyewitness water height, 2-Tide Gauge, 3-Deep Ocean Gauge, 4-Post-survey water height, 5-Runup Height post-survey, 6-Atmospheric Wave, 7-Seiche, 8-Runup Height in Harbor, 9-Splash mark, 10-Flow Depth
runupMinDamageAmountOrderintegerMin runup damage description. 0-None, 1-LIMITED (<$1M), 2-MODERATE ($1–5M), 3-SEVERE ($5–25M), 4-EXTREME (>$25M)
runupMinDamageMillionsDollarsnumberMin damage at runup location (millions $)
runupMinDeathsintegerMin deaths at the runup location
runupMinDeathsAmountOrderintegerMin runup deaths description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMinDistanceintegerMin distance from source to runup (km)
runupMinHeightnumberMin maximum water height at runup location (m)
runupMinHousesDestroyedintegerMin houses destroyed at runup location
runupMinHousesDestroyedAmountOrderintegerMin runup houses destroyed description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMinInjuriesintegerMin injuries at the runup location
runupMinInjuriesAmountOrderintegerMin runup injuries description. 0-None, 1-Few (~1–50), 2-Some (~51–100), 3-Many (~101–1000), 4-Very many (>1000)
runupMinTravelTimeintegerMin travel time (minutes)
runupMinTroughHtnumberMin maximum water trough below sea level (m)
runupRegionstringRunup region code(s). 87 - Alaska (including Aleutian Islands), 40 - Black Sea and Caspian Sea, 74 - Caribbean Sea, 78 - Central Africa, 84 - China/North and South Korea/Philippines/Taiwan, 81 - E Coast Australia/New Zealand/South Pacific Is., 75 - East Coast USA and Canada, 76 - Gulf of America/Mexico, 80 - Hawaii/Johnston Atoll/Midway I, 60 - Indian Ocean (including west coast of Australia), 83 - Indonesia (Pacific Ocean) and Malaysia, 85 - Japan, 86 - Kamchatka and Kuril Islands, 50 - Mediterranean Sea, 82 - New Caledonia/New Guinea/Solomon Is./Vanuatu, 73 - Northeast Atlantic Ocean, 72 - Northwest Atlantic Ocean, 30 - Red Sea and Persian Gulf, 70 - Southeast Atlantic Ocean, 71 - Southwest Atlantic Ocean, 77 - West Coast of Africa, 88 - West Coast of North and Central America, 89 - West Coast of South America. Example: 87,30,89

Comma-separated numeric region codes - identical value set and meanings as regionCode, but applied to the runup location instead of the tsunami source.

one of: 30, 40, 50, 60, 70, 71, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89
tsuAssocstringTsunami association filter
yearintegerExact year of the event

Example request

curl "https://yogataraapi.prahlad.app/api/hazard/tsunami/events/" \
  -H "X-API-Key: $OCCULT_API_KEY"

Response

{
  "_truncated": true,
  "_note": "Response shortened for the catalogue.",
  "preview": "{\"items\": [{\"id\": 1, \"year\": -2000, \"eventValidity\": 1, \"causeCode\": 1, \"earthquakeEventId\": 2, \"numDeposits\": 0, \"country\": \"SYRIA\", \"locationName\": \"SYRIAN COASTS\", \"regionCode\": 50, \"latitude\": 35.683, \"longitude\": 35.8, \"numRunups\": 1, \"tsIntensity\": 6, \"deathsAmountOrder\": 3, \"damageAmountOrder\": 4, \"deathsAmountOrderTotal\": 3, \"damageAmountOrderTotal\": 4, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 3, \"year\": -1610, \"eventValidity\": 4, \"causeCode\": 6, \"earthquakeEventId\": 5877, \"volcanoEventId\": 1351, \"numDeposits\": 28, \"country\": \"GREECE\", \"locationName\": \"THERA ISLAND (SANTORINI)\", \"regionCode\": 50, \"latitude\": 36.4, \"longitude\": 25.4, \"maxWaterHeight\": 90, \"numRunups\": 2, \"tsIntensity\": 6, \"deathsAmountOrder\": 3, \"damageAmountOrder\": 3, \"deathsAmountOrderTotal\": 3, \"damageAmountOrderTotal\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 4, \"year\": -1365, \"eventValidity\": 1, \"causeCode\": 2, \"earthquakeEventId\": 9712, \"numDeposits\": 0, \"country\": \"SYRIA\", \"locationName\": \"SYRIAN COASTS\", \"regionCode\": 50, \"latitude\": 35.683, \"longitude\": 35.8, \"numRunups\": 1, \"tsIntensity\": 6, \"damageAmountOrder\": 2, \"damageAmountOrderTotal\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 5, \"year\": -1300, \"eventValidity\": 2, \"causeCode\": 0, \"eqMagnitude\": 6, \"numDeposits\": 0, \"country\": \"TURKEY\", \"locationName\": \"IONIAN COASTS, TROAD\", \"regionCode\": 50, \"latitude\": 39.96, \"longitude\": 26.24, \"numRunups\": 0, \"tsIntensity\": 5, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 6, \"year\": -760, \"eventValidity\": 2, \"causeCode\": 0, \"numDeposits\": 0, \"country\": \"ISRAEL\", \"locationName\": \"ISRAEL AND LEBANON COASTS\", \"regionCode\": 50, \"numRunups\": 0, \"tsIntensity\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 7, \"year\": -590, \"eventValidity\": 2, \"causeCode\": 1, \"earthquakeEventId\": 7793, \"numDeposits\": 0, \"country\": \"LEBANON\", \"locationName\": \"LEBANON COASTS\", \"regionCode\": 50, \"latitude\": 33.27, \"longitude\": 35.22, \"numRunups\": 0, \"tsIntensity\": 6, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 8, \"year\": -525, \"eventValidity\": 2, \"causeCode\": 1, \"earthquakeEventId\": 7794, \"numDeposits\": 0, \"country\": \"LEBANON\", \"locationName\": \"LEBANON COASTS\", \"regionCode\": 50, \"latitude\": 33.56, \"longitude\": 35.37, \"numRunups\": 0, \"tsIntensity\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 9, \"year\": -479, \"eventValidity\": 2, \"causeCode\": 1, \"eqMagnitude\": 7, \"earthquakeEventId\": 17, \"numDeposits\": 1, \"country\": \"GREECE\", \"locationName\": \"NORTH AEGEAN\", \"regionCode\": 50, \"latitude\": 39.7, \"longitude\": 23.3, \"numRunups\": 1, \"tsIntensity\": 3, \"deathsAmountOrder\": 3, \"deathsAmountOrderTotal\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 10, \"year\": -426, \"month\": 6, \"eventValidity\": 4, \"causeCode\": 1, \"eqMagnitude\": 7.1, \"earthquakeEventId\": 5878, \"numDeposits\": 0, \"country\": \"GREECE\", \"locationName\": \"CORINTHOS-PATRAS GULF\", \"regionCode\": 50, \"latitude\": 38.9, \"longitude\": 22.7, \"numRunups\": 12, \"tsIntensity\": 5, \"deathsAmountOrder\": 3, \"damageAmountOrder\": 2, \"housesDestroyedAmountOrder\": 2, \"deathsTotal\": 2500, \"deathsAmountOrderTotal\": 4, \"damageAmountOrderTotal\": 3, \"housesDestroyedAmountOrderTotal\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 11, \"year\": -373, \"eventValidity\": 4, \"causeCode\": 3, \"eqMagnitude\": 7.3, \"earthquakeEventId\": 20, \"numDeposits\": 1, \"country\": \"GREECE\", \"locationName\": \"CORINTHOS-PATRAS GULF\", \"regionCode\": 50, \"latitude\": 38.25, \"longitude\": 22.25, \"numRunups\": 1, \"tsIntensity\": 5, \"deathsAmountOrder\": 3, \"damageAmountOrder\": 3, \"housesDestroyedAmountOrder\": 3, \"deathsAmountOrderTotal\": 3, \"damageAmountOrderTotal\": 3, \"housesDestroyedAmountOrderTotal\": 3, \"publish\": true, \"oceanicTsunami\": true}, {\"id\": 12, \"year\": -330, \"eventValidity\": 1, \"causeCode\": 1, \"eqMagnitude\": 7, \"earthquakeEventId\": 22, \"numDeposits\": 0, \"country\": \"GREECE\", \"locationName\": \"E. SPORADES ISLANDS, AEGEAN ISLANDS\", \"regionCode\": 50, \"latitude\": 40, \"longitude\": 25, \"numRunups\": 0, \"publish\": true, \"oceanicTsu"
}

Captured from a real call using the exact request above. Results sit under data.

Errors

Metering errors return { "error": "…", "message": "<code>", "is_error": true }. Show error to people and branch on message. See the error reference.