Skip to main content

Vessel Tracking API

The base request URL for the TRADLINX Ocean Visibility API is: https://api.tradlinx.com

The API is activated based on a pre-agreed schedule. Once activated, you can send requests and receive responses normally.

Common API Guidelines:

  • An asterisk * indicates a required field.
  • A question mark ? indicates an optional field, which may or may not be provided.
  • Requests that violate these constraints will not be processed.
  • For types other than string, boolean, or number, refer to the custom types defined within this document.
  • For error code references, see the 'Error Codes' section in the reference materials.

🔔 API Update & Backward Compatibility Notice

The TRADLINX Ocean Visibility API may be updated from time to time to improve service quality, expand data coverage, and introduce new features.

When updating the API, we prioritize the stable operation of existing integrations and follow backward-compatible change principles, such as adding new fields.

Accordingly, we recommend that client systems be implemented in a backward-compatible manner so that they can continue to operate normally even when unknown or newly added fields are included in API responses.

If any changes may affect existing integrations, we will provide advance notice.

  • Allows searching for vessels using a keyword (IMO No, MMSI, Call Sign, or vessel name).

Request

GET /partners/track/v3/vessel-tracks/search

Query Parameter

FieldTypeDescription
keywordstringIMO No, MMSI, Call Sign, Vessel Name
curl -X GET "https://api.tradlinx.com/partners/track/v3/vessel-tracks/search?keyword=[Keyword]" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"

Response

{
"api_version": "v3",
"content": [
{
"call_sign": "SAMPLE_CALL_SIGN",
"imo_no": "SAMPLE_IMO_NO",
"mmsi": "SAMPLE_MMSI",
"vessel_id": 1,
"vessel_name": "SAMPLE_VESSEL_NAME"
}
],
"size": 1,
"message": "SAMPLE_ERROR_CODE",
"transaction_time": "2025-08-21T06:15:46.608323"
}

Response Body

FieldTypeDescriptionNotes
api_versionstringAPI version
contentSearchVesselInfoVessel Information
messagestringServer messageReturned if applicable
transaction_timestringResponse timestampyyyy-MM-dd'T'HH:mm:ss.SSSSSS
sizenumberContent size

SearchVesselInfo – Vessel Information

FieldTypeDescription
vessel_idnumberVessel ID
imo_nostringIMO No
mmsistringMMSI
vessel_namestringVessel Name

2. Vessel Tracking Request​

  • Only one tracking request can be made at a time.
  • The vessel_id in the registration data must be unique, and duplicate registration is not allowed if the vessel is already being tracked.
  • Expired tracking records can be re-tracked by submitting a new tracking request.
  • Registered tracking records remain valid for one month.
  • If auto_renewal is enabled at the time of registration, credits will be deducted one day before expiration, and the tracking period will be automatically extended for one month.

Request

POST /partners/track/v3/vessel-tracks/enroll

Vessel Tracking Request Data

FieldTypeSizeDescriptionConstraint
*vessel_idnumberVessel ID
remarkstring400NotesMax 400
track_groupstring200Tracking GroupMax 200
auto_renewalbooleanAuto Renewal
curl -X POST "https://api.tradlinx.com/partners/track/v3/vessel-tracks/enroll" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"
-d '{
"auto_renewal": true,
"remark": "SAMPLE_REMARK",
"track_group": "SAMPLE_TRACK_GROUP",
"vessel_id": 1
}'

Response

{
"api_version": "v3",
"content": {
"fail": [
{
"data": {
"vessel_id": 2
},
"reason": "SAMPLE_REASON"
}
],
"fail_count": 1,
"success": [
{
"vessel_id": 1,
"vessel_track_id": 1
}
],
"success_count": 1,
"total_count": 2
},
"message": "SAMPLE_ERROR_CODE",
"transaction_time": "2025-08-21T06:29:01.608323"
}

Vessel Tracking Request – Response Body

FieldTypeDescriptionNotes
api_versionstringAPI Version
contentSuccessFailSuccess/Failure status
messagestringServer messageReturned if applicable
transaction_timestringResponse timestampyyyy-MM-dd'T'HH:mm:ss.SSSSSS

SuccessFail

FieldTypeDescription
successSuccess[]Summary of successfully registered data
success_countnumberNumber of successfully registered data entries
failFail[]Summary of failed registration data
fail_countnumberNumber of failed data entries
total_countnumberTotal number of requests

Success

FieldTypeDescription
vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
vessel_idnumberVessel ID

Fail

FieldTypeDescription
dataFailDataSummary of failed data
reasonstringReason for failure

FailData

FieldTypeDescription
vessel_idnumberVessel ID

3. Vessel Tracking Update Request​

  • Only one update request can be processed at a time.
  • Updates can be made to remark and track_group.

Request

PATCH /partners/track/v3/vessel-tracks/{vessel_track_id}

PathVariable

FieldTypeDescription
*vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry

RequestBody

FieldTypeSizeDescriptionConstraint
remark?string400NotesMax 400
track_group?string200Tracking GroupMax 200
curl -X PATCH "https://api.tradlinx.com/partners/track/v3/vessel-tracks/[Vessel Track ID]" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"
-d '{
"remark": "SAMPLE_REMARK",
"track_group": "SAMPLE_TRACK_GROUP"
}'

Response

{
"api_version": "v3",
"content": {
"vessel_id": 1,
"vessel_track_id": 1
},
"message": "SAMPLE_ERROR_CODE",
"transaction_time": "2025-08-21T06:37:36.608323"
}

Vessel Tracking Update Request – Response Body

FieldTypeDescriptionNotes
api_versionstringAPI Version
contentVesselTrackIdentifierVessel Tracking Identifier
messagestringServer messageReturned if applicable
transaction_timestringResponse timestampyyyy-MM-dd'T'HH:mm:ss.SSSSSS

VesselTrackIdentifier

FieldTypeDescription
vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
vessel_idnumberVessel ID

4. Vessel Tracking Auto Renewal Update Request​

  • Update requests can only be made one at a time.
  • auto_renewal can be updated for an active tracking record.

Request

POST /partners/track/v3/vessel-tracks/{vessel_track_id}/auto-renewal

PathVariable

FieldTypeDescription
*vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
curl -X POST "https://api.tradlinx.com/partners/track/v3/vessel-tracks/[Vessel Track ID]/auto-renewal" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-d '{
"auto_renewal": true
}'

Vessel Tracking Auto Renewal Update Request Data

FieldTypeDescriptionConstraint
*auto_renewalbooleanAuto Renewal

Response

If successful, the server returns HTTP status code 200.

5. Vessel Tracking Cancellation Request​

  • Cancellation requests can only be made one at a time.
  • If the vessel tracking status is TRACKING, DELETED, or EXPIRED, canceling the tracking request will not refund the credits, as they are already deducted.

Request

DELETE /partners/track/v3/vessel-tracks/{vessel_track_id}

PathVariable

FieldTypeDescription
*vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
curl -X DELETE "https://api.tradlinx.com/partners/track/v3/vessel-tracks/[Vessel Track ID]" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"

Response

If successful, the server returns HTTP status code 200.

6. Retrieve Vessel Tracking List​

  • Retrieves a summary of registered vessel tracking records.

Request

GET /partners/track/v3/vessel-tracks

Query Parameter

FieldTypeDescription
status?stringTRACKING, DELETED, EXPIRED, PENDING
register_from?stringRegistration Start Date (ISO 8601 date/time format: yyyy-MM-dd'T'HH:mm:ssXXX)
register_to?stringRegistration End Date (ISO 8601 date/time format: yyyy-MM-dd'T'HH:mm:ssXXX)
keyword?stringIMO No, MMSI, Call Sign, Vessel Name
vessel_track_ids?numberUnique ID of the tracking record obtained via vessel tracking inquiry list (maximum: 50)
*pagenumberPage number (minimum: 1)
*sizenumberPage size (range: 1-50)
curl -X GET "https://api.tradlinx.com/partners/track/v3/vessel-tracks?status=[Status]&register_from=[Register From]&register_to=[Register To]&keyword=[Keyword]&vessel_track_ids=[Vessel Track ID],[Vessel Track ID]&page=[Page]&size=[Size]" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"

Response

{
"api_version": "v3",
"content": [
{
"expired_datetime": "2025-08-21T07:45:24Z",
"registered_datetime": "2025-08-21T07:45:24Z",
"remark": "SAMPLE_REMARK",
"status": "TRACKING",
"track_group": "SAMPLE_TRACK_GROUP",
"updated_datetime": "2025-08-21T07:45:24Z",
"vessel": {
"call_sign": "SAMPLE_CALL_SIGN",
"imo_no": "SAMPLE_IMO_NO",
"mmsi": "SAMPLE_MMSI",
"vessel_name": "SAMPLE_VESSEL_NAME",
"vessel_id": 1
},
"vessel_track_id": 1
}
],
"message": "SAMPLE_ERROR_CODE",
"pagination": {
"current_page": 1,
"has_next": false,
"total_page": 1,
"total_size": 1
},
"size": 1,
"transaction_time": "2025-08-21T07:45:24.608323"
}

Response Body

FieldTypeDescriptionNotes
api_versionstringAPI Version
contentVesselTrackSummaryVessel Tracking Summary Information
messagestringServer messageReturned if applicable
transaction_timestringResponse timestampyyyy-MM-dd'T'HH:mm:ss.SSSSSS
sizenumberContent size
paginationPaginationPagination information

Pagination

FieldTypeDescription
total_sizenumberTotal number of data entries
total_pagenumberTotal number of pages
current_pagenumberCurrent page number
has_nextbooleanIf a next page exists

VesselTrackSummary – Vessel Tracking Summary Information

FieldTypeDescription
vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
vessel_idnumberVessel ID
remarkstringNotes
track_groupstringTracking Group
auto_renewalbooleanAuto Renewal
vesselVesselInfoVessel Information
registered_datetimestringRegistration date/time (yyyy-MM-dd'T'HH:mm:ssZ)
expired_datetimestringExpiration Date/Time (yyyy-MM-dd'T'HH:mm:ssZ)
updated_datetimestringUpdated Date/Time (yyyy-MM-dd'T'HH:mm:ssZ)

VesselInfo – Vessel Information

FieldTypeDescription
vessel_idnumberVessel ID
imo_nostringIMO No
mmsistringMMSI
vessel_namestringVessel Name

7. Retrieve Vessel Tracking Details​

  • Retrieves detailed vessel tracking data.
  • Detailed retrieval is only available for records with a status of TRACKING.

Request

GET /partners/track/v3/vessel-tracks/{vessel_track_id}

PathVariable

FieldTypeDescription
*vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
curl -X GET "https://api.tradlinx.com/partners/track/v3/vessel-tracks/[Vessel Track ID]" \
-H "tx-clientid: [Client ID]" \
-H "tx-apikey: [API Key]" \
-H "Content-Type: application/json"

Response

{
"api_version": "v3",
"content": [
{
"expired_datetime": "2025-08-21T07:45:24Z",
"registered_datetime": "2025-08-21T07:45:24Z",
"remark": "SAMPLE_REMARK",
"status": "TRACKING",
"track_group": "SAMPLE_TRACK_GROUP",
"updated_datetime": "2025-08-21T07:45:24Z",
"vessel": {
"call_sign": "SAMPLE_CALL_SIGN",
"imo_no": "SAMPLE_IMO_NO",
"mmsi": "SAMPLE_MMSI",
"vessel_name": "SAMPLE_VESSEL_NAME",
"vessel_id": 1
},
"port_in_out_schedules": [
{
"arrival_datetime": "2025-01-01T00:00:00+09:00",
"data_source": "PORT_CALL",
"departure_datetime": "2025-01-01T00:00:00+09:00",
"is_actual": true,
"port_name": "SAMPLE_PORT_NAME"
}
],
"vessel_track_id": 1
}
],
"message": "SAMPLE_ERROR_CODE",
"transaction_time": "2025-08-21T07:45:24.608323"
}

Retrieve Vessel Tracking Details Response – Response Body

FieldTypeDescriptionNotes
api_versionstringAPI Version
contentVesselTrackDetailVessel Tracking Detailed Information
messagestringServer messageReturned if applicable
transaction_timestringResponse timestampyyyy-MM-dd'T'HH:mm:ss.SSSSSS

VesselTrackDetail – Vessel Tracking Detailed Information

FieldTypeDescription
vessel_track_idnumberUnique ID of the tracking record obtained via vessel tracking inquiry
vessel_idnumberVessel ID
remarkstringNotes
track_groupstringTracking Group
auto_renewalbooleanAuto Renewal
vesselVesselInfoVessel Information
port_in_out_schedulesPortInOutScheduleSchedule Information List
registered_datetimestringRegistration Date/Time (yyyy-MM-dd'T'HH:mm:ssZ)
expired_datetimestringExpiration Date/Time (yyyy-MM-dd'T'HH:mm:ssZ)
updated_datetimestringUpdated Date/Time (yyyy-MM-dd'T'HH:mm:ssZ)

VesselInfo – Vessel Information

FieldTypeDescription
vessel_idnumberVessel ID
imo_nostringIMO No
mmsistringMMSI
vessel_namestringVessel Name

PortInOutSchedule – Schedule Information List

FieldTypeDescription
departure_datetimestringDeparture Date/Time (ISO 8601 date/time format: yyyy-MM-dd'T'HH:mm:ssXXX)
arrival_datetimestringArrival Date/Time (ISO 8601 date/time format: yyyy-MM-dd'T'HH:mm:ssXXX)
is_actualbooleanIs Actual
port_namestringPort name
data_sourcestringData Source (PORT_CALL or Carrier code)