GateHouse AIS REST interface

Base URL: /api/watchdog, Version: 0.1.1

AIS system for monitoring vessel traffic

Schemes: https, http

Summary

Tag: PRELIMINARY

This API will be superseded by a newer API.

Operation Description
POST /definition

Define a watchdog

GET /definition

Return all watchdog definitions.

GET /definition/{id}

Return watchdog definition.

PUT /definition/{id}

Update a watchdog

DELETE /definition/{id}

Delete a watchdog definition.

GET /event

Get list of watchdog events

POST /event

Reset time of call

GET /wait

Wait for watchdog event

Tag: PRODUCTION

This call will only change in a release.

Operation Description

Tag: watchdog

Watchdog operations

Operation Description
POST /definition

Define a watchdog

GET /definition

Return all watchdog definitions.

GET /definition/{id}

Return watchdog definition.

PUT /definition/{id}

Update a watchdog

DELETE /definition/{id}

Delete a watchdog definition.

GET /event

Get list of watchdog events

POST /event

Reset time of call

GET /wait

Wait for watchdog event

Tag: define

Define watchdogs

Operation Description
POST /definition

Define a watchdog

GET /definition

Return all watchdog definitions.

GET /definition/{id}

Return watchdog definition.

PUT /definition/{id}

Update a watchdog

DELETE /definition/{id}

Delete a watchdog definition.

Tag: event

Query events produced by a watchdog

Operation Description
GET /event

Get list of watchdog events

POST /event

Reset time of call

GET /wait

Wait for watchdog event

Security

basic_authentication

Type: basic

Paths

Return all watchdog definitions.

GET /definition

Tags: PRELIMINARY, watchdog, define

Return the definitions of all watchdogs.

application/json

200 OK

successful operation

records: object[]
Define a watchdog

POST /definition

Tags: PRELIMINARY, watchdog, define

Watchdog definition

application/json

200 OK

successful operation

Delete a watchdog definition.

DELETE /definition/{id}

Tags: PRELIMINARY, watchdog, define
id

id of the watchdog

path integer (int64)

application/json

200 OK

successful operation

Return watchdog definition.

GET /definition/{id}

Tags: PRELIMINARY, watchdog, define

Return the definition of the specified watchdog.

id

id of the watchdog

path integer (int64)

application/json

200 OK

successful operation

Update a watchdog

PUT /definition/{id}

Tags: PRELIMINARY, watchdog, define

Watchdog definition

id

id of the watchdog

path integer (int64)

application/json

200 OK

successful operation

Get list of watchdog events

GET /event

Tags: PRELIMINARY, watchdog, event

Get a list of the watchdog events triggered since the last call.

200 OK

successful operation

Reset time of call

POST /event

Tags: PRELIMINARY, watchdog, event

Reset the 'last call' timestamp for the current user to the specified value.

application/json

200 OK

successful operation

Wait for watchdog event

GET /wait

Tags: PRELIMINARY, watchdog, event

Wait until either a watchdog triggers, or a timeout occurs.

200 OK

successful operation

Schema definitions

EventTimestamp: object

timestamp: string (date-Time)
"2015-08-18T14:00:00Z"

GeoJSON: object

Object containing a position, linestring (track) or polygon. Based on http://geojson.org/ and https://github.com/dret/GeoJSON-X. Extensions defined are time (timestamp in ISO format, cog (Course Over Ground in degrees 0..360), sog (Speed Over Ground in knots). Please notice extensions in coordinates can be both numbers and string (time)

"{\"type\":\"Point\", \"extensions\" : [\"time\", \"cog\", \"sog\"],  \"coordinates\":[10.1, 55.2, \"2016-01-15T12:00:00Z\", 120.1, 8.4]\"} {\"type\":\"LineString\", \"extensions\" : [\"time\", \"cog\", \"sog\"],  \"coordinates\":[ [10.1, 55.2, \"2016-01-15T12:00:00Z\", 120.1, 8.4] [10.3, 55.1, \"2016-01-15T12:30:00Z\", 118.2, 8.3]]\"} "
extensions: string[]
string
coordinates: number[]
number
type: string , x ∈ { Point , MultiPoint , LineString , MultiLineString , Polygon , MultiPolygon , GeometryCollection }

GroupName: object

Name of a group

uid: string
"6E50DD2B-0AED-46E8-8D8D-6F37FE862C1A"

ShipType: object

mmsi: integer
imo: integer
name: string
callsign: string
draught: number (float)

Draught of the ship [m]

WatchdogDefinition: object

name: string

The name of watchdog

"My own watchdog"
type: string

The type of watchdog: line, polygon, port, cable or fishing. The request must include a valid object of the defined type.

"line, polygon, port, cable or fishing"
port: object

Watchdog configuration parameters

id: integer (int64)

ID of the port

locode: string

Locode of the port, 5 digit alphanumeric code

"GBFXT"
name: string
"FELIXSTOWE"
polygon: GeoJSON
line: GeoJSON
acl: object[]

Access Control list

filter: string

Optional filter string

"destination=\"*nuuk*\""
shiplist: object
active: boolean

Specify whether a shiplist shall be created for the watchdog. Optional, if not specified no shiplist will be created.

timeout: string 00:30:00 = 30 minutes

Specify how long ships shall be included in shiplist. Only valid for watchdogs of type line. Optional, if no value is specified the timeout is 30 minutes "00:30:00". The value is specified in [HHH:MM:SS].

activate_text: string

The template used for generating the message sent by mail and/or SMS when an event is activated. The default depends on the type of event definition. You can use various keywords (surrounded by percent signs) that will be replaced before the message is sent. See the aisWeb online help for a list of keywords.

deactivate_text: string

The template used for generating the message sent by mail and/or SMS when an event is activated. The default depends on the type of event definition. You can use various keywords (surrounded by percent signs) that will be replaced before the message is sent. See the aisWeb online help for a list of keywords.

check_direction: boolean

If this is enabled, you can specify minimum and maximum values for Course Over Ground (COG). Only vessels with a COG inside the specified interval will generate events.

direction_min_angle: number

See check_direction.

direction_max_angle: number

See check_direction.

nof_samples: number 1

How many position reports must be received within the area (or on the other side of the line) before an event is activated. The default is 1; higher values are useful in avoiding spurious activation due to GPS errors. On the other hand, a too high value may result in missing or delayed events.

nof_samples_deactivation: number 1

How many position reports must be received within the area (or on the other side of the line) before an event is deactivated. The default is 1; higher values are useful in avoiding spurious deactivation due to GPS errors. On the other hand, a too high value may result in missing or delayed events.

samples_between_trigger: integer

How many position reports must be received between successive activation events. The default is zero; higher values are useful for avoiding spurious deactivation due to GPS errors. On the other hand, a too high value may result in missing or delayed events.

time_between_trigger: integer

Similar to samples_between_trigger, but based on time (seconds) instead of received AIS reports.

timeout_when_active: integer 1680

If a vessel has activated an event, and the system has not received any reports from the vessel for this long, the event will automatically be deactivated (it is assumed that the vessel is no longer in AIS range). The default is never.

severity: string note

This determines the severity of the generated events. Valid values are "note", "warning", "alert".

send_ship_notification: boolean

If this box is checked, you must also specify a value for ship_notification_text. When an event is activated, the system will send a Safety Related message to the vessel in question.

ship_notification_text: string

See send_ship_notification. Note that due to technical limitations in AIS, you can only use certain characters.

WatchdogEvent: object

event: object
datasourcetype: string
id: integer (int64)
severity: string , x ∈ { note , warning , alert }
ship: ShipType
watchdog: object
id: integer (int64)
name: string
activated: GeoJSON
deactivated: GeoJSON

WatchdogEventList: object

records: object[]

WatchdogId: object

id: integer (int64)

 

Generated on 2022-02-10T12:48:09+01:00