# Scurri Platform API

This API allows you to manage consignments, including creating, updating, and retrieving details about shipments including labels and customs invoices.

## Authentication
All requests must be authenticated using either Basic Auth or API token-based authentication. If you have been provided with an API token, you should use token-based authentication.

### API Token
With API token-based authentication, you must include the token in the Authorization header as an API token, e.g. Authorization: token YOUR_API_TOKEN.
Failed requests will return a 401 HTTP code with WWW-Authenticate: Basic response header.


### Basic Auth
With Basic Auth, you have to send the username and password base64-encoded in the standard Basic manner, e.g. Authorization: Basic YXBpdGVzdDphcGkgcGFzc3dvcmQgdGVzdA==.

Here is some sample code in Python to generate the value of the header:
```python
> import base64
> username = 'apitest'
> password = 'api-test-password'
> print(base64.b64encode((username + ':' + password).encode()).decode())
YXBpdGVzdDphcGktdGVzdC1wYXNzd29yZA==
```


Version: 2026.1

## Servers

Scurri Sandbox Environment
```
https://sandbox.scurri.co.uk
```

## Security

### TokenAuth

[object Object]

Type: apiKey
In: header
Name: Authorization

## Download OpenAPI description

 - [Scurri Platform API](https://docs.scurri.com/_bundle/connect/consignments-api/versions/2026.1/openapi.yaml)

## Carriers

 - [GET /_api/v1/company/{company_slug}/carriers/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/carriers/list_available_carriers.md): List all the carriers for the logged in user
## Carrier Services

 - [GET /_api/v1/company/{company_slug}/carrierservices/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/carrier-services/list_available_carrier_services.md): List all the carrier services for the logged in user
## Warehouses

 - [GET /_api/v1/company/{company_slug}/warehouses/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/warehouses/list_available_warehouses.md)
## Consignments

 - [GET /_api/v1/company/{company_slug}/consignments/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignments/listconsignments.md): You can use this API call to retrieve the list of consignments in Scurri. Pagination is provided via the offset and limit GET parameters. For the `offset`, we don't use an integer value but instead us
 - [POST /_api/v1/company/{company_slug}/consignments/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignments/importconsignment.md): Creates a new consignment (shipment) for the company. The consignment can be allocated or unallocated, domestic or international.
 - [GET /_api/v1/company/{company_slug}/consignment/{shipmentIdentifier}/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignments/getconsignmentdetails.md): Retrieves details of a specific consignment (shipment).
 - [PUT /_api/v1/company/{company_slug}/consignment/{shipmentIdentifier}/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignments/updateconsignment.md): Updates a consignment. Can be used to allocate or unallocate the consignment.
 - [DELETE /_api/v1/company/{company_slug}/consignment/{shipmentIdentifier}/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignments/cancelconsignment.md): Cancels a consignment, taking any necessary actions on the carrier side
## Consignment Documents

 - [Available label formats](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignment-documents/available-label-formats.md): ## Available label formats The resulting documents are returned as strings within the JSON response. These are plaintext in the case of ZPL labels, all other formats are base64-encoded binary files. L
 - [Customs Invoice Documents](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignment-documents/customs-invoice-documents.md): ## Customs Invoice Documents Scurri will return the documents the carrier requires, only if the carrier does require them for the specific consignment.Another thing to note about customs invoice docum
 - [Natively Supported ZPL Carriers](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignment-documents/natively-supported-zpl-carriers.md): ## Natively Supported ZPL Carriers - An Post - Colissimo - Deutsche Post - DPD - DPD Germany - DPD Ireland - DX - Fastway - Generic Carrier - Hermes - Interlink - ITD Carrier - P2P Trakpak - ParcelFor
 - [GET /_api/v1/company/{company_slug}/consignment/{shipmentIdentifier}/documents/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/consignment-documents/getconsignmentdocuments.md): Retrieves documents (e.g., labels) for a consignment. Supports filtering by document type and invoice quantity.
## Manifests

 - [POST /_api/v1/company/{company_slug}/manifest/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/manifests/createmanifest.md): Initiates the manifest process for a given carrier and warehouse, specifying the consignments to include in the manifest.
 - [GET /_api/v1/company/{company_slug}/manifest/{manifest_id}/documents/](https://docs.scurri.com/connect/consignments-api/versions/2026.1/openapi/manifests/getmanifestdocuments.md): You can use this API call to get the manifest documentation (as an A4-size PDF file) that you need to hand-in to the carrier. Scurri will return the correct documentation for the specified carrier.
