USGS API
USGS (usgs.gov) has 3 public methods: search earthquakes near a place, list significant earthquakes and get river level. Each costs 1 credit per completed run (1¢ with pay as you go); failed runs are free.
Unofficial. Not affiliated with or endorsed by USGS.
Methods
3Finds recent USGS earthquakes near a city, address, or region, with distances and times in the searched place's time zone.
Returns magnitude, location, times (UTC and local), depth, distance, tsunami flag, felt reports, alert level, USGS details link
Readearthquake.usgs.gov/search_earthquakesLists significant worldwide earthquakes for the past day, week, or month, newest first, with USGS PAGER alert levels and impact summaries when USGS provides them.
Returns magnitude, location, time, alert level, tsunami flag, felt reports, estimated impact summary, coordinates, event ID, details link
Readearthquake.usgs.gov/list_significant_earthquakesGets the latest water height, flow, 24-hour trend and flood-stage status at the active USGS river gauge best matching a river or town and state. Flood stage is null when not published; gauges without recent stage, flow or 24-hour history are not returned.
Returns gauge name, town, state, water height, flow, observation time, 24-hour trend, flood stage, gauge link, site number, coordinates
Readwaterdata.usgs.gov/get_river_level