All APIs require authentication, which is delegated to Auth0. Before any of the following external APIs can be accessed, the requestor needs to authenticate using a client id and client secret. The returned bearer token is then added to the request headers.
Screen APIs
The Screen APIs allow access to Trade Check, Pre-Arrival Check and Vessel Health Check submissions, as well as request their status.
Usage
To use the Screen APIs, an account is required to obtain an Access Token by authenticating. All requests must be formatted as JSON and contain the following headers:
Header Name | Header Value | Optional | Comments |
Authorization | Bearer <access-token> | false |
|
Content-Type |
| false |
|
Each response will have the following structure, where data field will contain the actual data payload.
Property Name | Property Type | Can be Empty |
Success | bool | false |
ErrorMessage | String? | true |
Data | Payload Data Type | tru |
Example response including data:
{
"success": true,
"errorMessage": null,
"data": {
"uniqueIdentifier": "c91cd0bd-cf61-46fb-91bc-b6ba1a9af3a0"
}
}
Response Codes
Http Response Code | Description |
200 | Successful |
400 | Bad Request – Missing/invalid input parameters |
401 | Unauthenticated – the authentication access token is missing or expired |
403 | Unauthorized – the user is logged in successfully, however does not have permission to access the requested resource. |
500 | Unexpected error – please contact support along with any returned error messages |
Submit Trade Check
Create a new trade check. Trade check will be created for the user associated to the client access token.
Request Uri: [HttpPost] /api/tradecheck/v1
Request:
Property Name | Property Type | Optional | Comments |
VesselIMO | string | false | Vessel International Maritime Organization Number |
RequestedOnBehalfOfCompanyName | string? | true | Create Trade Check on behalf of another company |
RequestedOnBehalfOfName | string? | true | Create Trade Check on behalf of another company |
RequestedOnBehalfOfEmail | string? | true | Create Trade Check on behalf of another company |
LoadPortExternalCode? | string | true | Load port |
EstimatedDateOfLoad | date? | true | Estimated date of load |
DischargePort? | string | true | Discharge port |
EstimatedDateOfDischarge | date? | true | Estimated date of discharge |
CargoTypeExternalCode? | string | true | Cargo type |
Berth | string? | true | Berth |
IsConfirmed | bool | false | Is Trade Check confirmed |
Response:
Property Name | Property Type | Can Be Empty | Comments |
UniqueIdentifier | String? | True | If the trade check creation request was successful, this will contain an unique identifier for the new submission |
Notes:
- Any codes required are provided by their respective APIs, for instance CargoTypeExternalCode can be retrieved from the CargoType API documented below.
- Any fields in the request body which are marked with a ‘?’ are optional.
- When the trade check request is submitted, the creation part of the submission is queued. The uniqueIdentifier in the response can be used to query the trade check creation status by calling the Get TradeCheck Status API.
Get Trade Check Status
Get the creation status of a previously created Trade Check.
Request Uri: [HttpGet] /api/tradecheck/v1/{UniqueCode}
Request: empty
Response:
Property Name | Property Type | Can Be Empty |
UniqueIdentifier | string | false |
RequestTimestamp | datetime | false |
SafetyScore | decimal? | true |
GhgRating | string? | true |
GhgRatingVerification | string? | true |
InspectionStatus | string? | true |
InspectionExpiryDate | datetime? | true |
RequestedOnBehalfOfCompanyName | string? | true |
RequestedOnBehalfOfName | string? | true |
RequestedOnBehalfOfEmail | string? | true |
CriticalRules | Rule[] | true |
CriticalRuleFailedCount | int | false |
SoftRules | Rule[] | true |
SoftRuleFailedCount | Int | false |
Rules:
Property Type | Can Be Empty | Comments | |
Timestamp | DateTime | false |
|
Outcome | string | false |
|
IsSuccessful | string | false |
|
IsInformationRule | Bool | false |
|
Name | string | false |
|