Veslink standardizes voyage communications to help you collect and analyze current positions and other critical voyage data and share information with a network of trusted partners.
Note: The API requires separate licensing.
The API is a standard set of web services, implemented as a set of RESTful interfaces, that allow external systems to retrieve information and submit Veslink form XML. The available endpoints and the actions available are documented at https://api.veslink.com/Help.
The methods available via the API are mainly GET and POST (with a PATCH method available to act on IMOS Dataforms).
The API supports form XML for all standard Veslink forms.
Enabling User-level Access to the API
Access to the API is administered per user. In order to use the API, the user must belong to a Company defined in Veslink and have the API Read, API Write, and/or API IMOS Message General Permissions enabled.
If a user has API access, there is no additional security assigned to endpoints. The exception to this policy is for reports. The Administrator can assign or revoke access to reports on a per-user basis. On top of the report access privileges, the creator of a report can make the report private or public, which adds another layer of access security on reports.
Managing Access to the API
The API is protected from unauthorized access by two factors of authentication:
An API Token, which is generated for a Veslink user account
An IP Allowlist entry, specifying allowed networks or machines for API access
Once a user's API Token is generated, it will not expire; however, each user has access to their own API Token in the same way and can refresh or clear the token as often as desired. The Administrator can revoke API access for a user by modifying the user's Veslink Permissions.
Creating Your API Token
You must request a unique API token to authenticate with all API calls. The API Token is passed in all of the query strings for each call, and is valid until you clear it.
Hover over the Profile menu and click My Profile.
In the Veslink API section, click the Request New API Token link.
Your API Token appears, along with the date and time it was generated:
To request a new API Token at any time, click the Request New API Token link.
To deactivate your API Token, click the Clear API Token link.
Using the Web Service
You can make web service calls to obtain data to include during form submission. These master data values include:
Units of Measure
Veslink Vessels: Vessels activated by a Client for use with Veslink
Ports: Port information from the proprietary Veslink distance tables
Companies: Companies you are partnered with
Cargoes: Commodity details (not cargo buy/sell contracts) specific to a Client database
Agents: Get authorized port calls and submit forms
Fuel Types: Fuel types and consumption categories
Financials: Currency and ledger codes
Port Activities: Descriptions of activities in port, specific to a Client database
Using these relevant master data, you can create form XML using the Standard Form XSDs and submit forms to Veslink.
API Monitoring and Security
Veson Nautical has added monitoring and security enhancements to the API, namely:
Programmatic access to the API logs for a given account, for the purposes of monitoring compliance, uncovering misuse, and gathering data for analytics (expected release in February 2020; subject to change without notice).
The option to embed the API Token in the authorization header of an API call. The default API syntax includes the API Token in the query parameters, while a new option embeds the token as a bearer token in an API header. This option removes the API Token from browser address bars, router logs, and other sources where the token may be exposed.
API Planned Enhancements
Note: Future enhancements are subject to change without notice.
Plans for enhancements for the API include role-based security, user-level access controls, and an API gateway to enhance API security, monitoring, and performance management.
Here is the current prioritized list for those enhancements:
API role-based security
API user-level access controls
API Reports Raw Column Names
If enabled, getting reports via the API will assign column names based on table.column format.
Enable Json Path Query
When enabled, Report Designer reports will have the Optimize query for document export option available. This makes exporting to XML via datashed and the API faster for certain reports. Requires SQL Server 2016 or newer.