AIS Stream
One persistent WebSocket connection. Incoming AIS reports, delivered to your application as they arrive.
Get a free API keyOne connection.
A live feed.
Create a key and connect your server to the WebSocket stream. The welcome frame reports the limits for your connection.
Read the stream docs{
"type": "welcome",
"protocol": "pelyr.v1",
"server_time": "2026-08-14T15:04:05Z",
"subscribe_deadline_ms": 5000,
"bbox_fields": [
"west",
"south",
"east",
"north"
],
"key": {
"prefix": "pk_",
"scope": "collector"
},
"limits": {
"subscriptions": 4,
"bbox_per_subscription": 50,
"bbox_per_connection": 80,
"mmsi_per_subscription": 500,
"mmsi_per_account": 50,
"bbox_per_account": 10,
"bbox_area_km2_per_account": 3500000,
"output_bytes_per_second": 0,
"quota_bytes_per_month": 0,
"quota_bytes_used": 6442450944,
"quota_resets_at": "2026-09-01T00:00:00Z"
},
"docs": "https://pelyr.com/stream-api/",
"terms": "https://pelyr.com/stream-terms/"
}{
"type": "subscribed",
"id": "ostsee",
"effective": {
"bbox": [
{
"west": 18,
"south": 59,
"east": 26,
"north": 66
}
],
"fields": "position",
"mmsi_count": 0
}
}Choose what matters.
Shape the feed.
Subscribe by geographic area, MMSI or AIS message type to follow the reports relevant to your application.
Stay with the movement.
Follow delivery.
Receive new reports and use connection status messages to monitor the feed your application gets.
{
"type": "position",
"id": "1755183845123-0",
"license": "100",
"data": {
"mmsi": 230123456,
"msg_type": 1,
"lat": 60.161234,
"lon": 24.934567,
"sog": 12.3,
"cog": 45.6,
"heading": 47,
"rx_ts": "2026-08-13T10:00:00Z"
}
}Before you connect.
How do I authenticate?
Create a free key in the dashboard and enable AIS Stream. Connect from your server with the key in the Authorization header. The welcome frame reports the limits in force for your connection; the documentation includes complete Python and Go examples.
Can I filter the live feed?
Yes. Subscribe by geographic area, individual MMSI or AIS message type. Use filters to keep updates relevant to your application. Subscriptions and concurrent connections are limited; check the documentation and your welcome frame before choosing your subscription layout.
Does the stream include historical tracks?
The stream follows incoming reports. Use the HTTPS API to retrieve recorded tracks or look up vessel details alongside those updates. Both tools use the same key when their capabilities are enabled. Free access includes no uptime commitment.
From key to stream.
Create a key, enable AIS Stream and connect from your server. The documentation includes complete clients, subscription options and current access limits.
Read the stream docs