openapi: 3.0.2 info: title: MarineTraffic Events AIS API Voyage Information API version: 1.0.0 description: Port calls, berth calls, and event timelines for single vessels and entire ports — surfacing every arrival, departure, and berth touch detected by the global AIS network. contact: name: MarineTraffic url: https://www.marinetraffic.com/ servers: - url: https://services.marinetraffic.com/api tags: - name: Voyage Information paths: '/voyageforecast/{api_key} ': get: tags: - Voyage Information summary: Single Vessel Voyage Forecast description: "Get voyage information for a single vessel.

Notes " operationId: voyageforecast_ parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/v_VI01' - $ref: '#/components/parameters/mmsi_VI01' - $ref: '#/components/parameters/imo_VI01' - $ref: '#/components/parameters/shipid_VI01' - $ref: '#/components/parameters/msgtype_VI01' - $ref: '#/components/parameters/protocol_new' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/200_vi01_default' - $ref: '#/components/schemas/200_vi01_extended' application/xml: schema: oneOf: - $ref: '#/components/schemas/200_vi01_default' - $ref: '#/components/schemas/200_vi01_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_vi01_missing_or_invalid_ship_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi01_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" /voyageforecast/{api_key}: get: tags: - Voyage Information summary: Fleet Voyage Forecast description: "Get voyage information for one for your MarineTraffic Fleets.

Notes " operationId: voyageforecast parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/v_VI01' - $ref: '#/components/parameters/fleet_id_VI01' - $ref: '#/components/parameters/msgtype_VI01' - $ref: '#/components/parameters/protocol_new' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/200_vi01_default' - $ref: '#/components/schemas/200_vi01_extended' application/xml: schema: oneOf: - $ref: '#/components/schemas/200_vi01_default' - $ref: '#/components/schemas/200_vi01_extended' examples: Default: summary: Simple value: "\n\n \n" Extended: summary: Extended value: "\n\n \n" '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/404_vi01_invalid_fleet_identifier' application/xml: schema: $ref: '#/components/schemas/404_vi01_invalid_fleet_identifier' examples: Invalid fleet identifier: summary: Invalid fleet 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" /predictive-destination-areas/{api_key}: get: tags: - Voyage Information summary: Single Vessel Predictive Destinations description: "Receive a prediction of the likely destination of a single vessel.

Notes " operationId: predictive-destination-areas parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/mmsi_VI04' - $ref: '#/components/parameters/imo_VI04' - $ref: '#/components/parameters/shipid_VI04' - $ref: '#/components/parameters/fromportid_VI04' - $ref: '#/components/parameters/protocol' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/200_vi04_default' application/xml: schema: $ref: '#/components/schemas/200_vi04_default' examples: Default: summary: Simple value: "\n\n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi04_missing_or_invalid_ship_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi04_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" '/predictive-destination-areas/{api_key} ': get: tags: - Voyage Information summary: Fleet Predictive Destinations description: "Receive a prediction of the likely destination for one of your MarineTraffic fleets.

Notes " operationId: predictive-destination-areas_ parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/fleet_id_VI04' - $ref: '#/components/parameters/fromportid_VI04' - $ref: '#/components/parameters/protocol' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/200_vi04_default' application/xml: schema: $ref: '#/components/schemas/200_vi04_default' examples: Default: summary: Simple value: "\n\n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi04_invalid_fleet_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi04_invalid_fleet_identifier' examples: Invalid fleet identifier: summary: Invalid fleet 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" /etatoport/{api_key}: get: tags: - Voyage Information summary: Vessel ETA to Port description: "Get ETA and voyage information for a vessel of your choice, to any port you define.

Notes " operationId: etatoport parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/v_VI07' - $ref: '#/components/parameters/portid_VI07' - $ref: '#/components/parameters/unlocode_VI07' - $ref: '#/components/parameters/mmsi_VI07' - $ref: '#/components/parameters/imo_VI07' - $ref: '#/components/parameters/shipid_VI07' - $ref: '#/components/parameters/speed_calc_VI07' - $ref: '#/components/parameters/msgtype_VI07' - $ref: '#/components/parameters/protocol' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/200_vi07_default' - $ref: '#/components/schemas/200_vi07_extended' application/xml: schema: oneOf: - $ref: '#/components/schemas/200_vi07_default' - $ref: '#/components/schemas/200_vi07_extended' examples: Default: summary: Simple value: "\n\n \n" Extended: summary: Extended value: "\n\n \n" '400': description: Bad Request content: application/json: schema: oneOf: - $ref: '#/components/schemas/400_vi07_missing_or_invalid_port_identifier' - $ref: '#/components/schemas/400_vi07_missing_or_invalid_ship_identifier' application/xml: schema: oneOf: - $ref: '#/components/schemas/400_vi07_missing_or_invalid_port_identifier' - $ref: '#/components/schemas/400_vi07_missing_or_invalid_ship_identifier' examples: Missing or invalid port identifier: summary: Missing or invalid port identifier value: "\n\n \n \n \n" 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" components: parameters: 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 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 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 shipid_VI01: name: shipid in: query description: A uniquely assigned ID by MarineTraffic for the subject vessel 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 protocol: name: protocol in: query description: "Response type. Use one of the following: