curl --request GET \
--url https://gdeltcloud.com/api/v2/maritime/carriers/{imo} \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/maritime/carriers/{imo}"
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/carriers/{imo}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"imo": "9006681",
"identity": {
"imo": "9006681",
"mmsi": 636019825,
"name": "AL GHARRAFA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"call_sign": "A8XY9",
"flag": "LBR",
"length_m": 315,
"width_m": 50,
"draught_m": 12.4,
"gem_id": "G100000110234"
},
"last_position": {
"lat": 26.5731,
"lon": 56.2489,
"chokepoint": "hormuz",
"last_time": "2026-06-14 08:42:11",
"sog": 12.7
},
"gem_carrier": {
"gem_id": "G100000110234",
"name": "Al Gharrafa",
"imo_number": "9006681.0"
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}Vessel by IMO
One vessel by IMO number: identity, last-known position, and the matched Global Energy Monitor LNG carrier (when one exists). Position is LAST-KNOWN ONLY — no raw track. Returns 404 when no vessel identity exists for the IMO. Requires a plan with Maritime intelligence access (can_use_maritime) — see Pricing for the plans that include it.
Forward-accruing: position history begins at launch (June 2026). Terrestrial AIS only (no satellite).
curl --request GET \
--url https://gdeltcloud.com/api/v2/maritime/carriers/{imo} \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/maritime/carriers/{imo}"
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/carriers/{imo}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"imo": "9006681",
"identity": {
"imo": "9006681",
"mmsi": 636019825,
"name": "AL GHARRAFA",
"ship_type": "LNG Tanker",
"ship_type_code": 80,
"call_sign": "A8XY9",
"flag": "LBR",
"length_m": 315,
"width_m": 50,
"draught_m": 12.4,
"gem_id": "G100000110234"
},
"last_position": {
"lat": 26.5731,
"lon": 56.2489,
"chokepoint": "hormuz",
"last_time": "2026-06-14 08:42:11",
"sog": 12.7
},
"gem_carrier": {
"gem_id": "G100000110234",
"name": "Al Gharrafa",
"imo_number": "9006681.0"
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"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_....
Path Parameters
IMO number of the vessel (e.g. 9006681).
Response
Vessel detail. identity carries imo, mmsi, name, ship_type, ship_type_code, call_sign, flag (ISO-3), length_m, width_m, draught_m, gem_id. last_position is the last-known { lat, lon, chokepoint, last_time, sog } or null. gem_carrier is the matched Global Energy Monitor LNG carrier { gem_id, name, imo_number } or null. Envelope: { success, imo, identity, last_position, gem_carrier }.

