ShipFinder AIS Data API Prediction Dataset API

The Prediction Dataset API from ShipFinder AIS Data API — 3 operation(s) for prediction dataset.

OpenAPI Specification

shipfinder-ais-data-api-prediction-dataset-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ShipFinder Global Maritime Data Prediction Dataset API
  description: 'REST/HTTP API for global AIS vessel tracking and maritime intelligence, organised into seven datasets: AIS (real-time vessel positioning, search, nearby, in-zone, flag), Voyage (port information, berthed/anchored vessels, expected arrivals), History (position tracks, ship-to-ship events, port-call records), Prediction (point-to-point and port-to-port route planning, ETA), Meteorology (tropical cyclones, tide gauge stations, marine weather), China Region Coastline Warnings, and Event (monitored fleet management, geofences and speed-alert subscriptions that drive push streams). All requests carry the API key as the "key" query parameter; all responses are JSON with a {status, msg, data} envelope where status 0 means success.


    Assembled by API Evangelist from the per-endpoint OpenAPI 3.0.1 fragments ShipFinder publishes on docs.shipfinder.com. Operation content is the provider''s; API Evangelist added operationIds, servers, securitySchemes, dataset tags, externalDocs, and remapped the published "0" response key to "200" (see overlays/).'
  version: 1.0.0
  contact:
    name: ShipFinder Support
    email: support@elaneglobal.com
    url: https://www.shipfinder.com/help-center
  termsOfService: https://www.shipfinder.com/Home/TermsConditions
servers:
- url: https://api.elaneglobal.com
  description: Production
security:
- apiKeyQuery: []
tags:
- name: Prediction Dataset
paths:
  /v1/Prediction/ETA:
    get:
      summary: 4.3 ETA Query
      deprecated: false
      description: "## Description\nQuery the berthing information of the vessel at the departure port, the actual departure time, as well as the total voyage, the distance already traveled, and the Estimated Time of Arrival to the next destination port.\n\n## Use Case\n**Logistics Tracking**  \nQuery the berthing time and departure time of the vessel at the departure port, as well as the Estimated Time of Arrival at the destination port. By coordinating with vessel berthing records or vessel arrival and departure event notifications, it is possible to track the arrival and departure times, berthing terminal information, and sailing status of each voyage of the vessel.\n\n## Request Limits\nAn API key must be created before using this service. API calls are subject to quota restrictions according to your permission type. To view your current service access permissions, please contact our support team: support@elaneglobal.com. \n\n## Endpoint\n| Endpoint | HTTP Method |\n|----------|-------------|\n| `https://api.elaneglobal.com/v1/Prediction/ETA` | GET |\n\n## Example API Call\nhttps://api.elaneglobal.com/v1/Prediction/ETA?key=1F6D701272402D1E7D8D316CCE519123&mmsi=477172700&port_code=CNSHG&speed=20\n\n\n**Note:**  \nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of elaneglobal.com, bound to the domain api.elaneglobal.com. \nUsers are not authorized to use this key for data access—utilizing it will return a status code 14, indicating an error in the source domain.\nTo trial the service, please contact our support team: support@elaneglobal.com. "
      tags:
      - Prediction Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: mmsi
        in: query
        description: 9-digit numeric code of MMSI
        required: true
        example: 477172700
        schema:
          type: integer
      - name: port_code
        in: query
        description: 'Standard 5-digit port code.

          When this parameter is not specified, the endpoint defaults to the next destination port declared in the vessel’s AIS message.'
        required: false
        example: CNSHG
        schema:
          type: string
      - name: speed
        in: query
        description: 'Sustained speed for the subsequent voyage, unit: knots (kn).

          When this parameter is not specified, , ETA is calculated using the vessel’s average sailing speed over the latest month (the average excludes speed data recorded while the vessel was at anchor in port areas).'
        required: false
        example: 20
        schema:
          type: number
      responses:
        '200':
          description: Success. HTTP 200 with a JSON envelope whose "status" field is 0.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  msg:
                    type: string
                  data:
                    type: object
                    properties:
                      ship:
                        type: object
                        properties:
                          mmsi:
                            type: integer
                            description: 9-digit numeric code of MMSI
                          imo:
                            type: integer
                            description: 7-digit numeric code of IMO
                          ship_name:
                            type: string
                            description: Vessel name
                          call_sign:
                            type: string
                            description: 'Call Sign '
                          ship_type:
                            type: integer
                            description: 'Type of vessels: see Appendix for details. '
                        required:
                        - mmsi
                        - imo
                        - ship_name
                        - call_sign
                        - ship_type
                        x-apifox-orders:
                        - mmsi
                        - imo
                        - ship_name
                        - call_sign
                        - ship_type
                      location:
                        type: object
                        properties:
                          lng:
                            type: number
                            description: Longitude of the STS event position, under the WGS84 coordinate system
                          lat:
                            type: number
                            description: Latitude of the STS event position, under the WGS84 coordinate system
                          sea_area:
                            type: string
                            description: Name of the sea area
                          sea_area_code:
                            type: integer
                            description: Code of the sea area
                          sog:
                            type: integer
                            description: Real-time vessel speed over ground in knots; -1=invalid data
                        required:
                        - lng
                        - lat
                        - sog
                        - sea_area
                        - sea_area_code
                        x-apifox-orders:
                        - lng
                        - lat
                        - sog
                        - sea_area
                        - sea_area_code
                      preport:
                        type: object
                        properties:
                          port_code:
                            type: string
                            description: Standard 5-digit port code
                          port_cnname:
                            type: string
                            description: Chinese name of the port
                          port_name:
                            type: string
                            description: Name of the port
                          time_zone:
                            type: string
                            description: Time zone of the port’s location
                          port_country_code:
                            type: string
                            description: Standard code of the country/region where the port is located
                          port_country_name:
                            type: string
                            description: Name of the country/region where the port is located
                          port_country_cnname:
                            type: string
                            description: Chinese name of the country/region where the port is located
                          ata:
                            type: integer
                            description: Actual time of arrival at the port. Time zone varies based on the time_zone parameter.
                          atb:
                            type: integer
                            description: Actual time of berthing at the terminal. Time zone varies based on the time_zone parameter.
                          atd:
                            type: integer
                            description: Actual time of departure from the port. Time zone varies based on the time_zone parameter.
                        required:
                        - port_code
                        - port_cnname
                        - port_name
                        - time_zone
                        - port_country_code
                        - port_country_name
                        - port_country_cnname
                        - ata
                        - atb
                        - atd
                        x-apifox-orders:
                        - port_code
                        - port_cnname
                        - port_name
                        - time_zone
                        - port_country_code
                        - port_country_name
                        - port_country_cnname
                        - ata
                        - atb
                        - atd
                      nextport:
                        type: object
                        properties:
                          port_code:
                            type: string
                            description: Standard 5-digit port code
                          port_cnname:
                            type: string
                            description: Chinese name of the port
                          port_name:
                            type: string
                            description: Name of the port
                          time_zone:
                            type: integer
                            description: Time zone of the port’s location
                          port_country_code:
                            type: string
                            description: Standard code of the country/region where the port is located
                          port_country_name:
                            type: string
                            description: Name of the country/region where the port is located
                          port_country_cnname:
                            type: string
                            description: Chinese name of the country/region where the port is located
                          sailed_distance:
                            type: number
                            description: 'Distance already covered on the voyage. Unit: nautical miles (NM)'
                          sailed_time:
                            type: number
                            description: 'Elapsed sailing time for the voyage. Unit: hours'
                          ais_speed:
                            type: number
                            description: 'Average speed derived from AIS data. Unit: knots (kn)'
                          speed:
                            type: number
                            description: 'Average speed used for ETA computation.

                              If a value is provided for the speed request parameter, ETA is calculated using the input value; otherwise, the historical average speed from AIS is applied.

                              Unit: knots (kn)'
                          remaining_distance:
                            type: number
                            description: 'Estimated remaining voyage distance. Unit: nautical miles (NM).'
                          eta:
                            type: integer
                            description: Estimated Time of Arrival in Unix timestamp
                        required:
                        - port_code
                        - port_cnname
                        - port_name
                        - time_zone
                        - port_country_code
                        - port_country_name
                        - port_country_cnname
                        - sailed_distance
                        - sailed_time
                        - ais_speed
                        - speed
                        - eta
                        - remaining_distance
                        x-apifox-orders:
                        - port_code
                        - port_cnname
                        - port_name
                        - time_zone
                        - port_country_code
                        - port_country_name
                        - port_country_cnname
                        - sailed_distance
                        - sailed_time
                        - ais_speed
                        - speed
                        - eta
                        - remaining_distance
                    required:
                    - ship
                    - location
                    - preport
                    - nextport
                    x-apifox-orders:
                    - ship
                    - location
                    - preport
                    - nextport
                required:
                - status
                - msg
                - data
                x-apifox-orders:
                - status
                - msg
                - data
              example:
                status: 0
                msg: ''
                data:
                  ship:
                    mmsi: 477172700
                    imo: 9783538
                    ship_name: COSCO SHIPPING LIBRA
                    call_sign: VRRV4
                    ship_type: 71
                  location:
                    lng: 54.659382
                    lat: 24.813853
                    sog: 0
                    sea_area: Persian Gulf
                    sea_area_code: 4266
                  preport:
                    port_code: AEKHL
                    port_cnname: 哈里发港
                    port_name: Khalifa Port
                    time_zone: 4
                    port_country_code: AE
                    port_country_name: United Arab Emirates
                    port_country_cnname: 阿联酋
                    ata: 1746707992
                    atb: 1746716722
                    atd: 0
                  nextport:
                    port_code: CNSHG
                    port_cnname: 上海
                    port_name: Shanghai
                    time_zone: 8
                    port_country_code: CN
                    port_country_name: China
                    port_country_cnname: 中国
                    sailed_distance: 0
                    sailed_time: 0
                    ais_speed: 7.67
                    speed: 20
                    eta: 1747770560
                    remaining_distance: 5608.53
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 4 Prediction Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-431244206-run
      operationId: getETA
      externalDocs:
        description: 4.3 ETA Query
        url: https://docs.shipfinder.com/431244206e0
  /v1/Prediction/RoutePlanPointToPoint:
    get:
      summary: 4.1 Point-to-Point Route Planning
      deprecated: false
      description: "# 4.1 Point-to-Point Route Planning\n\n## Description\nThe Point-to-Point Route Planning queries the route plan between two coordinate waypoints, or from a departure waypoint to a destination port. Returns the total nautical distance of the route and the latitude/longitude coordinates of all waypoints along the route.\n\n## Use Cases\n1. **Logistics Tracking**  \n   Save the planned fixed route and match it against the vessel’s real-time position to monitor whether the vessel sails in compliance with the predefined route. Route deviation alerts can be triggered by calculating the distance between the vessel’s real-time position and the planned path. You may also overlay historical vessel tracks with the planned route to visualize and compare discrepancies between the actual voyage track and the planned path.\n\n2. **Navigation Guidance**  \n   During vessel transit, retrieve the recommended sailing route in real time based on the vessel’s current position and destination port. The route can be combined with meteorological data for adverse weather avoidance, or used to plot simulated future sailing routes on electronic charts.\n\n## Request Limits\nAn API key must be created before using this service. API calls are subject to quota restrictions according to your permission type. To view your current service access permissions, please contact our support team: support@elaneglobal.com. \n\n## Endpoint\n| Endpoint | HTTP Method |\n| --- | --- |\n| `https://api.elaneglobal.com/v1/Prediction/RoutePlanPointToPoint`  | GET |\n\n## Example API Call\nhttps://api.elaneglobal.com/v1/Prediction/RoutePlanPointToPoint?key=1F6D701272402D1E7D8D316CCE519123&start_point=113.571144,22.844316&end_point=121.58414,31.37979\n\nhttps://api.elaneglobal.com/v1/Prediction/RoutePlanPointToPoint?key=1F6D701272402D1E7D8D316CCE519123&start_point=113.571144,22.844316&end_port_code=CNQDG\n\n**Note:**  \nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of elaneglobal.com, bound to the domain api.elaneglobal.com. \nUsers are not authorized to use this key for data access—utilizing it will return a status code 14, indicating an error in the source domain.\nTo trial the service, please contact our support team: support@elaneglobal.com. "
      tags:
      - Prediction Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: start_point
        in: query
        description: Departure position, formatted as lng,lat (longitude first, latitude second), separated by an English comma.
        required: true
        example: 113.571144,22.844316
        schema:
          type: string
      - name: end_point
        in: query
        description: 'Destination position, formatted as lng,lat (longitude first, latitude second), separated by an English comma.

          Note: Mutually exclusive with end_port_code; one field is mandatory.

          If both fields are populated, route planning will be calculated based on end_port_code.'
        required: true
        example: 121.58414,31.37979
        schema:
          type: string
      - name: end_port_code
        in: query
        description: Standard 5-digit port code of the destination port.
        required: false
        schema:
          type: string
      - name: avoid
        in: query
        description: 'Waypoint IDs to be avoided; see Appendix for details

          Use commas to separate multiple IDs; leave blank for no avoidance.

          Maximum 10 avoidance waypoints per request.'
        required: false
        schema:
          type: string
      - name: through
        in: query
        description: 'Required waypoints along the route, formatted as lng,lat-lng,lat; use hyphens (-) to separate multiple waypoints.

          Leave blank if no mandatory waypoints are needed.

          Maximum 30 mandatory waypoints per request.'
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: Success. HTTP 200 with a JSON envelope whose "status" field is 0.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  msg:
                    type: string
                  data:
                    type: object
                    properties:
                      distance:
                        type: number
                        description: Total distance of the planned route in nautical miles (NM).
                      route:
                        type: array
                        items:
                          type: object
                          properties:
                            lng:
                              type: number
                              description: Waypoint longitude, WGS84 coordinate system
                            lat:
                              type: number
                              description: Waypoint latitude, WGS84 coordinate system
                          required:
                          - lng
                          - lat
                          x-apifox-orders:
                          - lng
                          - lat
                        description: Route Details
                    required:
                    - distance
                    - route
                    x-apifox-orders:
                    - distance
                    - route
                required:
                - status
                - msg
                - data
                x-apifox-orders:
                - status
                - msg
                - data
              example:
                status: 0
                msg: ''
                data:
                  distance: 915.22
                  route:
                  - lng: 113.571144
                    lat: 22.844316
                  - lng: 113.56867
                    lat: 22.82417
                  - lng: 113.59017
                    lat: 22.81067
                  - lng: 113.6135
                    lat: 22.78583
                  - lng: 113.66833
                    lat: 22.69617
                  - lng: 113.68733
                    lat: 22.64817
                  - lng: 113.80333
                    lat: 22.52833
                  - lng: 114
                    lat: 22
                  - lng: 116
                    lat: 22
                  - lng: 117
                    lat: 22.5
                  - lng: 122.5
                    lat: 28
                  - lng: 123
                    lat: 29
                  - lng: 123
                    lat: 30
                  - lng: 122.5
                    lat: 30.5
                  - lng: 122.064
                    lat: 31.1225
                  - lng: 121.87067
                    lat: 31.17867
                  - lng: 121.73775
                    lat: 31.28425
                  - lng: 121.58414
                    lat: 31.37979
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 4 Prediction Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-431124483-run
      operationId: getRoutePlanPointToPoint
      externalDocs:
        description: 4.1 Point-to-Point Route Planning
        url: https://docs.shipfinder.com/431124483e0
  /v1/Prediction/RoutePlanPortToPort:
    get:
      summary: 4.2 Port-to-Port Route Planning
      deprecated: false
      description: "## Description\nThe Port-to-Port Route Planning queries the route plan between two ports, and obtain the total mileage of the route as well as the latitude and longitude coordinates of the points the route passes through.\n\n## Use Case\n**Logistics Tracking**  \nSave the planned fixed route and match it against the vessel’s real-time position to monitor whether the vessel sails in compliance with the predefined route. Route deviation alerts can be triggered by calculating the distance between the vessel’s real-time position and the planned path. You may also overlay historical vessel tracks with the planned route for visualization, and compare discrepancies between the actual voyage track and the planned path.\n\n## Request Limits\nAn API key must be created before using this service. API calls are subject to quota restrictions according to your permission type. To view your current service access permissions, please contact our support team: support@elaneglobal.com. \n\n## Endpoint\n| Endpoint | HTTP Method |\n|----------|-------------|\n| `https://api.elaneglobal.com/v1/Prediction/RoutePlanPortToPort`  | Get |\n\n## Example API Call\nhttps://api.elaneglobal.com/v1/Prediction/RoutePlanPortToPort?key=1F6D701272402D1E7D8D316CCE519123&start_port_code=CNGZG&end_port_code=CNSHG&avoid=11\n\n**Note:**  \nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of elaneglobal.com, bound to the domain api.elaneglobal.com. \nUsers are not authorized to use this key for data access—utilizing it will return a status code 14, indicating an error in the source domain.\nTo trial the service, please contact our support team: support@elaneglobal.com. "
      tags:
      - Prediction Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: start_port_code
        in: query
        description: Standard 5-digit port code of the departure port.
        required: true
        example: CNGZG
        schema:
          type: string
      - name: end_port_code
        in: query
        description: Standard 5-digit port code of the arrival port.
        required: true
        example: CNSHG
        schema:
          type: string
      - name: avoid
        in: query
        description: 'Waypoint IDs to be avoided; see Appendix for details

          Use commas to separate multiple IDs; leave blank for no avoidance.

          Maximum 10 avoidance waypoints per request.'
        required: false
        example: '11'
        schema:
          type: string
      - name: through
        in: query
        description: 'Required waypoints along the route, formatted as lng,lat-lng,lat; use hyphens (-) to separate multiple waypoints.

          Leave blank if no mandatory waypoints are needed.

          Maximum 30 mandatory waypoints per request.'
        required: false
        example: 0
        schema:
          type: integer
      responses:
        '200':
          description: Success. HTTP 200 with a JSON envelope whose "status" field is 0.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                  msg:
                    type: string
                  data:
                    type: object
                    properties:
                      distance:
                        type: number
                        description: Total distance of the planned route in nautical miles (NM).
                      route:
                        type: array
                        items:
                          type: object
                          properties:
                            lng:
                              type: number
                              description: Waypoint longitude, WGS84 coordinate system
                            lat:
                              type: number
                              description: Waypoint latitude, WGS84 coordinate system
                          required:
                          - lng
                          - lat
                          x-apifox-orders:
                          - lng
                          - lat
                        description: Route Details
                    required:
                    - distance
                    - route
                    x-apifox-orders:
                    - distance
                    - route
                required:
                - status
                - msg
                - data
                x-apifox-orders:
                - status
                - msg
                - data
              example:
                status: 0
                msg: ''
                data:
                  distance: 915.22
                  route:
                  - lng: 113.571144
                    lat: 22.844316
                  - lng: 113.56867
                    lat: 22.82417
                  - lng: 113.59017
                    lat: 22.81067
                  - lng: 113.6135
                    lat: 22.78583
                  - lng: 113.66833
                    lat: 22.69617
                  - lng: 113.68733
                    lat: 22.64817
                  - lng: 113.80333
                    lat: 22.52833
                  - lng: 114
                    lat: 22
                  - lng: 116
                    lat: 22
                  - lng: 117
                    lat: 22.5
                  - lng: 122.5
                    lat: 28
                  - lng: 123
                    lat: 29
                  - lng: 123
                    lat: 30
                  - lng: 122.5
                    lat: 30.5
                  - lng: 122.064
                    lat: 31.1225
                  - lng: 121.87067
                    lat: 31.17867
                  - lng: 121.73775
                    lat: 31.28425
                  - lng: 121.58414
                    lat: 31.37979
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 4 Prediction Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-431244012-run
      operationId: getRoutePlanPortToPort
      externalDocs:
        description: 4.2 Port-to-Port Route Planning
        url: https://docs.shipfinder.com/431244012e0
components:
  securitySchemes:
    apiKeyQuery:
      type: apiKey
      in: query
      name: key
      description: ShipFinder API key, created in the console at https://open.shipfinder.com/v1/console/overview. Starter (trial) keys are self-service; Custom (production) keys require per-service enablement by the ShipFinder business team. Keys may be bound to a domain (return code 14 = request from unbound domain).
externalDocs:
  description: Global Maritime Data API Documentation
  url: https://docs.shipfinder.com/
x-evidence:
  harvested: '2026-08-09'
  method: searched
  index: https://docs.shipfinder.com/llms.txt
  operations: 40
  note: Path/operation content verbatim from provider-published fragments; see -openapi-original.yml.