Ship Jay developer docs
Ship Jay lets you buy shipping labels, track packages and handle returns from your own systems. The API, the webhooks and the MCP server all act on the same account as the Ship Jay app: the same wallet, the same shipping rules and the same audit trail. Anything an API key does shows up in your audit trail.
The base URL is https://shipjay.com/api/v1. Requests use JSON, amounts are integer cents, and every request carries a bearer key.
Choose your path
Section titled “Choose your path”Path to production
Section titled “Path to production”-
Create a key with only what it needs. Pick the smallest set of permissions, set a per label and a per day spending limit if the key can buy, and set an expiry date. See Authentication and API keys.
-
Build the quote then buy flow. Quote a shipment, choose a rate, then buy it with an
Idempotency-Keyso a retry can never buy twice. See Buying labels safely. -
Listen for events. Add a webhook endpoint, verify the
ShipJay-Signatureheader and answer with a 2xx status quickly. See Webhooks. -
Handle failures. Read the error code, respect
Retry-Afteron a 429 and log therequest_idof every failed call. See Errors and Rate limits and abuse protection.
Developer tools
Section titled “Developer tools”Conventions
Section titled “Conventions”- Amounts are integers in cents.
1250means 12.50 in the account currency. - Timestamps are ISO 8601 strings in UTC.
- Lists return
{ "data": [...], "next_cursor": "..." }. Passnext_cursorback ascursorto get the next page. Anullcursor means there are no more rows. - Every response has an
X-Request-Idheader. Quote it when you contact support.
© 2026 Ship Jay. All rights reserved. Created & Developed by WCWS Internet
