curl --request GET \
--url https://gdeltcloud.com/api/v2/maritime/vessels \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/maritime/vessels"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/maritime/vessels', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": [
{
"mmsi": 636019825,
"imo": "9006681",
"name": "AL GHARRAFA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"flag": "LBR",
"call_sign": "A8XY9",
"length_m": 315,
"width_m": 50,
"draught_m": 12.4,
"chokepoint": "hormuz",
"lat": 26.5731,
"lon": 56.2489,
"sog": 12.7,
"last_time": "2026-06-14 08:42:11",
"gem_id": "G100000110234",
"distance_km": 18.3
},
{
"mmsi": 538008914,
"imo": "9388893",
"name": "MARAN GAS APOLLONIA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"flag": "MHL",
"call_sign": "V7DA3",
"length_m": 290,
"width_m": 46,
"draught_m": 11.1,
"chokepoint": "hormuz",
"lat": 26.6102,
"lon": 56.3017,
"sog": 0.2,
"last_time": "2026-06-14 07:55:48",
"gem_id": null,
"distance_km": 24.7
}
],
"pagination": {
"limit": 100,
"cursor": null,
"next_cursor": null
},
"applied_filters": {
"chokepoint": "hormuz",
"near": "26.5,56.25",
"radius_km": 50,
"ignored": {}
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}Current vessels (last-known)
Current vessels with their last-known position and identity, derived from terrestrial AIS. Positions are LAST-KNOWN ONLY — there is no raw position-track endpoint. This is current state, so it takes no date window. Requires a plan with Maritime intelligence access (can_use_maritime) — see Pricing for the plans that include it.
Forward-accruing: vessel state begins at launch (June 2026). Terrestrial AIS only (no satellite).
curl --request GET \
--url https://gdeltcloud.com/api/v2/maritime/vessels \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/maritime/vessels"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/maritime/vessels', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": [
{
"mmsi": 636019825,
"imo": "9006681",
"name": "AL GHARRAFA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"flag": "LBR",
"call_sign": "A8XY9",
"length_m": 315,
"width_m": 50,
"draught_m": 12.4,
"chokepoint": "hormuz",
"lat": 26.5731,
"lon": 56.2489,
"sog": 12.7,
"last_time": "2026-06-14 08:42:11",
"gem_id": "G100000110234",
"distance_km": 18.3
},
{
"mmsi": 538008914,
"imo": "9388893",
"name": "MARAN GAS APOLLONIA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"flag": "MHL",
"call_sign": "V7DA3",
"length_m": 290,
"width_m": 46,
"draught_m": 11.1,
"chokepoint": "hormuz",
"lat": 26.6102,
"lon": 56.3017,
"sog": 0.2,
"last_time": "2026-06-14 07:55:48",
"gem_id": null,
"distance_km": 24.7
}
],
"pagination": {
"limit": 100,
"cursor": null,
"next_cursor": null
},
"applied_filters": {
"chokepoint": "hormuz",
"near": "26.5,56.25",
"radius_km": 50,
"ignored": {}
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}Authorizations
GDELT Cloud API key. Send as Authorization: Bearer gdelt_sk_....
Query Parameters
Restrict to vessels whose last-known position is in this chokepoint. Omit for all. Full value list: https://docs.gdeltcloud.com/reference/enums#chokepoint
hormuz, bab_el_mandeb, malacca, suez, panama, bosphorus, gibraltar, dover, kerch, taiwan, danish_straits Search vessels by name (case-insensitive substring, ngram-indexed), IMO, MMSI, or call sign.
Bounding box filter: minLon,minLat,maxLon,maxLat (e.g. 103,1,105,2).
Point 'lat,lon' for a radius search; combine with radius_km. Results include distance_km, sorted nearest-first. Format: lat,lon — pass the radius separately in radius_km.
"51.5,-0.12"
GEM energy-asset gem_id (resolved via gem.assets_view) — returns vessels within radius_km of that LNG terminal / platform / port. The cross-source 'vessels near energy infrastructure' join.
Radius in km for near / near_gem_id. Default 50 (near) or 25 (near_gem_id); clamped 1–2000.
Rows per page (1–500).
1 <= x <= 500Pagination cursor (offset) from a prior response's next_cursor.
Response
A page of vessels, most recently seen first (or nearest-first when near / near_gem_id is set). Each row: mmsi, imo, name, ship_type, ship_type_code, flag (ISO-3), call_sign, length_m, width_m, draught_m, lat, lon, chokepoint, sog (speed over ground, knots), last_time, gem_id (Global Energy Monitor link when matched), and distance_km (km from the near / near_gem_id center, only present when one is set). Standard envelope: { success, data, pagination, applied_filters }.

