Restful APIs

V6 provides a comprehensive set of APIs conforming to Restful standard.

To access the API, the client application firstly requests an API key by contacting the transport company, providing the functionalities the client application wishes to perform.

 

For developers: To access the sandbox (test) environment, please contact the transport company for details. Many transport companies using V6 designate https://transport-company-domain/v6-api-test/rest as their sandbox environment. (In that case, the client application when developing in the sandbox needs to replace v6-api/rest with v6-api-test/rest, and change to v6-api/rest when going live.

The base URL for API is

https://transport-company-domain/v6-api/rest/

The apikey must be included in the "Authorization" header of every request, in the below form:

Authorization:ApiKey <provided-apikey>

Example:

curl -H "Authorization:ApiKey 12345678910" https://transport-company-domain/v6-api/rest/consignments/VHRJX1000

Http Response Code:

Successful : 200 (general), 201 (created),  204 (no content)

Unauthorized: 401 (missing API key or API key is not authorised, expired or disabled)

Too many requests: 429

Bad request: 400

Violating data constraints

There are some constraints that submitted data must follow, for example some malformed data errors but not all:

  • Missing required fields,

  • Unrecognised fields,

  • string value exceed maximum length or shorter than minimum length,

  • number is smaller than minimum value or larger than maximum value

  • and some other logical constraints (e.g. pickup date must be before delivery date).

All the requests breaking the these rules will result in Bad Request (400). The corresponding responses also contain intuitive error messages informing which fields do not follow which rules.

The format of bad request response should look like following JSON

{

          "httpStatusCode": 400,

          "msg": "Bad request"

          "violations": {

                    //a list of violations

                    [

                    {fieldName} - {error} - {suggestion},

                    ...

                    ]

          }

}

Example of Bad Request response:

{

          "violations": [

          "fromDate - required field - must exist and must not be empty",

          "fromDate, toDate - invalid date range - fromDate date has to be before toDate",

          "toDate - required field - must exist and must not be empty"

          ],

          "httpStatusCode": 400,

          "msg": "Bad Request"

}

1/96 Jephson Street, Toowong

Call us free: 1800 666 490

apple.png
android.png
linkedin.png
youtube.png
omnix-logo.png