swagger: '2.0' info: description: 'ARCHIVED SPECIFICATION - RETIRED API. This is the final publicly archived Swagger 2.0 definition of the FleetMon API (apiv2.fleetmon.com), preserved from the Internet Archive Wayback Machine (schema.json capture 2021-12-08; the developer portal at developer.fleetmon.com remained online through early 2025). FleetMon was acquired by Kpler in 2023, the FleetMon platform and API were phased out beginning January 2024 and migrated into MarineTraffic, and as of 2026 the fleetmon.com domain (including apiv2.fleetmon.com and developer.fleetmon.com) no longer resolves. None of the endpoints below are live. The successor surface is the MarineTraffic API portfolio / Kpler AIS (servicedocs.marinetraffic.com). --- Original description follows --- Welcome to our API reference! You can view JSON response samples in the area to the right. If you need help with the API, just [contact us](https://www.fleetmon.com/company/contact/). Follow us on [Facebook](https://www.facebook.com/fleetmon) and [Twitter](https://twitter.com/fleetmon) for the latest updates and news on the platform. With the use of the FleetMon API, you agree with the [Terms of Service](https://www.fleetmon.com/terms-of-service/). ' title: FleetMon API Reference Basic Vessel Data Vessel Positions with Extended Vessel Data API version: Version 2.4.2 x-archived: status: retired retiredNote: FleetMon product offerings, logins, and the apiv2.fleetmon.com API were discontinued during the 2024 migration into MarineTraffic following the 2023 Kpler acquisition; fleetmon.com DNS no longer resolves as of 2026. archiveSource: http://web.archive.org/web/20211208160310/https://apiv2.fleetmon.com/schema.json archivedDeveloperPortal: http://web.archive.org/web/20250106234623/https://developer.fleetmon.com/reference/ successor: https://servicedocs.marinetraffic.com/ archivedBy: API Evangelist archivedDate: '2026-07-11' host: apiv2.fleetmon.com basePath: / schemes: - https consumes: - application/json produces: - application/json tags: - description: Delivers position and extended detailed information for a single vessel. name: Vessel Positions with Extended Vessel Data x-codename: vesselparticulars paths: /vessel/{vessel_id}: get: description: '' operationId: get-vesselparticulars-detail parameters: - description: FleetMon identifier for maritime objects like vessels format: int64 in: path name: vessel_id required: true type: integer - default: false description: If `true` some extra attributes will be added to the response informing about usage and limits of this endpoint. in: query name: request_limit_info required: false type: boolean responses: '200': description: Vessel Positions with Extended Vessel Data - vessel response schema: $ref: '#/definitions/vesselparticulars-response-vessel' '401': description: The server could not verify that you are authorized to access the URL. schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-401 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 401 description: The server could not verify that you are authorized to access the URL requested. message: Unauthorized status: error '403': description: The provided credentials were correct but the API is not yet fully configured. schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-403 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 403 description: The API is not yet fully configured. message: Forbidden status: error '404': description: Requested item does not exist. schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-404 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 404 description: The requested item was not found on the server. message: Not Found status: error '405': description: The used HTTP method is not allowed for this URL. schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-405 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 405 description: The method is not allowed for the requested URL. message: Method Not Allowed status: error '422': description: A required parameter is missing or has a wrong structure. schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-422 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 422 description: The request was well-formed but was unable to be followed due to semantic errors. message: Unprocessable Entity status: error '429': description: The client requested the resource too many times. (rate limit) schema: allOf: - $ref: '#/definitions/error-message-response' - title: response-status-429 xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time x-example-object: code: 429 description: Only 200 requests per 30 days are allowed for this endpoint. message: Too Many Requests status: error security: - apikey: [] - apikey_authorization_header: [] - apikey_header: [] summary: Delivers extended information for a vessel tags: - Vessel Positions with Extended Vessel Data definitions: vesselparticulars-response-vessel-datasheet: properties: builder: type: string x-nullable: true xml: x-add-datatype: true classification_society: type: string x-nullable: true xml: x-add-datatype: true dead_weight: format: int64 type: integer x-nullable: true xml: x-add-datatype: true design_max_speed: format: float type: number x-nullable: true xml: x-add-datatype: true gross_tonnage: format: int64 type: integer x-nullable: true xml: x-add-datatype: true height: format: float type: number x-nullable: true xml: x-add-datatype: true insurer: type: string x-nullable: true xml: x-add-datatype: true length: description: length of vessel in meter via AIS (static message) format: int64 type: integer x-nullable: true xml: x-add-datatype: true manager: type: string x-nullable: true xml: x-add-datatype: true owner: type: string x-nullable: true xml: x-add-datatype: true person_capacity: format: int64 type: integer x-nullable: true xml: x-add-datatype: true service_status: type: string x-nullable: true xml: x-add-datatype: true teu_14mt: format: int64 type: integer x-nullable: true xml: x-add-datatype: true teu_max: format: int64 type: integer x-nullable: true xml: x-add-datatype: true teu_reefer: format: int64 type: integer x-nullable: true xml: x-add-datatype: true width: description: width of vessel in meter via AIS (static message) format: int64 type: integer x-nullable: true xml: x-add-datatype: true year_built: format: int64 type: integer x-nullable: true xml: x-add-datatype: true year_scraped: format: int64 type: integer x-nullable: true xml: x-add-datatype: true required: - classification_society - year_built - year_scraped - insurer - person_capacity - builder - length - height - gross_tonnage - width - manager - service_status - design_max_speed - teu_14mt - owner - teu_reefer - teu_max - dead_weight title: datasheet type: object xml: x-add-datatype: true vesselparticulars-response-vessel-position: description: Last reported position properties: course_over_ground: description: current course over ground via AIS (position message) format: float type: number x-nullable: true xml: x-add-datatype: true in_special_maneuver: type: boolean xml: x-add-datatype: true is_moving: type: boolean xml: x-add-datatype: true latitude: description: current position latitude received via AIS (position message) format: float type: number x-nullable: true xml: x-add-datatype: true location_str: description: verbal description of the current position type: string x-nullable: true xml: x-add-datatype: true longitude: description: current position longitude received via AIS (position message) format: float type: number x-nullable: true xml: x-add-datatype: true nav_status: description: current navigation status reported via AIS (position message) format: ascii type: string xml: x-add-datatype: true received: description: time of received position message format: date-time type: string x-nullable: true xml: x-add-datatype: true source: description: either "terrestrial" or "satellite" format: ascii type: string xml: x-add-datatype: true speed: description: current speed received via AIS (position message) format: float type: number x-nullable: true xml: x-add-datatype: true true_heading: description: current true heading of keel (hull) via AIS (position message) format: int64 type: integer x-nullable: true xml: x-add-datatype: true required: - location_str - is_moving - received - nav_status - true_heading - in_special_maneuver - source - longitude - latitude - course_over_ground - speed title: position type: object x-nullable: true xml: x-add-datatype: true vesselparticulars-response-vessel: properties: ais_type_of_ship: description: AIS Type-Of-Ship ID format: int64 type: integer xml: x-add-datatype: true ais_type_of_ship_str: description: AIS Type-Of-Ship verbalization type: string xml: x-add-datatype: true attributes: description: assigned vessel attributes items: type: string xml: name: item x-add-datatype: true type: array xml: wrapped: true x-add-datatype: true callsign: format: ascii type: string x-nullable: true xml: x-add-datatype: true cn_iso2: format: ascii type: string x-nullable: true xml: x-add-datatype: true cn_name: type: string x-nullable: true xml: x-add-datatype: true datasheet: $ref: '#/definitions/vesselparticulars-response-vessel-datasheet' image_url: description: URL to master image if available format: ascii type: string x-nullable: true xml: x-add-datatype: true imo_number: description: unique International Maritime Organization (IMO) vessel number format: int64 type: integer x-nullable: true xml: x-add-datatype: true last_port: $ref: '#/definitions/vesselparticulars-response-vessel-last_port' mmsi_number: description: 9 decimal digits Maritime Mobile Service Identity (connector between AIS message typs) format: int64 type: integer x-nullable: true xml: x-add-datatype: true name: type: string x-nullable: true xml: x-add-datatype: true next_port: $ref: '#/definitions/vesselparticulars-response-vessel-next_port' position: $ref: '#/definitions/vesselparticulars-response-vessel-position' request_limit_info: description: Information about usage and limits of this endpoint. Included if query parameter `request_limit_info` is `true` properties: left_requests: description: Number of requests left at this moment to this endpoint. If not included there is no limit. type: integer xml: x-add-datatype: true max_requests: description: Maximum number of requests to this endpoint within 30 days. If not included there is no limit. type: integer xml: x-add-datatype: true used_requests: description: Number of requests to this endpoint within the last 30 days. type: integer xml: x-add-datatype: true required: - used_requests title: request-limit-info type: object xml: x-add-datatype: true statistics: $ref: '#/definitions/vesselparticulars-response-vessel-statistics' type: type: string x-nullable: true xml: x-add-datatype: true type_class: format: ascii type: string x-nullable: true xml: x-add-datatype: true type_code: format: ascii type: string x-nullable: true xml: x-add-datatype: true vessel_id: description: FleetMon identifier for maritime objects like vessels format: int64 type: integer xml: x-add-datatype: true voyage: $ref: '#/definitions/vesselparticulars-response-vessel-voyage' required: - ais_type_of_ship_str - voyage - last_port - name - imo_number - vessel_id - datasheet - mmsi_number - cn_iso2 - statistics - callsign - type_code - position - cn_name - image_url - attributes - type - ais_type_of_ship - next_port - type_class title: vessel type: object xml: name: response namespace: https://apiv2.fleetmon.com x-extra-attributes: timestamp: type: date-time error-message-response: properties: code: description: correlates to the HTTP status code format: int32 type: integer xml: x-add-datatype: true description: description: more detailed description type: string xml: x-add-datatype: true message: description: short error message type: string xml: x-add-datatype: true status: description: '"error"' example: error format: ascii type: string xml: x-add-datatype: true required: - status - message - description - code type: object vesselparticulars-response-vessel-voyage: properties: destination: description: current destination received via AIS (static message) format: ascii type: string x-nullable: true xml: x-add-datatype: true draught: description: current draught received via AIS (static message) format: float type: number x-nullable: true xml: x-add-datatype: true eta: description: current ETA by Vessel received via AIS (static message) format: date-time type: string x-nullable: true xml: x-add-datatype: true received: description: time of received static message format: date-time type: string xml: x-add-datatype: true special_cargo: description: Special cargo as announced by AIS format: ascii type: string x-nullable: true xml: x-add-datatype: true required: - received - draught - destination - eta - special_cargo title: voyage type: object xml: x-add-datatype: true vesselparticulars-response-vessel-statistics: properties: avg_draught: format: float type: number x-nullable: true xml: x-add-datatype: true avg_speed: format: float type: number x-nullable: true xml: x-add-datatype: true max_draught: format: float type: number x-nullable: true xml: x-add-datatype: true max_speed: format: float type: number x-nullable: true xml: x-add-datatype: true min_draught: format: float type: number x-nullable: true xml: x-add-datatype: true required: - max_draught - min_draught - max_speed - avg_speed - avg_draught title: statistics type: object xml: x-add-datatype: true vesselparticulars-response-vessel-next_port: properties: country: type: string x-nullable: true xml: x-add-datatype: true eta: format: date-time type: string x-nullable: true xml: x-add-datatype: true latitude: format: float type: number x-nullable: true xml: x-add-datatype: true locode: format: ascii type: string x-nullable: true xml: x-add-datatype: true longitude: format: float type: number x-nullable: true xml: x-add-datatype: true name: type: string x-nullable: true xml: x-add-datatype: true required: - name - country - longitude - eta - latitude - locode title: port-next type: object x-nullable: true xml: x-add-datatype: true vesselparticulars-response-vessel-last_port: properties: country: type: string xml: x-add-datatype: true latitude: format: float type: number xml: x-add-datatype: true locode: format: ascii type: string x-nullable: true xml: x-add-datatype: true longitude: format: float type: number xml: x-add-datatype: true name: type: string xml: x-add-datatype: true seen_last: format: date-time type: string xml: x-add-datatype: true required: - name - country - longitude - seen_last - latitude - locode title: port-last type: object x-nullable: true xml: x-add-datatype: true securityDefinitions: apikey: description: Auth via API-Key Query-Parameter in: query name: apikey type: apiKey apikey_authorization_header: description: 'Auth via API-Key in ''Authorization'' header field in the form ''Authorization: Token ''' in: header name: Authorization type: apiKey apikey_header: description: Auth via API-Key in 'Api-Key' header field in: header name: Api-Key type: apiKey x-tagGroups: - name: My tags: - My API Keys - My Client - My User Notification Setting - My User Alert Addresses - Login Token - name: Vessels tags: - Vessel Search - Vessel Photo - Vessel Schedule - Next Port / ETA Calculation - Vessel History - Vessel Positions Only - Vessel Identity - Vessel Route To Next Port - Vessels Nearby - Vessels Near Position - Historical AIS Static Messages - Historical Track API - Vessel Positions with Extended Vessel Data - Port Calls per Vessel - Vessel Coarse Type - ETA Reports - Basic Vessel Data - Non AIS Vessel Particulars - Vessel Time to Port - Vessel Change Events - Voyage Planning - Vessel Dynamic AIS - name: Ports tags: - Expected Port Arrivals - Vessels in Port - Port Search - Port Calls per Port - name: Fleets tags: - Fleet Tracker - My Fleet Positions - Dry and Bulk Cargo Fleet - name: Logistics tags: - Logistics - RoRo Ferry Terminal Demo - Vessel ETA & Destination Change Events - Terminals - Estimated Laytime - Specific Vessel - name: Zone tags: - Regional AIS - Zone Call - Zone Information - User Zones - name: Routing tags: - Route To Port - Distance To Port - Vessel Route To Next Port - Vessel Route From Last Port - name: Weather & Water tags: - Weather - Water - Current