API Documentation
Welcome to the Data Docked API!
The Data Docked API provides detailed information about vessels by utilizing their IMO or MMSI numbers. This guide will help you get started quickly and effectively, with examples in various programming languages.
Getting Started
Step 1: Register
Create an account on our platform at datadocked.com.
Step 2: Verify Your Email
Activate your account by clicking the verification link sent to your registered email.
Step 3: Generate Your API Key
Log in to your account, navigate to your profile dashboard, and generate your unique API key.
My Credits
Endpoint
GET https://datadocked.com/api/vessels_operations/my-credits
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
Example Request
https://datadocked.com/api/vessels_operations/my-credits?api_key=YOUR_API_KEY
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": "99929 credits left."
}
Available Fields
detail
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Get Vessel Info
View DocumentationEndpoint
GET https://datadocked.com/api/vessels_operations/get-vessel-info
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/get-vessel-info?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"id": 999,
"name": "UTOPIA OF THE SEAS",
"mmsi": "311001259",
"imo": "9880001",
"countryIso": "XZ",
"country": "Atlantis",
"image": "https://static.vesselfinder.net/ship-photo/9880001-311001259-131a17940eb7444897f79198c133e2cb/1?v1",
"shipType": "Research vessel",
"engine": {
"fuelType": "Hydrogen",
"Propeller": "2 VARIABLE PITCH",
"engineType": "NEPTUNE-X 3000",
"engineBuilder": "POSEIDON INDUSTRIES",
"enginePower(kW)": "42000"
},
"ports": [
{
"arrived": "Jul 20, 08:00",
"departed": "Jul 20, 18:00",
"portName": "New Ark, Atlantis",
"portSign": "XZNWA001"
},
{
"arrived": "Jul 10, 13:20",
"departed": "Jul 12, 06:45",
"portName": "Coral Bay, Atlantis",
"portSign": "XZCRL001"
},
{
"arrived": "Jul 1, 21:35",
"departed": "Jul 3, 11:50",
"portName": "Seahaven, Atlantis",
"portSign": "XZSHV001"
}
],
"typeSpecific": "Expedition Ship",
"navigationalStatus": "Sailing",
"callsign": "XZXZ1",
"grossTonnage": "99999",
"teu": "1000",
"length": "300 m",
"beam": "40 m",
"yearOfBuilt": "2025",
"currentDraught": "10.0 m",
"eni": null,
"etaUtc": "ETA: Aug 1, 12:00 (in 1 day)",
"draught": "10.0 m (max 12.0)",
"deadweight": "100000",
"speed": "12.5 kn",
"atdUtc": "ATD: Jul 20, 18:00 UTC (11 days ago)",
"latitude": "12.34567/12° 20.740′",
"longitude": "-45.67890/45° 40.734′ W",
"course": "120.0°",
"destination": "Seahaven, Atlantis",
"lastPort": "New Ark, Atlantis",
"management": {
"P&I": "Trident Maritime Assurance",
"ism": "OCEANIC NAVIGATION LTD",
"ismWeb": "http://www.oceanic-nav.com",
"manager": "OCEANIC NAVIGATION LTD",
"ismEmail": "[email protected]",
"ismAddress": "123 Ocean Avenue, Poseidon City, Atlantis.",
"managerAddress": "123 Ocean Avenue, Poseidon City, Atlantis.",
"registeredOwner": "DEEPSEA VENTURES LTD",
"ClassificationSociety": "ATLANTIC MARINE CLASS"
},
"positionReceived": "4 min ago",
"unlocode_lastport": "FRDKK",
"unlocode_destination": "MYPKG"
"updateTime": "2025-07-30T10:47:02.551805"
}
}
Available Fields
id, name, mmsi, imo, countryIso, country, image, shipType, engine, fuelType, Propeller, engineType, engineBuilder, enginePower(kW), ports, arrived, departed, portName, portSign, typeSpecific, navigationalStatus, callsign, grossTonnage, teu, length, beam, yearOfBuilt, currentDraught, eni, etaUtc, draught, deadweight, speed, atdUtc, latitude, longitude, course, destination, lastPort, management, P&I, ism, ismWeb, manager, ismEmail, ismAddress, managerAddress, registeredOwner, ClassificationSociety, positionReceived, updateTime
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Get Vessel Particulars
Endpoint
GET https://datadocked.com/api/vessels_operations/get-vessel-particulars
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/get-vessel-particulars?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"id": 999,
"name": "UTOPIA OF THE SEAS",
"mmsi": "311001259",
"imo": "9880001",
"countryIso": "ZZ",
"country": "Atlantis",
"image": "https://static.vesselfinder.net/ship-photo/9880001-311001259-131a17940eb7444897f79198c133e2cb/1?v1",
"shipType": "Research Vessel",
"typeSpecific": "Oceanographic Survey Ship",
"grossTonnage": "98765",
"teu": "5000",
"length": "300 m",
"beam": "45 m",
"yearOfBuilt": "2020",
"currentDraught": "12.3 m",
"eni": "99999999",
"deadweight": "87654",
"updateTime": "2025-07-30T10:52:14.227527"
}
}
Available Fields
id, name, mmsi, imo, countryIso, country, image, shipType, typeSpecific, grossTonnage, teu, length, beam, yearOfBuilt, currentDraught, eni, deadweight, updateTime
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Get Vessel Location
Endpoint
GET https://datadocked.com/api/vessels_operations/get-vessel-location
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/get-vessel-location?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"name": "UTOPIA OF THE SEAS",
"imo":"9880001",
"mmsi":"311001259",
"draught": "10.2 m (max 12.0)",
"lastPort": "Neoport, Terra Nova",
"longitude": "135.12345/135° 7.407′",
"latitude": "-12.34567/12° 20.740′ S",
"speed": "12.7 kn",
"destination": "Skyharbor, Pacifica",
"course": "152.4°",
"callsign": "C6G19",
"etaUtc": "ETA: Aug 3, 08:45 (in 2 days)",
"atdUtc": "ATD: Jul 29, 14:15 UTC (1 day ago)",
"navigationalStatus": "Restricted manoeuverability",
"positionReceived": "4 min ago",
"unlocode_lastport": "FRDKK",
"unlocode_destination": "MYPKG"
}
}
Available Fields
draught, lastPort, longitude, latitude, speed, destination, course, callsign, etaUtc, atdUtc, navigationalStatus, positionReceived
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Get Vessel Engine Data
Endpoint
GET https://datadocked.com/api/vessels_operations/get-vessel-engine-data
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/get-vessel-engine-data?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"engine": [
{
"name": "UTOPIA OF THE SEAS",
"imo":"9880001",
"mmsi":"311001259",
"fuelType": "Synthetic Biofuel",
"Propeller": "2 VARIABLE PITCH",
"engineType": "NEO-DRIVE X200",
"engineBuilder": "AQUATech Marine Systems",
"enginePower(kW)": "84500"
}
]
}
}
Available Fields
engine, engine.fuelType, engine.Propeller, engine.engineType, engine.engineBuilder, engine.enginePower(kW)
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Get Vessel Management Data
Endpoint
GET https://datadocked.com/api/vessels_operations/get-vessel-management-data
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/get-vessel-management-data?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"management": {
"name": "UTOPIA OF THE SEAS",
"imo":"9880001",
"mmsi":"311001259",
"P&I": "Oceanic Global Insurance Co. (inception 2025-07-01)",
"ism": "ATLANTIS NAVIGATION LTD",
"ismWeb": "http://www.atlantis-navigation.example",
"manager": "ATLANTIS NAVIGATION LTD",
"ismEmail": "[email protected]",
"ismAddress": "Harbor Road 42, 10001, Portville, Oceanland.",
"managerAddress": "Harbor Road 42, 10001, Portville, Oceanland.",
"registeredOwner": "BLUEWAVE SHIPPING CO.",
"ClassificationSociety": "NEPTUNE MARITIME REGISTER"
}
}
}
Available Fields
management, P&I, ism, ismWeb, manager, ismEmail, ismAddress, managerAddress, registeredOwner, ClassificationSociety
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Port Calls By Vessel
Endpoint
GET https://datadocked.com/api/vessels_operations/port-calls-by-vessel
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo_or_mmsi:The IMO or MMSI number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/port-calls-by-vessel?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_OR_MMSI_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"detail": {
"name": "UTOPIA OF THE SEAS",
"imo":"9880001",
"mmsi":"311001259",
"ports": [
[
{
"arrived": "Jul 20, 08:10",
"departed": "Jul 20, 22:45",
"portName": "Port Azure Bay",
"portSign": "EX001"
},
{
"arrived": "Jul 14, 13:30",
"departed": "Jul 15, 09:20",
"portName": "Eastwave Terminal",
"portSign": "EX002"
},
{
"arrived": "Jul 10, 19:00",
"departed": "Jul 12, 04:45",
"portName": "South Haven Dock",
"portSign": "EX003"
},
{
"arrived": "Jul 7, 11:20",
"departed": "Jul 8, 22:30",
"portName": "Harborpoint Anchorage",
"portSign": "EX004"
},
{
"arrived": "Jul 4, 07:45",
"departed": "Jul 5, 18:00",
"portName": "Northcape Port",
"portSign": "EX005"
},
{
"arrived": "Jul 1, 15:30",
"departed": "Jul 2, 09:10",
"portName": "Oceanview Yard",
"portSign": "EX006"
},
{
"arrived": "Jun 26, 03:20",
"departed": "Jun 27, 20:40",
"portName": "Crystal Bay Terminal",
"portSign": "EX007"
},
{
"arrived": "Jun 20, 16:45",
"departed": "Jun 21, 10:50",
"portName": "Port Haven Anchorage",
"portSign": "EX008"
},
{
"arrived": "Jun 15, 09:05",
"departed": "Jun 16, 14:30",
"portName": "Silverline Port",
"portSign": "EX009"
},
{
"arrived": "Jun 10, 02:30",
"departed": "Jun 11, 19:00",
"portName": "Windshore Dock",
"portSign": "EX010"
},
{
"arrived": "Jun 4, 20:15",
"departed": "Jun 6, 06:25",
"portName": "Deepbay Terminal",
"portSign": "EX011"
},
{
"arrived": "Jun 1, 10:00",
"departed": "Jun 2, 15:15",
"portName": "Cloudport Harbor",
"portSign": "EX012"
},
{
"arrived": "May 28, 06:55",
"departed": "May 29, 11:45",
"portName": "Bluegate Anchorage",
"portSign": "EX013"
},
{
"arrived": "May 22, 17:35",
"departed": "May 24, 03:00",
"portName": "Seastone Terminal",
"portSign": "EX014"
},
{
"arrived": "May 18, 08:20",
"departed": "May 20, 12:10",
"portName": "Skyreach Docks",
"portSign": "EX015"
}
]
]
}
}
Available Fields
ports, arrived, departed, portName, portSign
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Port Calls By Port
Endpoint
GET https://datadocked.com/api/vessels_operations/port-calls-by-port
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- port_call:The port call you want to query.
- offset:The number of vessels you want to receive.
- search_type:The type of search, can be: arrival, departures,expected or in_port.
Example Request
https://datadocked.com/api/vessels_operations/port-calls-by-port?api_key=YOUR_API_KEY&port_call=PORT_CALL&offset=10&search_type=SEARCH_TYPE
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"status_code": 200,
"detail": {
"arrival": {
"list": [
{
"mmsi": 422317000,
"name": "NAJI 11",
"imo": 0,
"type": "SAR",
"year": 0,
"country": "Iran",
"a2": "ir",
"gt": 0,
"dw": 0,
"sa": true,
"sizes": "-",
"tlck": 1,
"next": null,
"prev": {
"rpzone": {
"name": "Bandar-e Lengeh",
"a2": "ir",
"lat": 26.545080447676312,
"lon": 54.88950662365405,
"pk": "IRBDH001"
},
"rpdna": "Bandar-e Lengeh",
"rpdco": "Iran",
"rpdatd": 1754058154,
"rpdid": "IRBDH001",
"rpdtt": "ATD",
"rpda2": "ir",
"rpdst": 1
},
"formattedETA": "Aug 1, 21:06"
},
]
}
},
}
Available Fields
status_code, detail, arrival, total, pages, list, mmsi, name, imo, type, year, country, a2, gt, dw, sa, sizes, tlck, next, formattedETA, prev, rpzone, rpzone.name, rpzone.a2, rpzone.lat, rpzone.lon, rpzone.pk, rpdna, rpdco, rpdatd, rpdid, rpdtt, rpda2, rpdst, headers
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Vessel Inspection Data
View DocumentationEndpoint
GET https://datadocked.com/api/vessels_operations/vessel_mou
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo:The IMO number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/vessel_mou?api_key=YOUR_API_KEY&imo=VESSEL_IMO_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"status_code": 200,
"detail": {
"specs": {
"Flag": "San Marino",
"Call Sign": "XYZZ",
"MMSI": "999999999",
"Gross tonnage": "812 (since 15/03/2024)",
"DWT": "453",
"Type of ship": "Patrol vessel (since 15/03/2024)",
"Year of build": "2015",
"Status": "Under Repair (since 15/03/2024)",
"last_update": "Last update of ship particulars 31/07/2025"
},
"classification": {
"status": {
"society": "Neptune Register",
"status": "Pending Certification",
"since": ""
},
"surveys": [
{
"society": "Neptune Register",
"last_renewal": "12/01/2024",
"next_renewal": "12/01/2029",
"external_url": "https://example.com/ship/0123456"
}
]
},
"certificates": [],
"pi_info": [
{
"insurer": "Poseidon Maritime Insurance Ltd",
"inception": "01/04/2025"
}
],
"movements": [
{
"date_record": "July 2025",
"area_seen": "North Atlantic",
"source": "MarineTraffic"
},
{
"date_record": "June 2025",
"area_seen": "North Atlantic",
"source": "MarineTraffic"
},
{
"date_record": "May 2025",
"area_seen": "North Atlantic",
"source": "MarineTraffic"
}
],
"list_view": {
"imo": "0123456",
"name": "Aegis Maritime Group",
"ship_type": "Seaview Business Center, Oceanic Ave 10, 1010, Atlantis.",
"year_built": "during 2015",
"flag": "San Marino"
},
"inspection": [],
"ship_history": {
"current_and_former_names": [
{
"name": "SEA HAWK",
"date_of_effect": "since 01/05/2023",
"source": "ShipData Inc"
},
{
"name": "OCEAN WOLF",
"date_of_effect": "since 15/03/2015",
"source": "ShipData Inc"
}
],
"current_and_former_flags": [
{
"flag": "San Marino",
"date_of_effect": "since 01/06/2023",
"source": "ShipData Inc"
}
],
"renewals": [
{
"classification_society": "Neptune Register",
"date_of_survey": "12/01/2024",
"source": "Neptune Register"
},
{
"classification_society": "Neptune Register",
"date_of_survey": "12/01/2019",
"source": "Neptune Register"
}
],
"company_roles": [
{
"company": "Aegis Maritime Group",
"role": "Registered owner",
"date_of_effect": "during 2015",
"source": "ShipData Inc"
}
]
}
},
}
Available Fields
status_code, detail, specs, specs.Flag, specs.Call Sign, specs.MMSI, specs.Gross tonnage, specs.DWT, specs.Type of ship, specs.Year of build, specs.Status, specs.last_update, classification, classification.status, classification.status.society, classification.status.status, classification.status.since, classification.surveys, classification.surveys.society, classification.surveys.last_renewal, classification.surveys.next_renewal, classification.surveys.external_url, certificates, pi_info, pi_info.insurer, pi_info.inception, movements, movements.date_record, movements.area_seen, movements.source, list_view, list_view.imo, list_view.name, list_view.ship_type, list_view.year_built, list_view.flag, inspection, ship_history, ship_history.current_and_former_names, ship_history.current_and_former_names.name, ship_history.current_and_former_names.date_of_effect, ship_history.current_and_former_names.source, ship_history.current_and_former_flags, ship_history.current_and_former_flags.flag, ship_history.current_and_former_flags.date_of_effect, ship_history.current_and_former_flags.source, ship_history.renewals, ship_history.renewals.classification_society, ship_history.renewals.date_of_survey, ship_history.renewals.source, ship_history.company_roles, ship_history.company_roles.company, ship_history.company_roles.role, ship_history.company_roles.date_of_effect, ship_history.company_roles.source, headers
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Vessel Weather Data
Endpoint
GET https://datadocked.com/api/vessels_operations/vessel_weather
Required Parameters
- api_key:Your personal API key, found in your profile dashboard
- imo:The IMO number of the vessel you want to query.
Example Request
https://datadocked.com/api/vessels_operations/vessel_weather?api_key=YOUR_API_KEY&imo_or_mmsi=VESSEL_IMO_NUMBER
Response Format
The API responds with a JSON object containing detailed vessel information:
Sample JSON Response
{
"status_code": 200,
"detail": {
"name": "BALTIC SPRING",
"MMSI": "311001003",
"IMO": "8909070",
"temperature": "19 °C",
"windSpeed": "2.4 m/s",
"waves": "1.5 m."
},
"headers": null
}
Available Fields
status_code, detail, name, MMSI, IMO, temperature, windSpeed, waves, headers
Common Responses
- 200 OK
Request was successful
- 400
Bad Request
Code Examples
import requests
import json
api_key = 'YOUR_API_KEY'
imo_or_mmsi = 'VESSEL_IMO_OR_MMSI_NUMBER'
url = f"https://datadocked.com/api/vessels_operations/get-vessel-info?api_key={api_key}&imo_or_mmsi={imo_or_mmsi}"
response = requests.get(url)
if response.status_code == 200:
print(response.json())
else:
print(f"Error: {response.status_code}, {response.text}")
Support
If you need help or have any questions, please don't hesitate to contact us at [email protected].