openapi: 3.0.2
info:
title: MarineTraffic Vessels Data API
version: 1.0.0
description: Vessel master data, photographs, and ship search by identifier (IMO / MMSI / Call Sign) or by name.
contact:
name: MarineTraffic
url: https://www.marinetraffic.com/
servers:
- url: https://services.marinetraffic.com/api
tags:
- name: Vessel Information
- name: Search Vessel
paths:
/exportvesselphoto/{api_key}:
get:
tags:
- Vessel Information
summary: Vessel Photo
description: "Retrieve the most popular photo of a vessel. Notes
\n - The frequency of\
\ allowed API calls is specific to your API key and is detailed in your contract as a number of successful calls\
\ per time period. For example “2 calls per minute”. Regardless of this agreed limit, each API key is technically\
\ restricted to a maximum of 100 total (including successful and unsuccessful) requests per minute to ensure system\
\ stability.
\n
"
operationId: exportvesselphoto
parameters:
- $ref: '#/components/parameters/api_key'
- $ref: '#/components/parameters/vessel_id_VD01'
- $ref: '#/components/parameters/shipid_VD01'
- $ref: '#/components/parameters/protocol'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/200_vd01_default'
application/xml:
schema:
$ref: '#/components/schemas/200_vd01_default'
examples:
Default:
summary: Simple
value: "\n\n \n"
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400_vd01_missing_or_invalid_ship_identifier'
application/xml:
schema:
$ref: '#/components/schemas/400_vd01_missing_or_invalid_ship_identifier'
examples:
Missing or invalid ship identifier:
summary: Missing or invalid ship identifier
value: "\n\n \n \
\ \n \n"
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/429_too_many_requests'
application/xml:
schema:
$ref: '#/components/schemas/429_too_many_requests'
examples:
Area out of bound:
summary: Too Many Requests
value: "\n\n \n \
\ \n \n"
/vesselmasterdata/{api_key}:
get:
tags:
- Vessel Information
summary: Vessel Particulars (Legacy API)
description: "⚠️This is a legacy endpoint.\nA new and improved version is now available, offering enhanced\
\ data quality, latest features and better performance. \nWe strongly recommend switching to the latest version, which\
\ you can explore here: Vessel\
\ Particulars & Ownership.\nIf you would like to see the new endpoint in action, feel free to request a demo - our team would be happy to\
\ walk you through it.\nRetrieve particulars for one or more vessels. Notes \n \
\ - Information about AIS-transmitted data
\n - If page parameter is missing, then default page:1 will be used instead
\n\
\ - The results returned from the API call are split into pages of 100 rows
\n - In order to get each\
\ page generated by the call, add the /page:#value/ parameter to the URL. The default value is /page:1/
\n \
\ - The API does not return results for vessels that are not IMO-registered
\n - The API does not return\
\ results for dead vessels
\n - The frequency of allowed API calls is specific to your API key and\
\ is detailed in your contract as a number of successful calls per time period. For example “2 calls per minute”.\
\ Regardless of this agreed limit, each API key is technically restricted to a maximum of 100 total (including\
\ successful and unsuccessful) requests per minute to ensure system stability.
\n
"
operationId: vesselmasterdata
parameters:
- $ref: '#/components/parameters/api_key'
- $ref: '#/components/parameters/v_VD02'
- $ref: '#/components/parameters/mmsi_VD02'
- $ref: '#/components/parameters/imo_VD02'
- $ref: '#/components/parameters/shipid_VD02'
- $ref: '#/components/parameters/timespan_VD02'
- $ref: '#/components/parameters/interval_VD02'
- $ref: '#/components/parameters/protocol'
- $ref: '#/components/parameters/page_VD02'
- $ref: '#/components/parameters/msgtype_VD02'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/200_vd02_default'
- $ref: '#/components/schemas/200_vd02_extended'
application/xml:
schema:
oneOf:
- $ref: '#/components/schemas/200_vd02_default'
- $ref: '#/components/schemas/200_vd02_extended'
examples:
Default:
summary: Simple
value: "\n\n \n"
Extended:
summary: Extended
value: "\n\n \n"
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400_vd02_missing_or_invalid_ship_identifier'
application/xml:
schema:
$ref: '#/components/schemas/400_vd02_missing_or_invalid_ship_identifier'
examples:
Missing or invalid ship identifier:
summary: Missing or invalid ship identifier
value: "\n\n \n \
\ \n \n"
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/429_too_many_requests'
application/xml:
schema:
$ref: '#/components/schemas/429_too_many_requests'
examples:
Area out of bound:
summary: Too Many Requests
value: "\n\n \n \
\ \n \n"
/shipsearch/{api_key}:
get:
tags:
- Search Vessel
summary: Search Vessel by Identifier
description: "Search for a vessel by unique identifier. Notes \n - The frequency of allowed\
\ API calls is specific to your API key and is detailed in your contract as a number of successful calls per time\
\ period. For example “2 calls per minute”. Regardless of this agreed limit, each API key is technically restricted\
\ to a maximum of 100 total (including successful and unsuccessful) requests per minute to ensure system stability.
\n\
"
operationId: shipsearch
parameters:
- $ref: '#/components/parameters/api_key'
- $ref: '#/components/parameters/shipid_VD03'
- $ref: '#/components/parameters/mmsi_VD03'
- $ref: '#/components/parameters/imo_VD03'
- $ref: '#/components/parameters/shiptype_VD03'
- $ref: '#/components/parameters/type_name_id_VD03'
- $ref: '#/components/parameters/protocol'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/200_vd03_default'
application/xml:
schema:
$ref: '#/components/schemas/200_vd03_default'
examples:
Default:
summary: Simple
value: "\n\n \n"
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400_vd03_missing_search_identifier'
application/xml:
schema:
$ref: '#/components/schemas/400_vd03_missing_search_identifier'
examples:
Missing search identifier:
summary: Missing search identifier
value: "\n\n \n \
\ \n \n"
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/429_too_many_requests'
application/xml:
schema:
$ref: '#/components/schemas/429_too_many_requests'
examples:
Area out of bound:
summary: Too Many Requests
value: "\n\n \n \
\ \n \n"
'/shipsearch/{api_key} ':
get:
tags:
- Search Vessel
summary: Search Vessel by Name
description: "Search for vessels by vessel name. Notes In case of multiple results:\n \n\
\ - the first 100 matches will be fetched
\n - exact matches are always first on the returned list
\n\
\
\n \n \n - Only active vessels are returned
\n - The frequency of allowed API\
\ calls is specific to your API key and is detailed in your contract as a number of successful calls per time\
\ period. For example “2 calls per minute”. Regardless of this agreed limit, each API key is technically restricted\
\ to a maximum of 100 total (including successful and unsuccessful) requests per minute to ensure system stability.
\n\
\
"
operationId: shipsearch_
parameters:
- $ref: '#/components/parameters/api_key'
- $ref: '#/components/parameters/shipname_VD03'
- $ref: '#/components/parameters/shiptype_VD03'
- $ref: '#/components/parameters/type_name_id_VD03'
- $ref: '#/components/parameters/protocol'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/200_vd03_default'
application/xml:
schema:
$ref: '#/components/schemas/200_vd03_default'
examples:
Default:
summary: Simple
value: "\n \n \n \n \
\ \n \n \n \n \n \
\ "
'400':
description: Bad Request
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/400_vd03_invalid_search_string_length'
- $ref: '#/components/schemas/400_vd03_missing_search_term'
application/xml:
schema:
oneOf:
- $ref: '#/components/schemas/400_vd03_invalid_search_string_length'
- $ref: '#/components/schemas/400_vd03_missing_search_term'
examples:
Invalid search string length:
summary: Invalid search string length
value: "\n\n \n \
\ \n \n"
Missing search term:
summary: Missing search term
value: "\n\n \n \
\ \n \n"
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/429_too_many_requests'
application/xml:
schema:
$ref: '#/components/schemas/429_too_many_requests'
examples:
Area out of bound:
summary: Too Many Requests
value: "\n\n \n \
\ \n \n"
components:
parameters:
api_key:
name: api_key
in: path
description: 'API key: 40-character hexadecimal number'
required: true
schema:
type: string
cursor:
name: cursor
in: query
description: The pagination cursor provided in the metadata section of the previous response
required: false
schema:
type: string
limit:
name: limit
in: query
description: The limit of vessels per page (min=1000, max=5000)
required: false
schema:
type: integer
default: 2000
protocol_mandatory:
name: protocol
in: query
description: "Response type. Use one of the following: \n - jsono
\n - csv
"
required: false
schema:
type: string
default: jsono
protocol_new:
name: protocol
in: query
description: "Response type. Use one of the following: \n - xml
\n - csv
\n - jsono
"
required: false
schema:
type: string
default: xml
v_PS01:
name: v
in: query
description: Version of the service to be executed. Use version 3 to get the latest
schema:
type: integer
default: 1
shipid_PS01:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: true
schema:
type: integer
mmsi_PS01:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track
required: false
schema:
type: integer
imo_PS01:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
days_PS01:
name: days
in: query
description: The number of days, starting from the time of request and going backwards, for which the response should
look for position data Maximum value is 190 (days)
required: true
schema:
type: integer
fromdate_PS01:
name: fromdate
in: query
description: Use with todate instead of days to get data for a date period
required: false
schema:
type: string
format: date-time
todate_PS01:
name: todate
in: query
description: Use with fromdate instead of days to get data for a date period
required: false
schema:
type: string
format: date-time
period_PS01:
name: period
in: query
description: "Limit position per vessel. Omit to get all the available positions Values are: \n - hourly:\
\ get one position per hour
\n - daily: get one position per day
\n
"
required: false
schema:
type: string
msgtype_PS01:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes also weather data"
required: false
schema:
type: string
default: simple
protocol:
name: protocol
in: query
description: "Response type. Use one of the following: \n - xml
\n - csv
\n - json
\n - jsono
"
required: false
schema:
type: string
default: xml
MINLAT_PS01:
name: MINLAT
in: query
description: Use with MAXLAT, MINLON, MAXLON to define an area for which you wish to either get all the historical vessels'
positions or historical positions for a specific vessel The absolute value of MAXLAT - MINLAT + MAXLON
- MINLON has to be equal to or less than 2 If you do not define a vessel, the maximum period for
which you can look back has a maximum period of one day
required: true
schema:
type: number
MAXLAT_PS01:
name: MAXLAT
in: query
description: Use with MINLAT, MINLON, MAXLON to define an area for which you wish to either get all the historical vessels'
positions or historical positions for a specific vessel The absolute value of MAXLAT - MINLAT + MAXLON
- MINLON has to be equal to or less than 2 If you do not define a vessel, the maximum period for
which you can look back has a maximum period of one day
required: true
schema:
type: number
MINLON_PS01:
name: MINLON
in: query
description: Use with MINLAT, MAXLAT, MAXLON to define an area for which you wish to either get all the historical vessels'
positions or historical positions for a specific vessel The absolute value of MAXLAT - MINLAT + MAXLON
- MINLON has to be equal to or less than 2 If you do not define a vessel, the maximum period for
which you can look back has a maximum period of one day
required: true
schema:
type: number
MAXLON_PS01:
name: MAXLON
in: query
description: Use with MINLAT, MAXLAT, MINLON to define an area for which you wish to either get all the historical vessels'
positions or historical positions for a specific vessel The absolute value of MAXLAT - MINLAT + MAXLON
- MINLON has to be equal to or less than 2 If you do not define a vessel, the maximum period for
which you can look back has a maximum period of one day
required: true
schema:
type: number
shipid_PS01_2:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: false
schema:
type: integer
v_PS02:
name: v
in: query
description: Version of the service to be executed. Use version 8 to get the latest
required: true
schema:
type: integer
default: 1
timespan_PS02:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions. Maximum value for terrestrial coverage
is 60. Maximum value for satellite coverage is 180
required: false
schema:
type: integer
default: 5
shiptype_PS02:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
msgtype_PS02:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS03:
name: v
in: query
description: Version of the service to be executed. Use version 8 to get the latest
required: true
schema:
type: integer
default: 1
vessel_type:
name: vesseltypeid
in: query
description: Filter vessels based on vessel types, comma separated ids supported more
required: false
schema:
type: integer
timespan_PS03:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions Maximum value for terrestrial coverage
is 60. Maximum value for satellite coverage is 180
required: false
schema:
type: integer
default: 5
shiptype_PS03:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
msgtype_PS03:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS04:
name: v
in: query
description: Version of the service to be executed. Use version 8 to get the latest
required: true
schema:
type: integer
default: 1
timespan_PS04:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions Maximum value for terrestrial coverage
is 60. Maximum value for satellite coverage is 180
required: false
schema:
type: integer
default: 5
shiptype_PS04:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
msgtype_PS04:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS05:
name: v
in: query
description: Version of the service to be executed. Use version 8 to get the latest
required: true
schema:
type: integer
default: 1
timespan_PS05:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions Maximum value for terrestrial coverage
is 60. Maximum value for satellite coverage is 180
required: false
schema:
type: integer
default: 5
shiptype_PS05:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
msgtype_PS05:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS06:
name: v
in: query
description: Version of the service to be executed. Use version 8 to get the latest
required: true
schema:
type: integer
default: 1
v_MTA030AD_1:
name: v
in: query
description: Use latest version **9**
required: true
schema:
type: integer
v_MTA030AD_2:
name: v
in: query
description: Use latest version **2**
required: true
schema:
type: integer
v_MTA030AD_3:
name: v
in: query
description: Use latest version **6**
required: true
schema:
type: integer
timespan_PS06:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions. Maximum value is 2880
required: false
schema:
type: integer
default: 5
shiptype_PS06:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
MAXLAT_PS06:
name: MAXLAT
in: query
description: Use with MINLAT, MINLON, MAXLON to define an area and retrieve positional information of vessels sailing
in it
required: true
schema:
type: number
MINLON_PS06:
name: MINLON
in: query
description: Use with MINLAT, MAXLAT, MAXLON to define an area and retrieve positional information of vessels sailing
in it
required: true
schema:
type: number
MAXLON_PS06:
name: MAXLON
in: query
description: Use with MINLAT, MINLON, MAXLAT to define an area and retrieve positional information of vessels sailing
in it
required: true
schema:
type: number
MINLAT_PS06:
name: MINLAT
in: query
description: Use with MAXLAT, MINLON, MAXLON to define an area and retrieve positional information of vessels sailing
in it
required: true
schema:
type: number
msgtype_PS06:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS07:
name: v
in: query
description: Version of the service to be executed. Use version 5 to get the latest
required: true
schema:
type: integer
default: 1
shipid_PS07:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: true
schema:
type: integer
imo_PS07:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
mmsi_PS07:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track
required: false
schema:
type: integer
timespan_PS07:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions. Maximum value is 2880
required: false
schema:
type: integer
default: 2
msgtype_PS07:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes scheduled static and voyage related vessel data report (AIS\
\ Message 5). In this case your request frequency might be limited (depending on your service terms) If\
\ omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
v_PS08:
name: v
in: query
description: Version of the service to be executed. Use version 1 to get the latest
required: true
schema:
type: integer
default: 1
timespan_PS08:
name: timespan
in: query
description: The maximum age, in minutes, of the returned positions. Maximum value is 2880
required: false
schema:
type: integer
default: 5
shiptype_generic_PS08:
name: shiptype_generic
in: query
description: Filter vessels based on generic vessel types, comma separated values supported Vessel type ID
should be used and not vessel type name (2=Fishing / 4=High Speed Craft / 6=Passenger / 7=Cargo / 8=Tanker)
Should not be combined with shiptype_detailed filter
required: false
schema:
type: integer
shiptype_detailed_PS08:
name: shiptype_detailed
in: query
description: Filter vessels based on detailed vessel types, comma separated values supported Vessel type
ID should be used and not vessel type name - more
Should not be combined with shiptype_generic filter
required: false
schema:
type: integer
msgtype_PS08:
name: msgtype
in: query
description: "Resolution of the response. Available values: \n - simple
\n - extended
\n - full
\n\
If used with the value extended or full, the response includes scheduled static and voyage related\
\ vessel data report (AIS Message 5). In this case your request frequency might be limited (depending on your service\
\ terms) If omitted, the returned records include only position reports (AIS Messages 1, 2, 3/ 18, 19)"
required: false
schema:
type: string
default: simple
timespan_MTA030AD:
name: timespan
in: query
description: Overrides the default timespan
required: false
schema:
type: integer
default: 5
v_EV01:
name: v
in: query
description: Version of the service to be executed. Use version 6 to get the latest
required: true
schema:
type: integer
default: 1
shipid_EV01:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: true
schema:
type: integer
mmsi_EV01:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track
required: false
schema:
type: integer
imo_EV01:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
timespan_EV01:
name: timespan
in: query
description: The maximum age, in minutes, of the returned port calls. Maximum value is 2880
required: false
schema:
type: integer
default: 2
movetype_EV01:
name: movetype
in: query
description: Use 0 to only receive arrivals or 1 to only receive departures. If not used, the response will include
both
required: false
schema:
type: integer
exclude_intransit_EV01:
name: exclude_intransit
in: query
description: Use 1 to exclude vessels in transit
required: false
schema:
type: integer
fromdate_EV01:
name: fromdate
in: query
description: 'Portcalls between fromdate and todate. Maximum period requested 190 days Date format: YYYY-MM-DD
HH:MM'
required: false
schema:
type: string
format: date-time
todate_EV01:
name: todate
in: query
description: 'Portcalls between fromdate and todate. Maximum period requested 190 days Date format: YYYY-MM-DD
HH:MM'
required: false
schema:
type: string
format: date-time
dwt_min_EV01:
name: dwt_min
in: query
description: 'Data filter: minimum DWT Applicable to IMO-having vessels'
required: false
schema:
type: integer
dwt_max_EV01:
name: dwt_max
in: query
description: 'Data filter: maximum DWT Applicable to IMO-having vessels'
required: false
schema:
type: integer
gt_min_EV01:
name: gt_min
in: query
description: 'Data filter: minimum GT Applicable to IMO-having vessels'
required: false
schema:
type: integer
gt_max_EV01:
name: gt_max
in: query
description: 'Data filter: maximum GT Applicable to IMO-having vessels'
required: false
schema:
type: integer
market_EV01:
name: market
in: query
description: Define market(s) for which you would like to receive port calls (single or comma separated values) - more
required: false
schema:
type: string
msgtype_EV01:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes voyage related data since the previous port call"
required: false
schema:
type: string
default: simple
v_EV02:
name: v
in: query
description: Version of the service to be executed. Use version 2 to get the latest
required: true
schema:
type: integer
default: 1
shipid_EV02:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: true
schema:
type: integer
mmsi_EV02:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track
required: false
schema:
type: integer
imo_EV02:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
timespan_EV02:
name: timespan
in: query
description: The maximum age, in minutes, of the returned port calls. Maximum value is 2880
required: false
schema:
type: integer
default: 60
fromdate_EV02:
name: fromdate
in: query
description: 'Vessel Events between fromdate and todate Date format: YYYY-MM-DD HH:MM:SS'
required: false
schema:
type: string
format: date-time
todate_EV02:
name: todate
in: query
description: 'Vessel Events between fromdate and todate Date format: YYYY-MM-DD HH:MM:SS'
required: false
schema:
type: string
format: date-time
event_type_EV02:
name: event_type
in: query
description: You may use one or more event ids in comma separated format for the events you wish to receive
required: false
schema:
type: integer
limit_events_EV02:
name: limit_events
in: query
description: Limit the number of results
required: false
schema:
type: integer
v_EV03:
name: v
in: query
description: Version of the service to be executed. Use version 3 to get the latest
required: true
schema:
type: integer
default: 1
shipid_EV03:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use imo
or mmsi
required: true
schema:
type: integer
mmsi_EV03:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track
required: false
schema:
type: integer
imo_EV03:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
timespan_EV03:
name: timespan
in: query
description: The maximum age, in minutes, of the returned port calls. Maximum value is 2880
required: false
schema:
type: integer
default: 2
fromdate_EV03:
name: fromdate
in: query
description: 'Return Berth Calls where DOCK_TIMESTAMP_UTC is equal to or greater than provided fromdate. Maximum period
requested 15 days Date format: YYYY-MM-DD HH:MM:SS.'
required: false
schema:
type: string
format: date-time
todate_EV03:
name: todate
in: query
description: 'Return Berth Calls where DOCK_TIMESTAMP_UTC is equal to or less than provided todate. Maximum period requested
15 days Date format: YYYY-MM-DD HH:MM:SS'
required: false
schema:
type: string
format: date-time
market_EV03:
name: market
in: query
description: "Define market for which you would like to receive berth calls - more \n - if undefined and ship-class is also undefined, then return all
\n - if undefined and\
\ ship-class is defined, return based on ship-class
\n - if defined and ship-class is undefined, return all\
\ ship-classes of the specific market
\n
"
required: false
schema:
type: string
shipclass_EV03:
name: shipclass
in: query
description: Define ship class of interest - more
required: false
schema:
type: integer
dwt_min_EV03:
name: dwt_min
in: query
description: 'Data filter: minimum DWT Use it to filter by size Cargo and Tanker IMO-having vessels (shiptype
= 7,8)'
required: false
schema:
type: integer
dwt_max_EV03:
name: dwt_max
in: query
description: 'Data filter: maximum DWT Use it to filter by size Cargo and Tanker IMO-having vessels (shiptype
= 7,8)'
required: false
schema:
type: integer
gt_min_EV03:
name: gt_min
in: query
description: 'Data filter: minimum GT Applicable to IMO-having vessels'
required: false
schema:
type: integer
gt_max_EV03:
name: gt_max
in: query
description: 'Data filter: maximum GT Applicable to IMO-having vessels'
required: false
schema:
type: integer
movetype_EV03:
name: movetype
in: query
description: Use 0 to include both, 1 to only receive dockings or 2 for only undockings within the defined period. If
not used, only dockings are returned Available only from version 2 of the service
required: false
schema:
type: integer
msgtype_EV03:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes voyage related data since the previous port call"
required: false
schema:
type: string
default: simple
portid_EV01:
name: portid
in: query
description: The MarineTraffic ID of the port you wish to monitor (found on the URL of the respective Port page) or
port UN/LOCODE
required: true
schema:
type: integer
portid_EV03:
name: portid
in: query
description: The MarineTraffic ID of the port you wish to monitor (found on the URL of the respective Port page)
You can instead use port_unlocode, berthid or terminalid
required: true
schema:
type: integer
port_unlocode_EV03:
name: port_unlocode
in: query
description: Port UN LOCODE (without gaps or spaces)
required: false
schema:
type: integer
berthid_EV03:
name: berthid
in: query
description: 'The MarineTraffic ID of the berth you wish to monitor (list to be provided upon request) '
required: false
schema:
type: integer
terminalid_EV03:
name: terminalid
in: query
description: The MarineTraffic ID of the terminal you wish to monitor (list to be provided upon request)
required: false
schema:
type: integer
vessel_id_VD01:
name: vessel_id
in: query
description: The Maritime Mobile Service Identity (MMSI) or the IMO number of the vessel You can instead
use shipid
required: true
schema:
type: integer
shipid_VD01:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel
required: false
schema:
type: integer
v_VD02:
name: v
in: query
description: Version of the service to be executed. Use version 5 to get the latest
required: true
schema:
type: integer
default: 1
msgtype_VD02:
name: msgtype
in: query
description: "Resolution of the response. Available values: "
required: false
schema:
type: string
default: simple
mmsi_VD02:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track (single or comma separated
values) You can instead use imo or shipid
required: true
schema:
type: integer
imo_VD02:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track (single or comma separated
values)
required: false
schema:
type: integer
shipid_VD02:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel (single or comma separated values)
required: false
schema:
type: integer
timespan_VD02:
name: timespan
in: query
description: The timespan parameter defines the period of time, during which we want to receive the change in a vessel's
details The maximum value can be either 5 when the interval parameter is set to days or 2880 when the interval
is set to minutes
required: false
schema:
type: integer
interval_VD02:
name: interval
in: query
description: The interval parameter can be either minutes or days
required: false
schema:
type: string
default: minutes
page_VD02:
name: page
in: query
description: Page number of the results to be returned
required: false
schema:
type: integer
default: 1
shipid_VD03:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel You can instead use mmsi
or imo
required: true
schema:
type: integer
mmsi_VD03:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track NOTE: Using
MMSI may potentially return multiple records as multiple vessels might have transponded the same MMSI
required: false
schema:
type: integer
imo_VD03:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track NOTE:
Using IMO may potentially return multiple records as multiple vessels might have transponded the same IMO
required: false
schema:
type: integer
shiptype_VD03:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
type_name_id_VD03:
name: type_name_id
in: query
description: 'Data filter: AIS Shiptype Find more information here'
required: false
schema:
type: integer
shipname_VD03:
name: shipname
in: query
description: The vessel name. The results will contain all vessels whose name is like the given words
required: true
schema:
type: string
v_VI01:
name: v
in: query
description: Version of the service to be executed. Use version 2 to get the latest
required: true
schema:
type: integer
default: 1
mmsi_VI01:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track You can instead
use imo or shipid
required: true
schema:
type: integer
imo_VI01:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
shipid_VI01:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel
required: false
schema:
type: integer
msgtype_VI01:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes voyage related information (eg. distance travelled and to-go,\
\ load condition) and the estimated route to the vessel's destination"
required: false
schema:
type: string
default: simple
fleet_id_VI01:
name: fleet_id
in: query
description: The fleet id you wish to receive voyage forecast for
required: true
schema:
type: integer
mmsi_VI04:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track You can instead
use imo or shipid
required: true
schema:
type: integer
imo_VI04:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
shipid_VI04:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel
required: false
schema:
type: integer
fromportid_VI04:
name: fromportid
in: query
description: The MarineTraffic ID of the port you wish to receive a prediction (found on the URL of the respective Port
page)
required: false
schema:
type: integer
fleet_id_VI04:
name: fleet_id
in: query
description: The MarineTraffic ID of the fleet you wish to track
required: true
schema:
type: integer
v_VI07:
name: v
in: query
description: Version of the service to be executed. Use version 2 to get the latest
required: true
schema:
type: integer
default: 1
portid_VI07:
name: portid
in: query
description: The MarineTraffic ID of the port you wish to receive ETA info You can instead use unlocode
required: true
schema:
type: integer
unlocode_VI07:
name: unlocode
in: query
description: The UN LOCODE (without gaps or spaces) of the port you wish to receive ETA info
required: false
schema:
type: string
mmsi_VI07:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track You can instead
use imo or shipid
required: true
schema:
type: integer
imo_VI07:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
shipid_VI07:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel
required: false
schema:
type: integer
speed_calc_VI07:
name: speed_calc
in: query
description: "The Speed of the Vessel that MarineTraffic will use to produce the ETA value \n - if not defined\
\ the last average speed of the Vessel will be used
\n - if no average speed exists then a default value of\
\ 12(kn) will be used
\n
"
required: false
schema:
type: integer
msgtype_VI07:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes voyage related data"
required: false
schema:
type: string
default: simple
v_VI02:
name: v
in: query
description: Version of the service to be executed. Use version 4 to get the latest
required: true
schema:
type: integer
default: 1
portid_VI02:
name: portid
in: query
description: The MarineTraffic ID of the port (found on the URL of the respective Port page)
required: true
schema:
type: integer
timespan_VI02:
name: timespan
in: query
description: Number of days in the future to look for expected arrivals, starting from the time the API call is requested
Maximum value is 40 days If neither this nor the fromdate/todate parameters are used, the response
only includes vessels currently in port (or the country’s ports) and the last vessel's signal is received during the
last 2 days
required: false
schema:
type: integer
days_last_signal_VI02:
name: days_last_signal
in: query
description: Include vessels currently in port that have transmitted a position within the last x days (based on their
last signal timestamp). This parameter only works when no other timeframe is defined.
required: false
schema:
type: integer
fromdate_VI02:
name: fromdate
in: query
description: 'Timestamp in the future to start looking for expected arrivals. If used, then you should also define the
todate parameter Date format: YYYY-MM-DD HH:MM:SS'
required: false
schema:
type: string
format: date-time
todate_VI02:
name: todate
in: query
description: 'Timestamp in the future to start looking for expected arrivals. If used, then you should also define the
fromdate parameter Date format: YYYY-MM-DD HH:MM:SS'
required: false
schema:
type: string
format: date-time
fromportid_VI02:
name: fromportid
in: query
description: The MarineTraffic ID of the previous port (found on the URL of the respective Port page) or previous port
UNLOCODE
required: false
schema:
type: integer
shiptype_VI02:
name: shiptype
in: query
description: "Filter data by vessel type: \n - 2: Fishing
\n - 4: High Speed Craf
\n - 6: Passenger
\n\
\ - 7: Cargo
\n - 8: Tanker
"
required: false
schema:
type: integer
dwt_min_VI02:
name: dwt_min
in: query
description: 'Data filter: minimum DWT Use it to filter by size Cargo and Tanker IMO-having vessels (shiptype
= 7,8). If used, then you should also define the dwt_max parameter'
required: false
schema:
type: integer
dwt_max_VI02:
name: dwt_max
in: query
description: 'Data filter: maximum DWT Use it to filter by size Cargo and Tanker IMO-having vessels (shiptype
= 7,8). If used, then you should also define the dwt_min parameter'
required: false
schema:
type: integer
gt_min_VI02:
name: gt_min
in: query
description: 'Data filter: minimum GT Applicable to IMO-having vessels. If used, then you should also define
the gt_max parameter'
required: false
schema:
type: integer
gt_max_VI02:
name: gt_max
in: query
description: 'Data filter: maximum GT Applicable to IMO-having vessels. If used, then you should also define
the gt_min parameter'
required: false
schema:
type: integer
msgtype_VI02:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, apart from the ETA information, the response includes main vessel particulars. If\
\ omitted, the returned records include only position and ETA reports"
required: false
schema:
type: string
default: simple
country_VI02:
name: country
in: query
description: The Country code of interest. Response includes all ports within the Country
required: true
schema:
type: integer
portid_VI05:
name: portid
in: query
description: The MarineTraffic ID of the port you wish to receive probable visits (found on the URL of the respective
Port page)
required: true
schema:
type: integer
market_VI05:
name: market
in: query
description: "Define market for which you would like to receive probable visits - more \n - if undefined and ship-class is also undefined, then return all
\n - if undefined and\
\ ship-class is defined, return based on ship-class
\n - If defined and ship-class is undefined, return all\
\ ship-classes of the specific market
\n
"
required: false
schema:
type: integer
shipclass_VI05:
name: shipclass
in: query
description: Define ship class of interest - more
required: false
schema:
type: integer
probability_VI05:
name: probability
in: query
description: Define probability over which you would like to receive probable visits (accepted > 0.3)
required: false
schema:
type: integer
portid_VI06:
name: portid
in: query
description: The MarineTraffic ID of the port for which you wish to retrieve congestion metrics (found on the URL of
the respective Port page). If you wish to retrieve congestion metrics for all ports, instead of portid
use agg_port=1
required: true
schema:
type: integer
year_VI06:
name: year
in: query
description: Year of interest (data available back to 1 year). Information further back can be requested ad-hoc
required: true
schema:
type: integer
week_VI06:
name: week
in: query
description: Week of Year that is of interest (e.g. for week 18/2018 input 18). For range of weeks use comma e.g. for
weeks 30 to 35 (30,35)
required: true
schema:
type: integer
market_VI06:
name: market
in: query
description: "Define market for which you would like to receive port congestion - more \n - if undefined and ship-class is also undefined, then figures for ALL markets/ship-class
\n\
\ - if undefined and ship-class is defined, returns based on ship-class for ALL applicable to size class markets
\n\
\ - if defined and ship-class is undefined, returns figures for the specific market (no size class breakdown)
\n\
If you wish to retrieve congestion metrics for all markets, instead of market use agg_market\
\ query parameter (=0 or =1)"
required: true
schema:
type: integer
shipclass_VI06:
name: shipclass
in: query
description: Define ship class of interest - more
If you wish to retrieve congestion metrics for all ship classes, instead of shipclass use agg_shipclass
query parameter (=0 or =1)
required: true
schema:
type: integer
agg_port_VI06:
name: agg_port
in: query
description: "**If used, portid should not be in request** \n - when agg_port = 1 is used, aggregation result\
\ of all ports are returned
\n - when agg_port = 1 is used, agg_market cannot be 1
\n
"
required: false
schema:
type: integer
agg_market_VI06:
name: agg_market
in: query
description: "**If used, market should not be in request** \n - if agg_market = 1, aggregation result of all\
\ markets will be returned
\n - if 0, a breakdown of markets will be returned
\n
"
required: false
schema:
type: integer
agg_shipclass_VI06:
name: agg_shipclass
in: query
description: "**If used, shipclass should not be in request** \n - if agg_shipclass = 1, aggregation result of\
\ all classes will be returned
\n - if 0, a breakdown of classes will be returned
\n
"
required: false
schema:
type: integer
time_anch_VI06:
name: time_anch
in: query
description: 'The median number of days spent at anchorage by the selected market/shipclass.
Values indicate in between set to be returned Comma separated float
numbers (one decimal)
Available only if extended version of the API is used'
required: false
schema:
type: string
time_port_VI06:
name: time_port
in: query
description: The median number of days spent at port by the selected market/shipclass. Values indicate in between set
to be returned Comma separated float numbers (one decimal) Available only if extended version
of the API is used
required: false
schema:
type: string
vessels_VI06:
name: vessels
in: query
description: Number of vessels that were used in the median calculations. Value of parameter indicates greater than
relation Available only if extended version of the API is used
required: false
schema:
type: integer
calls_VI06:
name: calls
in: query
description: Number of individual calls that were used in the median calculations (e.g. if the same vessel has called
twice within the same week, it will count twice in calls and once in vessels. Value of parameter indicates greater
than relation Available only if extended version of the API is used
required: false
schema:
type: integer
time_anch_stdev_VI06:
name: time_anch_stdev
in: query
description: The standard deviation of days spent at anchorage the previous week. Values indicate in between set to
be returned (time_anch_stdev:0.5,1.5) Comma separated float numbers (one decimal) Available
only if full version of the API is used
required: false
schema:
type: string
time_anch_diff_VI06:
name: time_anch_diff
in: query
description: The week-to-week difference of number of days spent at anchorage. Values indicate in between set to be
returned Comma separated float numbers (one decimal) Available only if full version of the
API is used
required: false
schema:
type: string
time_anch_diff_perc_VI06:
name: time_anch_diff_perc
in: query
description: The week-to-week difference of number of days spent at anchorage as a percentage. Values indicate in between
set to be returned Comma separated float numbers (one decimal) Available only if full version
of the API is used
required: false
schema:
type: string
time_port_stdev_VI06:
name: time_port_stdev
in: query
description: The standard deviation of days spent at port the previous week. Values indicate in between set to be returned
(time_port_stdev:0.5,1.5) Comma separated float numbers (one decimal) Available only if full
version of the API is used
required: false
schema:
type: string
time_port_diff_VI06:
name: time_port_diff
in: query
description: The week-to-week difference of number of days spent at port. Values indicate in between set to be returned
Comma separated float numbers (one decimal) Available only if full version of the API is used
required: false
schema:
type: string
time_port_diff_perc_VI06:
name: time_port_diff_perc
in: query
description: The week-to-week difference of number of days spent at port as a percentage. Values indicate in between
set to be returned Comma separated float numbers (one decimal) Available only if full version
of the API is used
required: false
schema:
type: string
mmsi_VI03:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track You can instead
use imo or shipid
required: true
schema:
type: integer
imo_VI03:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to track
required: false
schema:
type: integer
shipid_VI03:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel
required: false
schema:
type: integer
port_target_id_VI03:
name: port_target_id
in: query
description: The MarineTraffic ID of the port you wish to put as target port (found on the URL of the respective Port
page) or port UN/LOCODE
required: true
schema:
type: integer
includealternatives_VI03:
name: includealternatives
in: query
description: Use 1 to search for all available routes regarding the specific journey or 0 to not include alternative
routes
required: false
schema:
type: integer
includeinland_VI03:
name: includeinland
in: query
description: Use 1 in order to receive routes which include inland waterways or 0 to not include alternative routes
required: false
schema:
type: integer
msgtype_VI03:
name: msgtype
in: query
description: "Resolution of the response. Available values: If used\
\ with the value extended, the response includes also route/waypoints as Linestring Geometry in WKT - Well-Known\
\ Text"
required: false
schema:
type: string
default: simple
port_start_id_VI03:
name: port_start_id
in: query
description: The MarineTraffic ID of the port you wish to put as starting point (found on the URL of the respective
Port page) or port UN/LOCODE
required: true
schema:
type: integer
LAT_VI03:
name: LAT
in: query
description: The latitude of the starting point It can be used together with LON instead of port_start_id
required: false
schema:
type: number
LON_VI03:
name: LON
in: query
description: The longitude of the starting point It can be used together with LAT instead of port_start_id
required: false
schema:
type: integer
coordinates_GI01:
name: coordinates
in: query
description: A latitude/longitude pair that you wish to receive the MarineTraffic areas/assets that intersects with
required: true
schema:
type: string
radius_GI01:
name: radius
in: query
description: Maximum distance (in NM) from the given point that should be searched for nearby areas/assets
Cannot be greater than 10NM
required: false
schema:
type: number
exclude_ports_GI01:
name: exclude_ports
in: query
description: Flag that indicates if Ports information will be excluded from response in case given point intersects
with them (0:no, 1:yes)
required: false
schema:
type: integer
exclude_berths_GI01:
name: exclude_berths
in: query
description: Flag that indicates if Berths information will be excluded from response in case given point intersects
with them (0:no, 1:yes)
required: false
schema:
type: integer
exclude_terminals_GI01:
name: exclude_terminals
in: query
description: Flag that indicates if Terminals information will be excluded from response in case given point intersects
with them (0:no, 1:yes)
required: false
schema:
type: integer
exclude_standard_areas_GI01:
name: exclude_standard_areas
in: query
description: Flag that indicates if Standard Areas information will be excluded from response in case given point intersects
with them (0:no, 1:yes)
required: false
schema:
type: integer
exclude_custom_areas_GI01:
name: exclude_custom_areas
in: query
description: Flag that indicates if Custom Areas information will be excluded from response in case given point intersects
with them (0:no, 1:yes)
required: false
schema:
type: integer
mmsi_PU01:
name: mmsi
in: query
description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to handle, comma separated values supported
You can instead use imo or shipid
required: true
schema:
type: integer
imo_PU01:
name: imo
in: query
description: The International Maritime Organization (IMO) number of the vessel you wish to handle, comma separated
values supported
required: false
schema:
type: integer
shipid_PU01:
name: shipid
in: query
description: A uniquely assigned ID by MarineTraffic for the subject vessel, comma separated values supported
required: false
schema:
type: integer
fleet_id_PU01:
name: fleet_id
in: query
description: If used, vessel will be added to the specific fleet, otherwise default fleet is used
required: false
schema:
type: integer
active_PU01:
name: active
in: query
description: "Possible values are: \n - 0 to set to inactive
\n - 1 to activate
\n - 2 to enable\
\ satellite coverage
\n
"
required: false
schema:
type: integer
delete_PU01:
name: delete
in: query
description: Set this parameter to 1 to delete a vessel from your fleet
required: false
schema:
type: integer
v_PU02:
name: v
in: query
description: Version of the service to be executed. Use version 2 to get the latest
required: true
schema:
type: integer
default: 1
fleet_id_PU02:
name: fleet_id
in: query
description: If used, will return specific fleet otherwise default fleet is used
required: false
schema:
type: integer
page_PU02:
name: page
in: query
description: Specifies the number of the results page to return. Use this parameter to navigate through paginated results
(with version 2) when the fleet contains more than 100 vessels.
required: false
schema:
type: integer
fleet_id_PU05:
name: fleet_id
in: query
description: The fleet id you wish to clear
required: true
schema:
type: integer
content_type_pu06:
name: Content-Type
in: header
description: Request's Content-Type
required: true
schema:
type: string
default: multipart/form-data
schemas:
429_too_many_requests:
title: Too many requests
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: 1r
detail: TOO MANY REQUESTS
200_vd01_default:
title: Simple
type: array
items:
type: object
properties:
URL:
type: string
description: The URL of the photo.
example:
- URL: https://photos.marinetraffic.com/ais/showphoto.aspx?photoid=534918
400_vd01_missing_or_invalid_ship_identifier:
title: Missing or invalid ship identifier
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: '2'
detail: VESSEL MMSI OR IMO OR SHIPID MISSING
200_vd02_default:
title: Simple
type: array
items:
type: object
properties:
MMSI:
type: string
description: Maritime Mobile Service Identity - a nine-digit number sent in digital form over a radio frequency
that identifies the vessel's transmitter station
IMO:
type: string
description: International Maritime Organisation number - a seven-digit number that uniquely identifies vessels
ENI:
type: string
description: European Number of Identification - a unique eight-digit registration number for vessels capable
of navigating on inland European waters
NAME:
type: string
description: The Name of the subject vessel
BUILDER:
type: string
description: The Builder of the subject vessel
PLACE_OF_BUILD:
type: string
description: The place the subject vessel was built at
BUILD:
type: string
description: The year that the subject vessel was built
YARD_NUMBER:
type: string
description: The number assigned to the subject vessel from the Shipyard (prior to her commercial name)
BREADTH_EXTREME:
type: string
description: The extreme breadth (in metres) of the subject vessel
BREADTH_MOULDED:
type: string
description: The Moulded Breadth (in meters) of the subject vessel
DEPTH:
type: string
description: The Extreme Depth (in meters) of the subject vessel
SUMMER_DWT:
type: string
description: Deadweight - a measure (in metric tons) of how much weight a vessel can safely carry (excluding the
vessel's own weight)
DISPLACEMENT_SUMMER:
type: string
description: Displacement - a measure of the vessel's weight
CALLSIGN:
type: string
description: A uniquely designated identifier for the vessel's transmitter station
FLAG:
type: string
description: The flag of the subject vessel according to AIS transmissions - more
DRAUGHT:
type: string
description: The Maximum Draught (in metres) of the subject vessel
LENGHT_OVERALL:
type: string
description: The Overall Length (in metres) of the subject vessel
LENGTH_B_W_PERPENDICULARS:
type: string
description: The Length (in meters) measured between perpendiculars for the subject vessel
FUEL_CONSUMPTION:
type: string
description: The Fuel Consumption of the subject vessel
SPEED_MAX:
type: string
description: The Maximum Operational Speed of the subject vessel
SPEED_SERVICE:
type: string
description: The Speed that the vessel is designed to sail under certain conditions
TEU:
type: string
description: The Capacity of a containership measured in twenty-foot equivalent units (TEU)
GROSS_TONNAGE:
type: string
description: The Gross Tonnage of the subject vessel
NET_TONNAGE:
type: string
description: The Net Tonnage of the subject vessel
LIQUID_OIL:
type: string
description: The Capacity (in cubic metres) of the wet cargo the vessel can carry
LIQUID_GAS:
type: string
description: The Capacity (in cubic metres) of the gas cargo the vessel can carry
GRAIN:
type: string
description: The Capacity (in cubic metres) of the grain cargo the vessel can carry
OWNER:
type: string
description: The Owning Company of the subject vessel
MANAGER:
type: string
description: The Managing Company of the subject vessel
FINANCIAL_OWNER:
type: string
description: The Financial Owner of the subject vessel
TECHNICAL_MANAGER:
type: string
description: The Technical Manager of the subject vessel
INSURER:
type: string
description: The Insurer of the subject vessel
VESSEL_TYPE:
type: string
description: The specific type of the subject vessel
example:
- MMSI: '440389000'
IMO: '9360283'
ENI: null
NAME: DONGJIN AUBE
BUILDER: HAKATA SHIPBUILDING
PLACE_OF_BUILD: MATSUYAMA JAPAN
BUILD: '2005'
YARD_NUMBER: HN. 670
BREADTH_EXTREME: '25'
BREADTH_MOULDED: '25'
DEPTH: '13.7'
SUMMER_DWT: '15220'
DISPLACEMENT_SUMMER: null
CALLSIGN: D7OT
FLAG: KR
DRAUGHT: '8.97'
LENGTH_OVERALL: '147'
LENGTH_B_W_PERPENDICULARS: '135'
FUEL_CONSUMPTION: 36 t/day at 17.50 kn
SPEED_MAX: null
SPEED_SERVICE: '18'
TEU: '1060'
GROSS_TONNAGE: '12679'
NET_TONNAGE: '5614'
LIQUID_OIL: null
LIQUID_GAS: null
GRAIN: null
OWNER: DONG JIN SHIPPING CO LTD
MANAGER: DONG JIN SHIPPING CO LTD
FINANCIAL_OWNER: DONG JIN SHIPPING CO LTD
TECHNICAL_MANAGER: null
INSURER: JAPAN SHIP OWNERS P & I ASSOCIATION
VESSEL_TYPE: CONTAINER SHIP
200_vd02_extended:
title: Extended
type: array
items:
type: object
properties:
MMSI:
type: string
description: Maritime Mobile Service Identity - a nine-digit number sent in digital form over a radio frequency
that identifies the vessel's transmitter station
IMO:
type: string
description: International Maritime Organisation number - a seven-digit number that uniquely identifies vessels
ENI:
type: string
description: European Number of Identification - a unique eight-digit registration number for vessels capable
of navigating on inland European waters
NAME:
type: string
description: The Name of the subject vessel
BUILDER:
type: string
description: The Builder of the subject vessel
PLACE_OF_BUILD:
type: string
description: The place the subject vessel was built at
BUILD:
type: string
description: The year that the subject vessel was built
YARD_NUMBER:
type: string
description: The number assigned to the subject vessel from the Shipyard (prior to her commercial name)
BREADTH_EXTREME:
type: string
description: The extreme breadth (in metres) of the subject vessel
BREADTH_MOULDED:
type: string
description: The Moulded Breadth (in meters) of the subject vessel
DEPTH:
type: string
description: The Extreme Depth (in meters) of the subject vessel
SUMMER_DWT:
type: string
description: Deadweight - a measure (in metric tons) of how much weight a vessel can safely carry (excluding the
vessel's own weight)
DISPLACEMENT_SUMMER:
type: string
description: Displacement - a measure of the vessel's weight
CALLSIGN:
type: string
description: A uniquely designated identifier for the vessel's transmitter station
FLAG:
type: string
description: The flag of the subject vessel according to AIS transmissions - more
DRAUGHT:
type: string
description: The Maximum Draught (in metres) of the subject vessel
LENGHT_OVERALL:
type: string
description: The Overall Length (in metres) of the subject vessel
LENGTH_B_W_PERPENDICULARS:
type: string
description: The Length (in meters) measured between perpendiculars for the subject vessel
FUEL_CONSUMPTION:
type: string
description: The Fuel Consumption of the subject vessel
SPEED_MAX:
type: string
description: The Maximum Operational Speed of the subject vessel
SPEED_SERVICE:
type: string
description: The Speed that the vessel is designed to sail under certain conditions
TEU:
type: string
description: The Capacity of a containership measured in twenty-foot equivalent units (TEU)
GROSS_TONNAGE:
type: string
description: The Gross Tonnage of the subject vessel
NET_TONNAGE:
type: string
description: The Net Tonnage of the subject vessel
LIQUID_OIL:
type: string
description: The Capacity (in cubic metres) of the wet cargo the vessel can carry
LIQUID_GAS:
type: string
description: The Capacity (in cubic metres) of the gas cargo the vessel can carry
GRAIN:
type: string
description: The Capacity (in cubic metres) of the grain cargo the vessel can carry
OWNER:
type: string
description: The Owning Company of the subject vessel
MANAGER:
type: string
description: The Managing Company of the subject vessel
FINANCIAL_OWNER:
type: string
description: The Financial Owner of the subject vessel
TECHNICAL_MANAGER:
type: string
description: The Technical Manager of the subject vessel
INSURER:
type: string
description: The Insurer of the subject vessel
VESSEL_TYPE:
type: string
description: The specific type of the subject vessel
MANAGER_COUNTRY:
type: string
description: The Managing Company's Country
MANAGER_TOWN:
type: string
description: The Managing Company's Town
MANAGER_WEBSITE:
type: string
description: The Managing Company's Website
OWNER_COUNTRY:
type: string
description: The Owning Company's Country
OWNER_TOWN:
type: string
description: The Owning Company's Town
OWNER_WEBSITE:
type: string
description: The Owning Company's Website
ENGINE_BUILDER:
type: string
description: The builder of the main engine
ENGINE_CYLINDERS:
type: string
description: The number of main engine cylinders
ENGINE_POWER:
type: string
description: Power of main engine in kW
ENGINE_STROKE:
type: string
description: The space the piston travels from top to bottom in mm
ENGINE_NUMBER:
type: string
description: Number of main engines
ENGINE_TYPE:
type: string
description: The type of the main engine
ENGINE_RPM:
type: string
description: Revolutions per minute
CLASS_SOCIETY:
type: string
description: The Classification Society the vessel is registered in
HULL_MATERIAL:
type: string
description: The material the ship is made of
HULL_TYPE:
type: string
description: Defines whether a vessel is double, single hull etc.
DECKS_NUMBER:
type: string
description: Number of decks
PROPELLER:
type: string
description: Number of propellers
L_FORE:
type: string
description: The relative distance from the AIS station of the vessel to the foremost of it (front / bow). Contains
no decimals, always rounded.
W_LEFT:
type: string
description: The relative distance from the AIS station of the vessel to the leftmost of it (left side / port).
Contains no decimals, always rounded.
FINANCIAL_OWNER_COUNTRY:
type: string
description: The Financial Owner's country
TECHNICAL_MANAGER_COUNTRY:
type: string
description: The Technical Manager's country
example:
- MMSI: '440389000'
IMO: '9360283'
ENI: null
NAME: DONGJIN AUBE
BUILDER: HAKATA SHIPBUILDING
PLACE_OF_BUILD: MATSUYAMA JAPAN
BUILD: '2005'
YARD_NUMBER: HN. 670
BREADTH_EXTREME: '25'
BREADTH_MOULDED: '25'
DEPTH: '13.7'
SUMMER_DWT: '15220'
DISPLACEMENT_SUMMER: null
CALLSIGN: D7OT
FLAG: KR
DRAUGHT: '8.97'
LENGTH_OVERALL: '147'
LENGTH_B_W_PERPENDICULARS: '135'
FUEL_CONSUMPTION: 36 t/day at 17.50 kn
SPEED_MAX: null
SPEED_SERVICE: '18'
TEU: '1060'
GROSS_TONNAGE: '12679'
NET_TONNAGE: '5614'
LIQUID_OIL: null
LIQUID_GAS: null
GRAIN: null
OWNER: DONG JIN SHIPPING CO LTD
MANAGER: DONG JIN SHIPPING CO LTD
FINANCIAL_OWNER: DONG JIN SHIPPING CO LTD
TECHNICAL_MANAGER: null
INSURER: JAPAN SHIP OWNERS P & I ASSOCIATION
VESSEL_TYPE: CONTAINER SHIP
MANAGER_COUNTRY: SWITZERLAND
MANAGER_TOWN: null
MANAGER_WEBSITE: http://www.mscgva.ch
OWNER_COUNTRY: SWITZERLAND
OWNER_TOWN: null
OWNER_WEBSITE: http://www.mscgva.ch
ENGINE_BUILDER: MITSUI TAMANO ENGINEERING & SHIPBUILDING
ENGINE_CYLINDERS: '7'
ENGINE_POWER: '9988'
ENGINE_STROKE: '1910'
ENGINE_NUMBER: '1'
ENGINE_TYPE: DIESEL
ENGINE_RPM: '127'
CLASS_SOCIETY: KOREAN REGISTER OF SHIPPING
HULL_MATERIAL: STEEL
HULL_TYPE: SINGLE HULL
DECKS_NUMBER: '616'
PROPELLER: 1 FIXED PITCH
L_FORE: '132'
W_LEFT: '25'
FINANCIAL_OWNER_COUNTRY: null,
TECHNICAL_MANAGER_COUNTRY: CYPRUS
400_vd02_missing_or_invalid_ship_identifier:
title: Missing or invalid ship identifier
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: '2'
detail: VESSEL MMSI OR IMO OR SHIPID MISSING
200_vd03_default:
title: Simple
type: array
items:
type: object
properties:
SHIPNAME:
type: string
description: The Shipname of the subject vessel
MMSI:
type: string
description: Maritime Mobile Service Identity - a nine-digit number sent in digital form over a radio frequency
that identifies the vessel's transmitter station
IMO:
type: string
description: International Maritime Organisation number - a seven-digit number that uniquely identifies vessels
SHIP_ID:
type: string
description: A uniquely assigned ID by MarineTraffic for the subject vessel
CALLSIGN:
type: string
description: A uniquely designated identifier for the vessel's transmitter station
TYPE_NAME:
type: string
description: The Type of the subject vessel
DWT:
type: string
description: Deadweight - a measure (in metric tons) of how much weight a vessel can safely carry (excluding the
vessel's own weight)
FLAG:
type: string
description: The flag of the subject vessel according to AIS transmissions
COUNTRY:
type: string
description: The country of the subject vessel according to AIS transmissions
YEAR_BUILT:
type: string
description: The year that the subject vessel was built
MT_URL:
type: string
description: URL to the Details page of the subject vessel at MarineTraffic
example:
- SHIPNAME: THE QUEEN JACQUELINE
MMSI: '244740452'
IMO: '0'
SHIP_ID: '639'
CALLSIGN: PE6545
TYPE_NAME: Inland, Ferry
DWT: ''
FLAG: NL
COUNTRY: Netherlands
YEAR_BUILT: ''
MT_URL: http://www.marinetraffic.com/en/ais/details/ships/shipid:639/mmsi:244740452/vessel:639
- SHIPNAME: BACHATA QUEEN
MMSI: '229540000'
IMO: '0'
SHIP_ID: '2771'
CALLSIGN: 9HB3419
TYPE_NAME: Pleasure Craft
DWT: ''
FLAG: MT
COUNTRY: Malta
YEAR_BUILT: ''
MT_URL: http://www.marinetraffic.com/en/ais/details/ships/shipid:2771/mmsi:229540000/vessel:2771
400_vd03_missing_search_identifier:
title: Missing search identifier
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: '54'
detail: NO SEARCH TERM SUPPLIED
400_vd03_invalid_search_string_length:
title: Invalid search string length
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: '11'
detail: KEYWORD SHOULD BE AT LEAST 3 CHARACTERS
400_vd03_missing_search_term:
title: Missing search term
type: object
properties:
errors:
type: array
items:
type: object
properties:
code:
type: string
description: Error code
detail:
type: string
description: Error message
example:
errors:
- code: '54'
detail: NO SEARCH TERM SUPPLIED