Polygon Events
The Polygon Event API enables historical and real-time tracking of all vessels as they enter or exit defined maritime zones, such as ports, canals, anchorages, terminals, shipyards. By leveraging over 12 years of AXSMarine’s proprietary AIS data, this API provides structured insights into vessel movements across 60 000+ AXSMarine proprietary polygons.
A polygon event represents a vessel's movement through a strategically defined maritime zone, triggered when the vessel enters and exits the area. Each event is captured through two key AIS signals: entry (the first AIS signal detected within the polygon) and out (the last AIS signal before the vessel leaves the polygon), as reflected in the API response.
Key Features
🚢 Vessel Activity Insights – Identify when a vessel enters and exits a geofenced area using the first and last AIS signals within the polygon. Each “polygon event” captures both entry and exit parameters, providing a detailed snapshot of the event.
📍 Geofenced Tracking – Track vessel movements through custom-defined zones including anchorages, canals, terminals, and more using polygon-based detection.
⏱ Event Duration – Calculate time spent within the polygon to support congestion analysis or loading duration metrics.
📊 Time Series Ready – Use historical event data to generate time series charts of port activity, vessel counts, and duration.
🚨 Activity Alerts – Monitor live “open” events to trigger alerts when vessels enter specific zones or are still present within them.
🎯 Flexible Filtering – Apply filters by:
- Vessel IMO, DWT, or other specifications
- Polygon ID, name, or type (e.g., anchorage, canal)
- Entry or exit timestamps and AIS attributes
- Filtering with
isOpen = trueis recommended for tracking real-time vessel activity.
📚 Data Depth – Access a comprehensive archive of over 12 years of vessel tracking data, suitable for trend analysis and predictive modeling.
📦 Efficient Pagination – Handle large result sets with cursor-based pagination. Use tight filters to limit scope and improve performance.
The purpose of this API is to provide a unified response across all vertical markets that we serve. Two points need to be taken into considerations:
- Geographic location: While most geographic locations are common across all verticals (e.g. the Port of Rotterdam is identical for dry and tanker vessels), this is not the case for zone locations, which are market-dependent areas and are not shared across verticals.
- Segments filtering: This API offers greater granularity than REST APIs, which are decoupled by main verticals (dry / tanker). In contrast, this API provides a more detailed list of segments, as shown below:
| |
| |
|
Advanced Filtering
The new filter ancestorPolygons lets you target events that occur within a parent polygon (e.g., a port or broader zone).
What is ancestorPolygons?
ancestorPolygons restricts the search to events whose child polygon is inside one or more specified parent polygons. It must be used together with polygonTypes to narrow the child type (e.g., anchorage, canal, port).
UN/LOCODE | "NLRTM" | International port code. |
Numeric ID | "3989" | Internal AXSMarine ID. |
Human‑readable name | "Rotterdam" | Full name of the parent polygon. |
Example Query
query GetOpenAnchorages {
polygonEvents(
first: 50
isOpen: true
polygonTypes: ["anchorage"]
ancestorPolygons: ["NLRTM"]
) {
edges {
node {
_id
isOpen
duration
polygon { _id name type }
vessel { imo name type segment }
entryAis { time latitude longitude }
outAis { time latitude longitude }
}
cursor
}
pageInfo { hasNextPage endCursor }
totalCount
}
}This returns the first 50 open anchorage events that are inside the “NLRTM”(Rotterdam) parent polygons.
Header Parameters
Bearer token used for authentication.
Body Parameters
Returns the first n elements from the list.
Returns the last n elements from the list.
Returns the elements in the list that come before the specified cursor.
Returns the elements in the list that come after the specified cursor.
Indicates whether the polygon event is open or not.
List of polygon Ids as array.
List of polygon types as array.
Specifies the range of entry dates for filtering polygon events.
Show child attributes
Specifies the range of out dates for filtering polygon events.
Show child attributes
Specifies the range of entry drafts for filtering polygon events.
Show child attributes
Specifies the range of entry headings for filtering polygon events.
Show child attributes
Specifies the range of entry speeds for filtering polygon events.
Show child attributes
Specifies the range of out drafts for filtering polygon events.
Show child attributes
Specifies the range of out headings for filtering polygon events.
Show child attributes
The speed of the vessel when leaving the polygon event.
Show child attributes
The duration of the event in hours.
Show child attributes
The date and time when the event was last updated.
Show child attributes
Range of dates during which the vessel was built.
Show child attributes
Range of beam of the vessel (in meters).
Show child attributes
Range of length overall of the vessel (in meters).
Show child attributes
Range of nominal draft of the vessel (in meters).
Show child attributes
Range of deadweight tonnage of the vessel.
Show child attributes
Range of TEU of the vessel.
Show child attributes
Range of cubic capacity of the vessel.
Show child attributes
List of unique vessel IDs
List of vessel IMOs.
List of vessel segments. Refer to Enum Vessel Segments for more details.
List of vessel types. Refer to Enum Vessel Types for more details.
List of vessel subtypes.
List of vessel service ids.
List of service region ids.