Changes & Deprecations
The introduction of new REST APIs in version 2 and the move to an operations based model has resulted in some version 1 paths being flagged for deprecation.
It is recommended that applications and plugins referencing these deprecated paths update their operation to reference the version 2 paths.
Changes
The following changes have been implemented with the introduction of Resources API and apply to applications using the ./signalk/v2/resources
endpoint.
Note: These changes DO NOT impact applications using the ./signalk/v1/resources
endpoint.
1. Resource ID prefix assignment
The version 1 specification defined resource Ids with the following format urn:mrn:signalk:uuid:<UUIDv4>
.
e.g. urn:mrn:signalk:uuid:18592f80-3425-43c2-937b-0be64b6be68c
The Resource API has dropped the use the prefix and ids are now just a uuidv4 value.
e.g. 18592f80-3425-43c2-937b-0be64b6be68c
This format is used for both accessing a resource e.g. /signalk/v1/api/resources/waypoints/18592f80-3425-43c2-937b-0be64b6be68c
as well as the value within an href
attribute.
Example:
{
"name": "...",
"descripton": "...",
"href": "/resources/waypoints/18592f80-3425-43c2-937b-0be64b6be68c",
...
}
2. Resource Attributes
The Resources API has updated the definition of the following resources and may break applications that simply shift to using the v2
api without catering for the changes:
- routes: removed the
start
,end
properties. - waypoints: removed
position
attribute, addedname
,description
andtype
attributes. - regions: removed
geohash
attribute, addedname
anddescription
properties. - notes: removed
geohash
andregion
attributes, addedhref
andproperties
attributes. - charts: There has been a significant changes to include support for WMS, WMTS and TileJSON sources.
Please see the Resources OpenAPI definition for details.
Deprecations:
1. courseGreatCircle, courseRhumbline paths
With the introduction of the Course API the following paths should now be considered deprecated:
/signalk/v1/api/vessels/self/navigation/courseGreatCircle
/signalk/v1/api/vessels/self/navigation/courseRhumbline
Note: The Course API does currently maintain values in these paths for the purposes of backward compatibility, but applications and plugins referencing these paths should plan to move to using the equivalent paths under /signalk/v2/api/vessels/self/navigation/course
.