ShipStation (v2) API Documentation
This is the complete API documentation for connecting to the ShipStation (v2) API using MindCloud's Universal API. If you are new to MindCloud, start with the Introduction to see how one API can sit in front of many different apps.
MindCloud is an integration company that offers one normalized API to access 3,100+ apps from a single place. It cleans up provider-specific quirks, keeps requests and responses consistent, and centralizes authentication so you do not need to manage separate flows for every app. Browse other apps.
Meet ShipStation (v2): Manage shipments, labels, rates, and warehouses in ShipStation. Keep reading to get started.
Quickstart
Before you run your first ShipStation (v2) request, you need three things:
- A MindCloud account — sign in or create an account at MindCloud.
- A MindCloud API Key — create one in API Keys. Keep it on your server.
- At least one ShipStation (v2) connection — create or choose one in Connections. Note its
connectionId.
Every ShipStation (v2) action uses the same URL pattern:
https://connect.mindcloud.co/v1/universal/shipStationV2/latest/actions/{actionSlug}You need a MindCloud API Key and a ShipStation (v2) connection. Then call an action such as Download file:
curl --request GET \
--url "https://connect.mindcloud.co/v1/universal/shipStationV2/latest/actions/download-file" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--get \
--data-urlencode "connectionId=$CONNECTION_ID"Every response comes back in the same envelope, with your rows in a data array:
{
"success": true,
"data": [
{ "id": "1042", "name": "Ava" }
],
"meta": {}
}After your first request works, use Shape your requests to control arguments, pagination, filtering, fields, and errors.
Authentication
Authentication has two layers. Your MindCloud API Key authenticates the request to MindCloud, sent as a Bearer token in the Authorization header. The connectionId selects the connected ShipStation (v2) account that should run the action. MindCloud stores and refreshes the ShipStation (v2) credentials behind that connection, so you never send provider tokens with your requests.
Pass connectionId in the query string for GET and DELETE actions, and in the JSON body for POST, PUT, and PATCH actions. Keep your MindCloud API Key on your server; do not ship it in browser code, mobile apps, public repositories, or logs.
ShipStation (v2) actions
All 55 published actions for this ShipStation (v2) version. Each page documents the endpoint, arguments, and response controls.
- POSTAdd tag to shipment
- POSTAdd to a batch
- PUTCancel a shipment
- POSTCreate a batch
- POSTCreate a new tag
- POSTCreate a return label
- POSTCreate a webhook
- POSTCreate custom package type
- POSTCreate manifest
- DELETEDelete a custom package by id
- DELETEDelete a scheduled pickup
- DELETEDelete batch by id
- DELETEDelete webhook by id
- GETDownload file
- POSTEstimate rates
- GETGet batch by external id
- GETGet batch by id
- GETGet batch errors
- GETGet carrier by id
- GETGet carrier options
- GETGet label by id
- GETGet label tracking information
- GETGet manifest by id
- GETGet pickup by id
- GETGet rate by id
- GETGet shipment by external id
- GETGet shipment by id
- GETGet shipment rates
- POSTGet shipping rates
- GETGet tags
- GETGet warehouse by id
- GETGet webhook by id
- GETList batches
- GETList carrier package types
- GETList carrier services
- GETList carriers
- GETList custom package types
- GETList labels
- GETList manifests
- GETList scheduled pickups
- GETList Shipments
- GETList warehouses
- GETList webhooks
- POSTProcess batch id labels
- POSTPurchase label
- POSTPurchase label with rate id
- POSTPurchase label with shipment id
- POSTRemove from batch
- DELETERemove tag from shipment
- POSTSchedule a pickup
- POSTStop tracking a package
- PUTUpdate a webhook
- PUTUpdate batch by id
- PUTUpdate custom package type by id
- PUTVoid a label by id
Related apps
More Commerce apps on the Universal API, behind the same REST shape. Or browse all apps.