openapi: 3.0.2 info: title: MarineTraffic Ports Information API version: 1.0.0 description: Expected port arrivals, predictive arrivals, and port congestion intelligence powered by live AIS, port-call history, and predictive routing. contact: name: MarineTraffic url: https://www.marinetraffic.com/ servers: - url: https://services.marinetraffic.com/api tags: - name: Ports Information paths: /expectedarrivals/{api_key}: get: tags: - Ports Information summary: Expected Port Arrivals description: "Get expected arrivals to a specific port.

Notes " operationId: expectedarrivals parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/v_VI02' - $ref: '#/components/parameters/portid_VI02' - $ref: '#/components/parameters/timespan_VI02' - $ref: '#/components/parameters/days_last_signal_VI02' - $ref: '#/components/parameters/fromdate_VI02' - $ref: '#/components/parameters/todate_VI02' - $ref: '#/components/parameters/fromportid_VI02' - $ref: '#/components/parameters/shiptype_VI02' - $ref: '#/components/parameters/dwt_min_VI02' - $ref: '#/components/parameters/dwt_max_VI02' - $ref: '#/components/parameters/gt_min_VI02' - $ref: '#/components/parameters/gt_max_VI02' - $ref: '#/components/parameters/msgtype_VI02' - $ref: '#/components/parameters/protocol_new' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/200_vi02_default' - $ref: '#/components/schemas/200_vi02_extended' application/xml: schema: oneOf: - $ref: '#/components/schemas/200_vi02_default' - $ref: '#/components/schemas/200_vi02_extended' examples: Default: summary: Simple value: "\n\n \n \ \ \n \ \ \n \n \n" Extended: summary: Extended value: "\n\n \n \n \n \n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi02_missing_or_invalid_port_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi02_missing_or_invalid_port_identifier' examples: Missing or invalid port identifier: summary: Missing or invalid port 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" '/expectedarrivals/{api_key} ': get: tags: - Ports Information summary: Expected Country Arrivals description: "Get expected arrivals to a specific country.

Notes " operationId: expectedarrivals_ parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/v_VI02' - $ref: '#/components/parameters/country_VI02' - $ref: '#/components/parameters/timespan_VI02' - $ref: '#/components/parameters/days_last_signal_VI02' - $ref: '#/components/parameters/fromdate_VI02' - $ref: '#/components/parameters/todate_VI02' - $ref: '#/components/parameters/fromportid_VI02' - $ref: '#/components/parameters/shiptype_VI02' - $ref: '#/components/parameters/dwt_min_VI02' - $ref: '#/components/parameters/dwt_max_VI02' - $ref: '#/components/parameters/gt_min_VI02' - $ref: '#/components/parameters/gt_max_VI02' - $ref: '#/components/parameters/msgtype_VI02' - $ref: '#/components/parameters/protocol_new' responses: '200': description: Successful Response content: application/json: schema: oneOf: - $ref: '#/components/schemas/200_vi02_default' - $ref: '#/components/schemas/200_vi02_extended' application/xml: schema: oneOf: - $ref: '#/components/schemas/200_vi02_default' - $ref: '#/components/schemas/200_vi02_extended' examples: Default: summary: Simple value: "\n\n \n \n \n \n \n" Extended: summary: Extended value: "\n\n \n \n \n \n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi02_missing_or_invalid_port_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi02_missing_or_invalid_port_identifier' examples: Missing or invalid port identifier: summary: Missing or invalid port 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-arrivals/{api_key}: get: tags: - Ports Information summary: Predictive Port Arrivals description: "Receive a prediction of the vessels likely to arrive to a specific port.

Notes " operationId: predictive-arrivals parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/portid_VI05' - $ref: '#/components/parameters/market_VI05' - $ref: '#/components/parameters/shipclass_VI05' - $ref: '#/components/parameters/probability_VI05' - $ref: '#/components/parameters/protocol' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/200_vi05_default' application/xml: schema: $ref: '#/components/schemas/200_vi05_default' examples: Default: summary: Simple value: "\n\n \n \n \n \n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi05_missing_or_invalid_port_identifier' application/xml: schema: $ref: '#/components/schemas/400_vi05_missing_or_invalid_port_identifier' examples: Missing or invalid port identifier: summary: Missing or invalid port 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" /port-congestion/{api_key}: get: tags: - Ports Information summary: Port Congestion description: "Receive the Port Congestion for a specific period of time.

Notes " operationId: port-congestion parameters: - $ref: '#/components/parameters/api_key' - $ref: '#/components/parameters/portid_VI06' - $ref: '#/components/parameters/year_VI06' - $ref: '#/components/parameters/week_VI06' - $ref: '#/components/parameters/market_VI06' - $ref: '#/components/parameters/shipclass_VI06' - $ref: '#/components/parameters/agg_port_VI06' - $ref: '#/components/parameters/agg_market_VI06' - $ref: '#/components/parameters/agg_shipclass_VI06' - $ref: '#/components/parameters/time_anch_VI06' - $ref: '#/components/parameters/time_port_VI06' - $ref: '#/components/parameters/vessels_VI06' - $ref: '#/components/parameters/calls_VI06' - $ref: '#/components/parameters/time_anch_stdev_VI06' - $ref: '#/components/parameters/time_anch_diff_VI06' - $ref: '#/components/parameters/time_anch_diff_perc_VI06' - $ref: '#/components/parameters/time_port_stdev_VI06' - $ref: '#/components/parameters/time_port_diff_VI06' - $ref: '#/components/parameters/time_port_diff_perc_VI06' - $ref: '#/components/parameters/protocol' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/200_vi06_default' application/xml: schema: $ref: '#/components/schemas/200_vi06_default' examples: Default: summary: Simple value: "\n\n \n" '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/400_vi06_mandatory_field_missing' application/xml: schema: $ref: '#/components/schemas/400_vi06_mandatory_field_missing' examples: Mandatory field missing: summary: Mandatory field missing 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: