Data source: BarentsWatch
https://context.gnist.ai/rest/barentswatch/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
get_vesselGet the current position and details for a vessel by MMSI.
Args:
mmsi: 9-digit Maritime Mobile Service Identity number (e.g. 257338000).
Returns:
Vessel record with name, flag, type, position, speed, course, destination,
and navigational status from live AIS data.
| Parameter | Type | Required | Description |
|---|---|---|---|
mmsi | integer | required | 9-digit Maritime Mobile Service Identity number (e.g. 257338000). |
{
"mmsi": 1
}vessels_in_areaGet all vessels currently in a geographic area.
Specify the area as a named port OR as an explicit bounding box.
Args:
bbox: Comma-separated bounding box 'lon_min,lat_min,lon_max,lat_max'.
port_name: Named port (e.g. 'oslo', 'rotterdam', 'singapore', 'hamburg').
lon_min: Bounding box west edge.
lat_min: Bounding box south edge.
lon_max: Bounding box east edge.
lat_max: Bounding box north edge.
vessel_type: Filter by type: 'cargo', 'tanker', 'passenger', 'fishing', 'tug'.
limit: Maximum vessels to return (1–200, default 50).
Returns:
Dictionary with count and vessels list.
| Parameter | Type | Required | Description |
|---|---|---|---|
bbox | any | optional | Comma-separated bounding box 'lon_min,lat_min,lon_max,lat_max'. |
port_name | any | optional | Named port (e.g. 'oslo', 'rotterdam', 'singapore', 'hamburg'). |
lon_min | any | optional | Bounding box west edge. |
lat_min | any | optional | Bounding box south edge. |
lon_max | any | optional | Bounding box east edge. |
lat_max | any | optional | Bounding box north edge. |
vessel_type | any | optional | Filter by type: 'cargo', 'tanker', 'passenger', 'fishing', 'tug'. |
limit | integer | optional | Maximum vessels to return (1–200, default 50). (default: 50) |
{
"query": "example"
}get_vessel_trackGet the recent position history (track) for a vessel.
Args:
mmsi: 9-digit MMSI number.
hours: How many hours of history to return (1–168, default 24).
Returns:
Dictionary with mmsi, name, point_count, and points list (lat, lon, speed, course, timestamp).
| Parameter | Type | Required | Description |
|---|---|---|---|
mmsi | integer | required | 9-digit MMSI number. |
hours | integer | optional | How many hours of history to return (1–168, default 24). (default: 24) |
{
"mmsi": 1
}search_vesselSearch for vessels by name (partial match).
Args:
name_query: Vessel name or partial name (e.g. 'Stena', 'Nordic Eagle').
flag: Optional country filter — ISO 2-letter code (e.g. 'NO', 'NL').
Returns:
Dictionary with count and vessels list including MMSI, name, flag, and position.
| Parameter | Type | Required | Description |
|---|---|---|---|
name_query | string | required | Vessel name or partial name (e.g. 'Stena', 'Nordic Eagle'). |
flag | any | optional | Optional country filter — ISO 2-letter code (e.g. 'NO', 'NL'). |
{
"name_query": "example"
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"feedback": "example"
}Quick Start
curl -X POST "https://context.gnist.ai/rest/barentswatch/get_vessel" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"mmsi": 1}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/rest/barentswatch/get_vessel",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={
"mmsi": 1
},
)
print(resp.json())