An AIS nearby API in Python lists ships inside a nautical-mile radius. On Vessels API that is GET /api/V1/vessels/nearby with header X-API-Key. There is no geofence endpoint. Official fixture: Buenos Aires -34.60, -58.38, radius=30.
Starter is $19.99/mo (2,500 calls) with a 7-day trial. Radius default 50 NM, max 200. MCP: mcp.vessels-api.com.
Request: official Buenos Aires circle
curl -H "X-API-Key: YOUR_API_KEY" \
"https://vessels-api.com/api/V1/vessels/nearby?latitude=-34.60&longitude=-58.38&radius=30"
Python: same contract
import os, urllib.request
url = "https://vessels-api.com/api/V1/vessels/nearby?latitude=-34.60&longitude=-58.38&radius=30"
req = urllib.request.Request(url, headers={"X-API-Key": os.environ["VESSELS_KEY"]})
print(urllib.request.urlopen(req).read().decode())
Response: official nearby fixture (2026-02-09)
{
"status": 200,
"success": true,
"data": {
"center": {"latitude": -34.60, "longitude": -58.38},
"radius_nm": 30,
"total": 12,
"vessels": [
{
"mmsi": "258785000",
"position": {"latitude": -34.603722, "longitude": -58.381592, "timestamp_utc": "2026-02-09T10:30:00Z"},
"distance_nm": 5.2,
"speed_knots": 15.5
}
]
}
}
Go live
1. Register — 7-day trial.
2. Copy X-API-Key.
3. GET /api/V1/vessels/nearby with lat, lon, and radius in NM.
4. Store mmsi and distance_nm.





