MarineTraffic · Schema

MarineTraffic Vessel

AIS vessel position and static data record from MarineTraffic

AISMaritimeShippingVessel Tracking

Properties

Name Type Description
MMSI string Maritime Mobile Service Identity (9 digits)
IMO integernull IMO number (7 digits)
SHIP_ID integer MarineTraffic internal vessel identifier
LAT number Latitude in decimal degrees (WGS84)
LON number Longitude in decimal degrees (WGS84)
SPEED number Speed over ground in tenths of knots
HEADING integer True heading 0-359; 511 = not available
COURSE number Course over ground in tenths of degrees
STATUS integer AIS navigational status (0=Under way using engine, 1=At anchor, etc.)
TIMESTAMP string UTC timestamp of the AIS position report
DSRC string Data source: TER = terrestrial AIS, SAT = satellite AIS
VESSEL_NAME string
CALLSIGN string
FLAG string Flag state country code (ISO 3166-1 alpha-2)
SHIPTYPE integer AIS vessel type code per ITU-R M.1371
CARGO integer Cargo type code from AIS message type 5
CURRENT_PORT string
LAST_PORT string
NEXT_PORT_NAME string
NEXT_PORT_UNLOCODE string UN/LOCODE of the destination port
ETA stringnull Estimated time of arrival at destination
DESTINATION string Voyage destination as broadcast in AIS
LENGTH integer Length overall in meters
WIDTH integer Beam/width in meters
DRAUGHT number Current static draught in tenths of meters
GT integer Gross tonnage
DWT integer Deadweight tonnage
YEAR_BUILT integernull
View JSON Schema on GitHub

JSON Schema

marinetraffic-vessel-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/marinetraffic/refs/heads/main/json-schema/marinetraffic-vessel-schema.json",
  "title": "MarineTraffic Vessel",
  "description": "AIS vessel position and static data record from MarineTraffic",
  "type": "object",
  "properties": {
    "MMSI": {
      "type": "string",
      "description": "Maritime Mobile Service Identity (9 digits)",
      "pattern": "^[0-9]{9}$"
    },
    "IMO": {
      "type": ["integer", "null"],
      "description": "IMO number (7 digits)"
    },
    "SHIP_ID": {
      "type": "integer",
      "description": "MarineTraffic internal vessel identifier"
    },
    "LAT": {
      "type": "number",
      "format": "double",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude in decimal degrees (WGS84)"
    },
    "LON": {
      "type": "number",
      "format": "double",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude in decimal degrees (WGS84)"
    },
    "SPEED": {
      "type": "number",
      "minimum": 0,
      "description": "Speed over ground in tenths of knots"
    },
    "HEADING": {
      "type": "integer",
      "minimum": 0,
      "maximum": 511,
      "description": "True heading 0-359; 511 = not available"
    },
    "COURSE": {
      "type": "number",
      "minimum": 0,
      "maximum": 360,
      "description": "Course over ground in tenths of degrees"
    },
    "STATUS": {
      "type": "integer",
      "minimum": 0,
      "maximum": 15,
      "description": "AIS navigational status (0=Under way using engine, 1=At anchor, etc.)"
    },
    "TIMESTAMP": {
      "type": "string",
      "format": "date-time",
      "description": "UTC timestamp of the AIS position report"
    },
    "DSRC": {
      "type": "string",
      "enum": ["TER", "SAT"],
      "description": "Data source: TER = terrestrial AIS, SAT = satellite AIS"
    },
    "VESSEL_NAME": {
      "type": "string",
      "maxLength": 20
    },
    "CALLSIGN": {
      "type": "string",
      "maxLength": 7
    },
    "FLAG": {
      "type": "string",
      "description": "Flag state country code (ISO 3166-1 alpha-2)"
    },
    "SHIPTYPE": {
      "type": "integer",
      "minimum": 0,
      "maximum": 99,
      "description": "AIS vessel type code per ITU-R M.1371"
    },
    "CARGO": {
      "type": "integer",
      "description": "Cargo type code from AIS message type 5"
    },
    "CURRENT_PORT": {
      "type": "string"
    },
    "LAST_PORT": {
      "type": "string"
    },
    "NEXT_PORT_NAME": {
      "type": "string"
    },
    "NEXT_PORT_UNLOCODE": {
      "type": "string",
      "description": "UN/LOCODE of the destination port"
    },
    "ETA": {
      "type": ["string", "null"],
      "format": "date-time",
      "description": "Estimated time of arrival at destination"
    },
    "DESTINATION": {
      "type": "string",
      "maxLength": 20,
      "description": "Voyage destination as broadcast in AIS"
    },
    "LENGTH": {
      "type": "integer",
      "minimum": 0,
      "description": "Length overall in meters"
    },
    "WIDTH": {
      "type": "integer",
      "minimum": 0,
      "description": "Beam/width in meters"
    },
    "DRAUGHT": {
      "type": "number",
      "minimum": 0,
      "description": "Current static draught in tenths of meters"
    },
    "GT": {
      "type": "integer",
      "minimum": 0,
      "description": "Gross tonnage"
    },
    "DWT": {
      "type": "integer",
      "minimum": 0,
      "description": "Deadweight tonnage"
    },
    "YEAR_BUILT": {
      "type": ["integer", "null"],
      "minimum": 1800,
      "maximum": 2100
    }
  },
  "required": ["MMSI", "LAT", "LON", "TIMESTAMP"]
}