Skip to main content
Version: 1.0

Shipink API

This is Shipink API documentation. Here you will find resource addresses and explanations on how to use our API to access various parts of data which we provide to you - our customers.

Table of contents

  1. Environments
  2. Request Structure
  3. Response Structure
  4. Authentication
  5. Rate limiting
  6. Error handling

Environments

On the right side of the screen you can preview sample code that would help you make requests to retrieve the data a specific API endpoint consists of. There is two API urls, one for production and one for sandbox.

You can use Sandbox for testing purposes.

Request structure

We are using restful API practices. You can use GET method for getting data,POST method for creating data,PUT method for updating data and DELETE method for deleting data.

Requests should be made using JSON in the body, with the following headers:

'Accept: application/json'  
'Content-Type: application/json'

Response structure

Response structures from the Shipink API all follow the same format, providing a message that explains the response and the data of the response.

{
"success": true,
"meta": {
"message": "Successfully retrieved data",
"details": []
},
"data": {
"carrier": "mng",
"store": "woocommerce",
"order_id": "12345",
"tracking_number": "123456789",
}

Authentication

Shipink uses Bearer Auth Tokens to allow access to the API. You can get an API Key by connecting a Shipink API integration at:

Settings > Stores > Connect new store

After that, for successfully access to our API, you must include these API key inside of every API request to our server through a HTTP header that would typically look the example on the right.

Basicly, you can use the following HTTP header:

Authorization: Bearer <API_KEY>

You should add these headers to all of your requests to Shipink API.

Rate limiting

We limit the number of requests you can make to Shipink API to help

Error handling

You can find a list of possible generic errors that might happen in the table below. Endpoint specific errors will be documented in their own section.

Status codeDescription
400Missing Required Information
401Unauthorized
403Forbidden
404Not found
500Internal server error

Error response structure

  {
"success": false,
"meta": {
"message": "Input Validation Error"
"details": [
"address_from.city": "Given data invalid"
]
}
"data": {}
}