Process labels in bulk and receive a large number of labels and customs forms in bulk responses. Batching is ideal for workflows that need to process hundreds or thousands of labels quickly.
ShipStation API v2 (2.0.0)
Download OpenAPI description
Overview
License
Languages
Servers
Mock server
https://docs.shipstation.com/_mock/openapi/
Production
https://api.shipstation.com/
Query
Filter by ship-to country code (2-letter ISO country code)
Example: ship_to_country_code=US
Filter by ship date start (inclusive)
Example: ship_date_start=2024-01-01T00:00:00Z
Filter by ship date end (inclusive)
Example: ship_date_end=2024-01-31T23:59:59Z
Filter by creation date start (inclusive)
Example: create_date_start=2024-01-01T00:00:00Z
Filter by creation date end (inclusive)
Example: create_date_end=2024-01-31T23:59:59Z
- Mock serverhttps://docs.shipstation.com/_mock/openapi/v2/fulfillments
- Productionhttps://api.shipstation.com/v2/fulfillments
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.shipstation.com/_mock/openapi/v2/fulfillments?ship_to_name=string&ship_to_country_code=US&shipment_number=string&shipment_id=se-12345678&fulfillment_id=se-12345678&batch_id=se-12345678&order_source_id=se-12345678&fulfillment_provider_code=string&tracking_number=string&ship_date_start=2024-01-01T00%3A00%3A00Z&ship_date_end=2024-01-31T23%3A59%3A59Z&create_date_start=2024-01-01T00%3A00%3A00Z&create_date_end=2024-01-31T23%3A59%3A59Z&page=1&page_size=25&sort_dir=asc&sort_by=created_at' \
-H 'api-key: YOUR_API_KEY_HERE'Response
application/json
{ "fulfillments": [ { … } ], "page": 1, "pages": 10, "total": 100, "links": { "first": { … }, "last": { … }, "prev": { … }, "next": { … } } }
Bodyapplication/jsonrequired
Tracking number for the shipment
Example: "1Z12345E1234567890"
Carrier code (e.g., "ups", "fedex", "usps")
Example: "ups"
Ship date (defaults to current date if not provided)
Example: "2024-01-15T10:00:00Z"
- Mock serverhttps://docs.shipstation.com/_mock/openapi/v2/fulfillments
- Productionhttps://api.shipstation.com/v2/fulfillments
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.shipstation.com/_mock/openapi/v2/fulfillments \
-H 'Content-Type: application/json' \
-H 'api-key: YOUR_API_KEY_HERE' \
-d '{
"fulfillments": [
{
"shipment_id": "se-12345678",
"tracking_number": "1Z12345E1234567890",
"carrier_code": "ups",
"ship_date": "2024-01-15T10:00:00Z",
"notify_customer": true,
"notify_order_source": true
}
]
}'Response
application/json
{ "has_errors": false, "fulfillments": [ { … } ] }
Webhooks
Webhooks are a powerful feature that can save you from sending repeated polling requests to check on the state of something. With webhooks, ShipStation will automatically contact your servers when the stage changes. This can include parcel tracking events, notification when a batch operation completes, and more.
Operations