ShipFinder AIS Data API Voyage Dataset API

The Voyage Dataset API from ShipFinder AIS Data API — 4 operation(s) for voyage dataset.

OpenAPI Specification

shipfinder-ais-data-api-voyage-dataset-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ShipFinder Global Maritime Data Voyage 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: Voyage Dataset
paths:
  /v1/Voyage/PortAnchoredVessels:
    get:
      summary: 2.3 Currently Anchored Vessels
      deprecated: false
      description: "## Description\n\nThe Currently Anchored Vessels retrieves information of all vessels currently at the port anchorage using the port’s five-digit port code. Returned data includes the total count of vessels waiting at the port anchorage, vessel type, basic vessel details, port arrival time and vessel dwell time.\n\n## Use Cases\n\n1. Analyze the average patterns of vessel operation duration based on the dwell time of different vessel types in the returned dataset.\n2. For logistic operations, filter vessels by type from the list of currently berthed vessels to identify suitable carriers for cargo transportation.\n3. For vessel bunkering and marine equipment upgrade scenarios, obtain the list of in-port vessels first, then query vessel profiles to check equipment and other details, so as to identify targets eligible for bunkering services or equipment upgrade recommendations.\n\n## Request Limits\n\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/Voyage/PortAnchoredVessels` | GET |\n\n## Example API Call\n\nhttps://api.elaneglobal.com/v1/Voyage/PortAnchoredVessels?key=1F6D701272402D1E7D8D316CCE519123&port_code=CNSHG\n\n**Note:**  \n\nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of Shipfinder.com, bound to the domain api.shipfinder.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 create your own key in the Dashboard.\n"
      tags:
      - Voyage Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: port_code
        in: query
        description: Standard five-digit port code
        required: true
        example: CNSHG
        schema:
          type: string
      - name: ship_type
        in: query
        description: 'Filter the type of vessels: see Appendix for details. All vessels will be returned if this parameter is not specified.'
        required: false
        schema:
          type: integer
      - name: search_type
        in: query
        description: 'Query filtering type:

          1=Exclude vessels that have not reported AIS data for an extended period; 0=Return all vessels.

          Note: Vessels with modified MMSI numbers may show as staying within the port boundary for a prolonged duration. This parameter can be used to filter out such vessels.'
        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
                    description: API call status code,0 means success
                  msg:
                    type: string
                    description: Exception prompt message
                  total:
                    type: integer
                    description: Total number of vessels currently berthed at the port
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        mmsi:
                          type: integer
                          description: 9-digit numeric code of MMSI
                        imo:
                          type: integer
                          description: 7-digit numeric code of IMO
                        call_sign:
                          type: string
                          description: 'Call Sign '
                        ship_name:
                          type: string
                          description: Vessel name
                        ship_type:
                          type: integer
                          description: 'Numeric code of vessel type: see Appendix for details '
                        length:
                          type: number
                          description: 'Ship length, meters, range (0 - 1022) '
                        width:
                          type: number
                          description: 'Vessel length in meters, valid value range: 0–1022'
                        left:
                          type: number
                          description: Vessel breadth in meters (nautical standard term)
                        trail:
                          type: number
                          description: Port distance in meters
                        draught:
                          type: number
                          description: Stern Distance in meters
                        stay_time:
                          type: number
                          description: Continuous dwell time of the vessel at the current port, measured in minutes.
                        arrival_time:
                          type: integer
                          description: Vessel arrival time in Unix timestamp
                      required:
                      - mmsi
                      - imo
                      - call_sign
                      - ship_name
                      - ship_type
                      - length
                      - width
                      - left
                      - trail
                      - draught
                      - arrival_time
                      - stay_time
                      x-apifox-orders:
                      - mmsi
                      - imo
                      - call_sign
                      - ship_name
                      - ship_type
                      - length
                      - width
                      - left
                      - trail
                      - draught
                      - arrival_time
                      - stay_time
                required:
                - status
                - msg
                - total
                - data
                x-apifox-orders:
                - status
                - msg
                - total
                - data
              example: "{\n    \"status\": 0,\n    \"msg\": \"\",\n    \"total\": 241,\n    \"data\": [\n        {\n            \"mmsi\": 413611860,\n            \"imo\": 1400704,\n            \"call_sign\": \"\",\n            \"ship_name\": \"QIANKUN02\",\n            \"ship_type\": 79,\n            \"length\": 102.0,\n            \"width\": 18.0,\n            \"left\": 9.0,\n            \"trail\": 90.0,\n            \"draught\": 4.1,\n            \"arrival_time\": \"1753237238\",\n            \"stay_time\": 34.6\n        },\n        {\n            \"mmsi\": 413720847,\n            \"imo\": 0,\n            \"call_sign\": \"NZEXVC\",\n            \"ship_name\": \"WANXUANCHENGHT9678\",\n            \"ship_type\": 0,\n            \"length\": 883.0,\n            \"width\": 32.0,\n            \"left\": 32.0,\n            \"trail\": 387.0,\n            \"draught\": 0.0,\n            \"arrival_time\": \"1753080812\",\n            \"stay_time\": 2641.7\n        },\n        ......\n    ]\n}"
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 2 Voyage Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-430236145-run
      operationId: getPortAnchoredVessels
      externalDocs:
        description: 2.3 Currently Anchored Vessels
        url: https://docs.shipfinder.com/430236145e0
  /v1/Voyage/PortBerthedVessels:
    get:
      summary: 2.2 Currently Berthed Vessels
      deprecated: false
      description: "## Description\n\nThe Currently Berthed Vessels retrieves information on all vessels currently berthed at a target port using the port’s five-digit port code. Returned data includes the total count of berthed vessels, vessel type, basic vessel details, port arrival time, and vessel dwell time.\n\n## Use Cases\n\n1. Analyze the average patterns of vessel operation duration based on the dwell time of different vessel types in the returned dataset.\n2. For logistic operations, filter vessels by type from the list of currently berthed vessels to identify suitable carriers for cargo transportation.\n3. For vessel bunkering and marine equipment upgrade scenarios, obtain the list of in-port vessels first, then query vessel profiles to check equipment and other details, so as to identify targets eligible for bunkering services or equipment upgrade recommendations.\n\n## Request Limits\n\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/Voyage/PortBerthedVessels` | GET |\n\n## Example API Call\nhttps://api.elaneglobal.com/v1/Voyage/PortBerthedVessels?key=1F6D701272402D1E7D8D316CCE519123&port_code=CNSHG\n\n\n**Note:**  \nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of Shipfinder.com, bound to the domain api.shipfinder.com. Users 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. To trial the service, please create your own key in the Dashboard.\n"
      tags:
      - Voyage Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: port_code
        in: query
        description: Standard five-digit port code
        required: true
        example: CNSHG
        schema:
          type: string
      - name: ship_type
        in: query
        description: 'Filter the type of vessels: see Appendix for details. All vessels will be returned if this parameter is not specified.'
        required: false
        schema:
          type: integer
      - name: search_type
        in: query
        description: 'Query filtering type:

          1=Exclude vessels that have not reported AIS data for an extended period; 0=Return all vessels.

          Note: Vessels with modified MMSI numbers may show as staying within the port boundary for a prolonged duration. This parameter can be used to filter out such vessels.'
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: integer
                    description: API call status code,0 means success
                  msg:
                    type: string
                    description: Exception prompt message
                  total:
                    type: integer
                    description: Total number of vessels currently berthed at the port
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        mmsi:
                          type: integer
                          description: 9-digit numeric code of MMSI
                        imo:
                          type: integer
                          description: 7-digit numeric code of IMO
                        call_sign:
                          type: string
                          description: 'Call Sign '
                        ship_name:
                          type: string
                          description: Vessel name
                        ship_type:
                          type: number
                          description: 'Numeric code of vessel type: see Appendix for details '
                        length:
                          type: number
                          description: 'Ship length, meters, range (0 - 1022) '
                        width:
                          type: number
                          description: 'Vessel length in meters, valid value range: 0–1022'
                        left:
                          type: number
                          description: Vessel breadth in meters (nautical standard term)
                        trail:
                          type: number
                          description: Port distance in meters
                        draught:
                          type: number
                          description: Stern Distance in meters
                        stay_time:
                          type: number
                          description: Continuous dwell time of the vessel at the current port, measured in minutes
                        arrival_time:
                          type: integer
                          description: 'Vessel arrival time. Format: YYYY-MM-DD HH:MM:SS, UTC'
                      required:
                      - mmsi
                      - imo
                      - call_sign
                      - ship_name
                      - ship_type
                      - length
                      - width
                      - left
                      - trail
                      - draught
                      - arrival_time
                      - stay_time
                      x-apifox-orders:
                      - mmsi
                      - imo
                      - call_sign
                      - ship_name
                      - ship_type
                      - length
                      - width
                      - left
                      - trail
                      - draught
                      - arrival_time
                      - stay_time
                required:
                - status
                - msg
                - total
                - data
                x-apifox-orders:
                - status
                - msg
                - total
                - data
              example: "{\n  \"status\": 0,\n  \"msg\": \"\",\n  \"total\": 713,\n  \"data\": [\n    {\n      \"mmsi\": 100900006,\n      \"imo\": 0,\n      \"call_sign\": \"YYYY\",\n      \"ship_name\": \"AISTESTSHIP\",\n      \"ship_type\": 70,\n      \"length\": 50,\n      \"width\": 6,\n      \"left\": 5,\n      \"trail\": 10,\n      \"draught\": 0,\n      \"arrival_time\": \"1746484554\",\n      \"stay_time\": 2166.2\n    },\n    {\n      \"mmsi\": 100900100,\n      \"imo\": 0,\n      \"call_sign\": \"YYYY\",\n      \"ship_name\": \"AISTESTSHIP\",\n      \"ship_type\": 70,\n      \"length\": 50,\n      \"width\": 6,\n      \"left\": 5,\n      \"trail\": 10,\n      \"draught\": 0,\n      \"arrival_time\": \"1746609269\",\n      \"stay_time\": 87.7\n    },\n    ........\n  ]\n}"
          headers: {}
          x-apifox-name: 成功
      security:
      - apiKeyQuery: []
      x-apifox-folder: 2 Voyage Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-430197412-run
      operationId: getPortBerthedVessels
      externalDocs:
        description: 2.2 Currently Berthed Vessels
        url: https://docs.shipfinder.com/430197412e0
  /v1/Voyage/PortExpectedArrivals:
    get:
      summary: 2.4 Inbound / Expected Arrivals
      deprecated: false
      description: "## Description\nThe Inbound/Expected Arrivals retrieves the list and detailed information of vessels expected to arrive at a target port within a specified future time period, using the port’s five-digit port code and the query time period.\n\n## Use Cases\n1. **Maritime Supervision**  \n   Filter vessels by type and flag state based on the inbound vessel schedule for a specified future period. It allows advance allocation of customs or border inspection resources, and supports risk vessel analysis by combining historical abnormal AIS events, vessel alongside records and other relevant information.\n\n2. **Logistics Vessel Sourcing**  \n   Filter the list of inbound cargo vessels at ports near the shipping warehouse, and launch cargo booking solicitations by referring to the operating company information in vessel profiles or the vessel contact list maintained in the corporate shipping capacity pool.\n\n3. **Maritime Traffic Analysis**  \n   Analyze port carrying capacity and the attribute profiles of all inbound vessels scheduled to arrive at the port.\n\n## Request Limits\nThis is a premium service that requires advanced permission application prior to use.\nAn API key must be created before using this service. \nService calls are subject to quota restrictions according to your permission type.To view your current service access permissions or activate service permissions, please contact our support team: support@elaneglobal.com. \n\n## Endpoint\n| Endpoint | HTTP Method |\n|----------|-------------|\n|  `https://api.elaneglobal.com/v1/Voyage/PortExpectedArrivals` | Get |\n\n## Example API Call\nhttps://api.elaneglobal.com/v1/Voyage/PortExpectedArrivals?key=1F6D701272402D1E7D8D316CCE519123&port_code=CNSHG&start_time=1746612218&end_time=1747044218&ship_type=0\n\n**Note:**  \nThe key `1F6D701272402D1E7D8D316CCE519123` is the official key of Shipfinder.com, bound to the domain api.shipfinder.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 create your own key in the Dashboard.\n\n## Request Parameters\n| Parameter | Legend | Type | Required | Description |\n|-----------|--------|------|----------|-------------|\n| key | Authorization Code | string | yes | Your personal Shipfinder API key to verify service permissions |\n| port_code | Standard Port Code | string | yes | Standard five-digit port code |\n| start_time | Start Time | int | yes | Start time represented as a UTC timestamp. The start time must be later than the current time. |\n| end_time | End Time | int | yes | End time represented as a UTC timestamp. The interval between the start time and end time shall not exceed 1 week for a single request. |\n| ship_type | Ship Type | int | no | Filter the type of vessels: see References for details. All vessels will be returned if this parameter is not specified. |"
      tags:
      - Voyage Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: port_code
        in: query
        description: Standard five-digit port code
        required: true
        example: PECLL
        schema:
          type: string
      - name: start_time
        in: query
        description: Start time represented as a UTC timestamp. The start time must be later than the current time.
        required: true
        example: 1746612218
        schema:
          type: integer
      - name: end_time
        in: query
        description: End time represented as a UTC timestamp. The interval between the start time and end time shall not exceed 1 week for a single request.
        required: true
        example: 1747044218
        schema:
          type: integer
      - name: ship_type
        in: query
        description: 'Filter the type of vessels: see Appendix for details. All vessels will be returned if this parameter is not specified.'
        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
                    description: API call status code,0 means success
                  msg:
                    type: string
                    description: Exception prompt message
                  total:
                    type: integer
                    description: Total number of vessels expected to arrive at the port within the specified time period.
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        mmsi:
                          type: integer
                          description: 9-digit numeric code of MMSI
                        ship_name:
                          type: string
                          description: Vessel name
                        imo:
                          type: integer
                          description: 7-digit numeric code of IMO
                        dwt:
                          type: integer
                          description: Vessel deadweight tonnage.
                        ship_type:
                          type: integer
                          description: 'Numeric code of vessel type: see Appendix for details '
                        length:
                          type: number
                          description: 'Vessel length in meters, valid value range: 0–1022'
                        width:
                          type: number
                          description: Vessel breadth in meters (nautical standard term)
                        draught:
                          type: number
                          description: Vessel draught depth in meters
                        dest:
                          type: string
                          description: Standardized destination port names, e.g., SINGAPORE, SG
                        ship_flag:
                          type: string
                          description: Name of the vessel’s flag state
                        preport_name:
                          type: string
                          description: 'Chinese Name of the port of departure '
                        last_time:
                          type: integer
                          description: AIS last update time in Unix timestamp
                        eta:
                          type: integer
                          description: Estimated Time of Arrival in Unix timestamp
                      required:
                      - mmsi
                      - ship_name
                      - length
                      - width
                      - draught
                      - preport_name
                      - last_time
                      - eta
                      - dest
                      - ship_flag
                      x-apifox-orders:
                      - mmsi
                      - ship_name
                      - imo
                      - dwt
                      - ship_type
                      - length
                      - width
                      - draught
                      - dest
                      - preport_name
                      - last_time
                      - eta
                      - ship_flag
                required:
                - status
                - msg
                - total
                - data
                x-apifox-orders:
                - status
                - msg
                - total
                - data
              example:
                status: 0
                msg: ''
                total: 1
                data:
                - mmsi: 760004503
                  ship_name: TINO 3
                  imo: 0
                  dwt: 0
                  ship_type: 0
                  length: 12
                  width: 33
                  draught: 5.7
                  preport_name: Manzanillo
                  last_time: 1774921277
                  eta: 1775100580
                  dest: Callao
                  ship_flag: Peru
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 2 Voyage Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-430249182-run
      operationId: getPortExpectedArrivals
      externalDocs:
        description: 2.4 Inbound / Expected Arrivals
        url: https://docs.shipfinder.com/430249182e0
  /v1/Voyage/PortInfo:
    get:
      summary: 2.1 Port Information
      deprecated: false
      description: "## Description\n\nThe Port Information supports partial search against the global port database. You can retrieve basic port information via partial search using port names or five-digit port code, time zone, and other related details.The five-digit port code returned in the results serves as the unique identifier for port-level data queries.\n\n## Use Cases\n\nThe five-digit port code obtained from this service can be used in conjunction with the following maritime query services:\n- Vessel Call Records at Specified Port\n- Port Vessel Arrival Notices\n- Port Berthing Vessels Query\n- Port Anchored Vessels Query\n\n## Request Limits\n\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\n| Endpoint | HTTP Method |\n|----------|-------------|\n| `https://api.elaneglobal.com/v1/Voyage/PortInfo` | GET |\n\n## Example API Call\n\nhttps://api.elaneglobal.com/v1/Voyage/PortInfo?key=1F6D701272402D1E7D8D316CCE519123&keywords=qingdao&max=6\n\n\n**Note**: \n\nThe key 1F6D701272402D1E7D8D316CCE519123 is the official key of Shipfinder.com, bound to the domain api.shipfinder.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 create your own key in the Dashboard."
      tags:
      - Voyage Dataset
      parameters:
      - name: key
        in: query
        description: Your personal Shipfinderer API key to verify service permissions
        required: true
        example: 1F6D701272402D1E7D8D316CCE519123
        schema:
          type: string
      - name: keywords
        in: query
        description: 'The input keyword for port query can be the port name The maximum number of results to return, with a maximum value of 100.(Chinese supported) or the standard five-digit port code. '
        required: true
        example: qingdao
        schema:
          type: string
      - name: max
        in: query
        description: ''
        required: false
        example: 6
        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
                    description: API call status code,0 means success
                  msg:
                    type: string
                    description: Exception prompt message
                  total:
                    type: integer
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        port_code:
                          type: string
                          description: Standard five-digit port code
                        port_name:
                          type: string
                          description: Name of the port
                        port_cnname:
                          type: string
                          description: Chinese name of the port
                        port_time_zone:
                          type: string
                          description: Time zone of the port’s location
                        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
                        port_country_code:
                          type: string
                          description: Standard code of the country/region where the port is located
                      x-apifox-orders:
                      - port_code
                      - port_name
                      - port_cnname
                      - port_time_zone
                      - port_country_name
                      - port_country_cnname
                      - port_country_code
                required:
                - status
                - msg
                - total
                - data
                x-apifox-orders:
                - status
                - msg
                - total
                - data
              example:
                status: 0
                msg: ''
                total: 1
                data:
                - port_code: SGSGP
                  port_name: Sigapore
                  port_cnname: 新加坡
                  port_time_zone: '+8'
                  port_country_name: Singapore
                  port_country_cnname: 新加坡
                  port_country_code: SG
          headers: {}
          x-apifox-name: success
      security:
      - apiKeyQuery: []
      x-apifox-folder: 2 Voyage Dataset
      x-apifox-status: released
      x-run-in-apifox: https://app.apifox.com/web/project/7948067/apis/api-429932201-run
      operationId: getPortInfo
      externalDocs:
        description: 2.1 Port Information
        url: https://docs.shipfinder.com/429932201e0
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

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/shipfinder-ais-data-api/refs/heads/main/openapi/shipfinder-ais-data-api-voyage-dataset-api-openapi.yml