Other Vessels
You can use the /vessels
method to retrieve information about other
vessels in your vicinity. This data comes from FloatHub users who have made
either their own vessel’s location public or have elected to allow public
access to any AIS data their boat is relaying.
Note
If you have an onboard AIS, we strongly encourage you to connect it to your FloatHub device and make that data publicly accessible by modifying your FloatHub sharing preferences.
A call to find data about nearby vessels will look like this:
curl -H "Authorization: Bearer eyJhbGciOiJIUzI1N...XosykYIc" \
"https://api.floathub.com/v2/vessels?latl=55.5&latu=56.0&lonl=11.5&lonu=12.5"
except that you should include your actual (and much longer) Authorization
Token in the place of the example eyJhbGciOiJIUzI1N...XosykYIc
from
above. You’ll also want to set the search area by choosing appropriate
nearby values for:
Upper Latitude (latu)
Lower Latitude (latl)
Upper Longitude (lonu)
Lower Longitude (lonl)
This call will return a JSON response that looks like this:
[
{"age":7,"cog":237.6,"country":"Denmark","destination":"","draught":0.0,"heading":236,"lat":55.9555,"length":50,"lng":11.8184,"mmsi":219017815,"sog":7.5,"status":"Under way using engine","title":"ISEFJORD (219017815)","type":"Passenger Ship","width":12},
{"age":8,"cog":70.2,"country":"Faroe Islands","destination":"HUNDESTED","draught":3.8,"heading":171,"lat":55.9597,"length":48,"lng":11.8474,"mmsi":231048000,"sog":0.0,"status":"Under way using engine","title":"KRONOS (231048000)","type":"Unknown","width":10},
{"age":10,"cog":null,"country":"Denmark","destination":"","draught":0.0,"heading":null,"lat":55.9424,"length":8,"lng":11.8663,"mmsi":219027804,"sog":0.0,"status":"Under way using engine","title":"RESCUE THYRA (219027804)","type":"Search and Rescue","width":2},
{"age":10,"cog":117.6,"country":"Denmark","destination":"HUNDESTED","draught":2.7,"heading":null,"lat":55.964,"length":17,"lng":11.8455,"mmsi":219021266,"sog":0.0,"status":"Under way using engine","title":"MISILIISOQ (219021266)","type":"Pleasure Craft","width":5},
{"age":10,"cog":61.1,"country":"Denmark","destination":" HOLBAEK - OROE","draught":2.1,"heading":61,"lat":55.7381,"length":42,"lng":11.7647,"mmsi":219003141,"sog":9.5,"status":"Under way using engine","title":"ORO (219003141)","type":"Passenger Ship","width":10},
{"age":12,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":12,"lat":55.9638,"length":16,"lng":11.846,"mmsi":219029112,"sog":0.1,"status":null,"title":"S/Y CASSIOPEIA (219029112)","type":"Sailing Vessel","width":6},
{"age":13,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7446,"length":18,"lng":12.0951,"mmsi":219017886,"sog":0.1,"status":null,"title":"SHANTI (219017886)","type":"Pleasure Craft","width":5},
{"age":40,"cog":274.4,"country":"Denmark","destination":"","draught":0.0,"heading":null,"lat":55.7225,"length":82,"lng":11.7602,"mmsi":219015417,"sog":0.0,"status":"Under way using engine","title":"ELLEN 2 (219015417)","type":"Dredger","width":11},
{"age":42,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.914,"length":12,"lng":11.6711,"mmsi":219028140,"sog":0.0,"status":null,"title":"JOLIE BRISE (219028140)","type":"Sailing Vessel","width":4},
{"age":45,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.8353,"length":15,"lng":12.055,"mmsi":219022614,"sog":0.0,"status":null,"title":"BLUE OCEAN (219022614)","type":"Pleasure Craft","width":5},
{"age":47,"cog":4.3,"country":"Denmark","destination":"DK HUN","draught":3.0,"heading":53,"lat":55.9609,"length":53,"lng":11.8444,"mmsi":219031237,"sog":0.0,"status":"Moored","title":"FORTUNA CRANE (219031237)","type":"Unknown","width":11},
{"age":48,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7448,"length":0,"lng":12.0961,"mmsi":219028826,"sog":0.0,"status":null,"title":"HEMADEMA (219028826)","type":"Pleasure Craft","width":0},
{"age":50,"cog":317.8,"country":"Madeira","destination":"SALACGRIVA","draught":3.5,"heading":350,"lat":55.9609,"length":107,"lng":11.8407,"mmsi":255806390,"sog":0.0,"status":"Moored","title":"BUGOE (255806390)","type":"Cargo Vessel","width":15},
{"age":57,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.6526,"length":13,"lng":12.0754,"mmsi":219027820,"sog":0.2,"status":null,"title":"ANCHRICOR (219027820)","type":"Sailing Vessel","width":4},
{"age":62,"cog":65.5,"country":"Germany","destination":"DKFDV","draught":2.8,"heading":243,"lat":55.9615,"length":82,"lng":12.0155,"mmsi":218801000,"sog":0.0,"status":"Moored","title":"SIMON B (218801000)","type":"Cargo Vessel","width":11},
{"age":75,"cog":10.1,"country":"Denmark","destination":"HOLBAEK","draught":18.0,"heading":null,"lat":55.7252,"length":0,"lng":11.7602,"mmsi":219001749,"sog":0.0,"status":"Moored","title":"LILLEBAELT (219001749)","type":"Pleasure Craft","width":0},
{"age":92,"cog":346.3,"country":"Antigua and Barbuda","destination":"DKFDV","draught":2.3,"heading":44,"lat":55.9606,"length":74,"lng":12.0133,"mmsi":304559000,"sog":0.0,"status":"Moored","title":"PETRA L (304559000)","type":"Cargo Vessel","width":11},
{"age":94,"cog":184.6,"country":"Antigua and Barbuda","destination":"DK FDV","draught":5.2,"heading":333,"lat":55.9627,"length":88,"lng":12.0142,"mmsi":305190000,"sog":0.0,"status":"Moored","title":"EMMA F (305190000)","type":"Cargo Vessel","width":12},
{"age":105,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.9419,"length":11,"lng":11.8679,"mmsi":219023312,"sog":0.0,"status":null,"title":"TYTTEBOVSEN (219023312)","type":"Pleasure Craft","width":2},
{"age":106,"cog":280.7,"country":"Denmark","destination":"HUNDESTED","draught":2.5,"heading":207,"lat":55.9665,"length":25,"lng":11.8433,"mmsi":219000159,"sog":0.0,"status":"Moored","title":"MHV 905 ASKOE (219000159)","type":"Military Ops","width":6},
{"age":131,"cog":135.6,"country":"Denmark","destination":null,"draught":null,"heading":135,"lat":55.8359,"length":null,"lng":12.0561,"mmsi":219023391,"sog":0.0,"status":null,"title":"219023391","type":"Unknown","width":null},
{"age":136,"cog":300.3,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.9422,"length":8,"lng":11.8653,"mmsi":219018998,"sog":0.0,"status":null,"title":"ISEFJORD (219018998)","type":"Fishing","width":4},
{"age":150,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7208,"length":40,"lng":11.7142,"mmsi":219024955,"sog":0.0,"status":null,"title":"BONAVISTA (219024955)","type":"Sailing Vessel","width":6},
{"age":183,"cog":314.8,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.8365,"length":12,"lng":12.0325,"mmsi":219020924,"sog":0.0,"status":null,"title":"S/Y ELHAJA II (219020924)","type":"Sailing Vessel","width":3},
{"age":215,"cog":89.0,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7206,"length":29,"lng":11.7094,"mmsi":219003232,"sog":0.0,"status":null,"title":"HJALM (219003232)","type":"Sailing Vessel","width":6},
{"age":374,"cog":null,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7252,"length":16,"lng":11.7604,"mmsi":219030460,"sog":0.0,"status":null,"title":"ELSKLING (219030460)","type":"Sailing Vessel","width":5},
{"age":434,"cog":22.1,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7226,"length":15,"lng":11.7608,"mmsi":219024843,"sog":0.1,"status":null,"title":"EVILJA (219024843)","type":"Sailing Vessel","width":4},
{"age":480,"cog":306.7,"country":"Denmark","destination":null,"draught":null,"heading":null,"lat":55.7215,"length":14,"lng":11.7144,"mmsi":219021060,"sog":0.0,"status":null,"title":"ON TOP (219021060)","type":"Pleasure Craft","width":4},
{"age":695,"cog":155.8,"country":"Denmark","destination":null,"draught":null,"heading":155,"lat":55.9131,"length":11,"lng":11.6736,"mmsi":219026457,"sog":0.0,"status":null,"title":"FAAREKYLLING (219026457)","type":"Dive Vessel","width":4},
{"age":789,"cog":323.0,"country":"Denmark","destination":"BRONDBY","draught":2.5,"heading":314,"lat":55.6076,"length":22,"lng":12.4416,"mmsi":219000182,"sog":0.0,"status":"Moored","title":"MHV 802 CARINA (219000182)","type":"Military Ops","width":6},
{"age":966,"cog":162.7,"country":"Invalid","destination":"SEARCH AND RESCUE","draught":0.0,"heading":null,"lat":55.5911,"length":20,"lng":12.1211,"mmsi":111219520,"sog":8.2,"status":"Under way using engine","title":" (111219520)","type":"Search and Rescue","width":5},
{"age":1270,"cog":150.2,"country":"Denmark","destination":"N/A","draught":2.1,"heading":null,"lat":55.8247,"length":20,"lng":11.7375,"mmsi":219000121,"sog":0.0,"status":"Moored","title":"SKA 14 (219000121)","type":"Military Ops","width":6},
{"age":367,"cog":null,"fhubid":113,"heading":null,"lat":55.8353,"lng":12.055,"sog":0.01,"title":"Boaty McBoatface","type":"FloatHub"}
]
All of the data returned will be no more then 1 hour old (age ≤ 3600). If
you would prefer to restrict the age of data returned to a lower value, you
can also pass an &age=
get variable. Accepted values are between 1 and
60. Note that although the age passed in the calling get request is measured
in minutes, the returned values in the JSON response are always measured in
seconds.
In addition to how old the data is, information returned about any vessel may include the following fields:
sog
cog
heading
title (Vessel’s Name)
mmsi (Maritime Mobile Service Identity)
country (Flag)
lat (Latitude)
lng (Longitude)
status (Moored, Under way using engine, etc.)
length
width
draught
destination
type (Sailing Vessel, Passenger Ship, etc.)
If the data comes from another FloatHub user’s vessel rather than an AIS
source, the type
will be FloatHub
.