The three APIs
MariTrace API
- Sign in:
POST /registrationwith HTTP Basic, then send thetokenheader GET /vesselpositions: positions changed since your last call/vesselpositions_subscribedvessels: list, add, remove vessels
MariData API
- Sign in: HTTP Basic on every call, from an IP address on your account
POST /api/Vessels,VesselsByName,VesselLatestPosition,SATCAIS,Countries,AreaCheck- JSON or XML
PublicAPIs
- Sign in: HTTP Basic on every call
- 22
POST /get_…calls: vessels, positions, areas, ports, port calls, JWC
Trying a call
Open an API in the legacy reference, press Authorize and enter your
username and password (or, for the MariTrace API, a token from /registration), then open a call and
choose Try it out.
One exception: the MariTrace API's GET /vesselpositions and the calls that add or remove subscribed
vessels are previews here. You see the real answer, but your cursor does not move and your list
does not change, so trying them never takes updates away from your own systems. With
subscriptiontype=test and fleetname=test they return sample data.
Rate limits and errors
Limits are set per user and per API. When you reach one, the MariData API answers 429 with a message
saying which limit (second, minute, hour or day). The MariTrace API and the PublicAPIs answer 401 when
the sign-in or token is not accepted for that call.
Moving to v1
New integrations should use the v1 API: one key for every product, versioned paths, consistent JSON and rate-limit headers on every response. Talk to us when you want to move; the legacy APIs keep running meanwhile.