Vetting API
Access RightShip vet records programmatically, including vessel details, decision outcomes, and environmental ratings at the time of each vet decision. All endpoints require authentication via a bearer token obtained through Auth0.
Overview
The Vetting API exposes vet request and decision data from the RightShip platform. It is available under the base path /api/vet/ and returns JSON-formatted responses.
One endpoint is currently available:
- GET / – retrieve a paginated list of vet records, optionally filtered by vet platform ID.
Authentication
All APIs require authentication, which is delegated to Auth0. Before any of the following external APIs can be accessed, the requestor must authenticate using the Private Key JWT flow with a registered client. The returned bearer token must then be included in the
header of every request.
To obtain API credentials, contact your RightShip account manager or reach out to the Data team via the internal request process.
Request Headers
All requests must be formatted as JSON and include the following headers:
|
Header Name |
Header Value |
Required |
Comments |
|
Authorization |
Bearer <access-token> |
Yes |
Bearer token obtained via Auth0 authentication. |
|
Content-Type |
application/json |
Yes |
|
Response Structure
Each response follows a standard envelope. The data field contains the actual payload.
|
Property Name |
Type |
Can be Empty |
|
data |
array |
Yes |
|
page_size |
integer |
No |
|
next_cursor |
string nullable |
Yes |
Response Codes
|
HTTP Code |
Description |
|
200 |
Successful |
|
400 |
Bad Request – missing or invalid input parameters. |
|
401 |
Unauthenticated – the access token is missing or expired. |
|
403 |
Unauthorized – the user is authenticated but lacks permission to access the resource. |
|
500 |
Unexpected error – contact support with any returned error messages. |
GET /
Returns a paginated list of vet records accessible to the authenticated service principal. Results can be filtered to a single vet using vet_platform_id. Use cursor and page_size to iterate through large result sets.
|
GET |
/api/vet/ |
Request Parameters
|
Parameter |
Type |
Required |
Description |
|
vet_platform_id |
integer nullable |
No |
Filter results to a single vet record by its platform ID. |
|
page_size |
integer nullable |
No |
Number of records to return per page. Defaults to a system-defined limit if omitted. |
|
cursor |
string nullable |
No |
Pagination cursor from a previous response. Pass this to retrieve the next page. |
To paginate, pass the next_cursor value from the current response as the cursor parameter in your next request. Repeat until next_cursor is null.
Vet Record Object
Each object in the data array contains the following fields, grouped by category.
|
Field |
Type |
Description |
|
IDENTIFIERS |
||
|
vet_platform_id |
integer |
Unique identifier for the vet record on the RightShip platform. |
|
external_transaction_reference |
string nullable |
External reference ID supplied by the requesting organisation at vet creation. |
|
VESSEL PARTICULARS |
||
|
vessel_name |
string nullable |
Name of the vessel at the time of the vet request. |
|
imo |
string nullable |
IMO number of the vessel. |
|
dwt |
number nullable |
Deadweight tonnage of the vessel. |
|
vessel_type |
string nullable |
Vessel type classification (e.g. Bulk Carrier, Tanker). |
|
cargo_type |
string nullable |
Cargo type associated with the vet request. |
|
year_of_build |
integer nullable |
Year the vessel was built. |
|
vin |
string nullable |
Vessel Identification Number. |
|
eni |
string nullable |
European Number of Identification (inland waterways vessels). |
|
RATINGS AT VET DECISION |
||
|
safety_score_at_vet_decision |
integer nullable |
RightShip Safety Score recorded at the time the vet decision was made. |
|
ghg_rating_at_vet_decision |
string nullable |
GHG rating (e.g. A–G) recorded at the time of the vet decision. |
|
evdi_at_vet_decision |
number nullable |
Energy Vessel Design Index value recorded at the time of the vet decision. |
|
cii_rating_at_vet_decision |
string nullable |
CII rating (e.g. A–E) recorded at the time of the vet decision. |
|
PEOPLE |
||
|
ship_manager_emails |
string[] nullable |
Email addresses of the ship manager contacts associated with the vessel. |
|
requester_full_name |
string nullable |
Full name of the user who submitted the vet request. |
|
requester_business_unit |
string nullable |
Business unit of the requester within their organisation. |
|
requester_company |
string nullable |
Company name of the requester. |
|
customer_decision_reviewer_full_name |
string nullable |
Full name of the person who reviewed and set the customer decision. |
|
last_modified_by_full_name |
string nullable |
Full name of the user who last modified the vet record. |
|
PORT & TRADE |
||
|
load_port_name |
string nullable |
Name of the load port. |
|
load_country |
string nullable |
Country of the load port. |
|
discharge_port_name |
string nullable |
Name of the discharge port. |
|
discharge_country |
string nullable |
Country of the discharge port. |
|
inco_term |
string nullable |
Incoterm associated with the vet request (e.g. CIF, FOB). |
|
DECISION & STATUS |
||
|
vet_state_internal |
string nullable |
Internal RightShip state of the vet (e.g. Approved, Rejected, Pending). |
|
customer_decision |
string nullable |
The customer's own decision recorded against the vet outcome. |
|
TIMESTAMPS |
||
|
vet_request_utc_date |
string nullable |
UTC datetime when the vet was originally requested (ISO 8601). |
|
decision_utc_date |
string nullable |
UTC datetime when RightShip issued its vet decision (ISO 8601). |
|
customer_decision_utc_date |
string nullable |
UTC datetime when the customer recorded their decision (ISO 8601). |
|
latest_state_utc_date |
string nullable |
UTC datetime of the most recent state change on the vet record (ISO 8601). |
|
record_system_time |
string nullable |
System timestamp of when the record was last written to the data store (ISO 8601). |
Example Response
{
"data": [
{
"vet_platform_id": 200314,
"external_transaction_reference": "TXN-2025-00892",
"vessel_name": "PACIFIC HORIZON",
"imo": "9876543",
"dwt": 82450.5,
"vessel_type": "Bulk Carrier",
"cargo_type": "Coal",
"year_of_build": 2015,
"vin": null,
"eni": null,
"safety_score_at_vet_decision": 4,
"ghg_rating_at_vet_decision": "B",
"evdi_at_vet_decision": 3.21,
"cii_rating_at_vet_decision": "C",
"ship_manager_emails": ["ops@pacificshipping.com"],
"requester_full_name": "Alice Tan",
"requester_business_unit": "Commodities APAC",
"requester_company": "Global Bulk Trading Ltd",
"customer_decision_reviewer_full_name": "James Okafor",
"last_modified_by_full_name": "James Okafor",
"load_port_name": "Newcastle",
"load_country": "Australia",
"discharge_port_name": "Guangzhou",
"discharge_country": "China",
"vet_state_internal": "Approved",
"customer_decision": "Accepted",
"inco_term": "CFR",
"vet_request_utc_date": "2025-04-01T06:00:00Z",
"decision_utc_date": "2025-04-01T09:15:00Z",
"customer_decision_utc_date": "2025-04-01T11:30:00Z",
"latest_state_utc_date": "2025-04-01T11:30:00Z",
"record_system_time": "2025-04-01T11:31:05Z"
}
],
"page_size": 25,
"next_cursor": "eyJ2ZXRfaWQiOjIwMDMxNX0"
}