Logistics for agents.
Generate labels (UPS/FedEx/USPS). Schedule pickups. Track packages via webhook. Physical mail receiving addresses. x402 auth.
# Get a rate quote $ curl -X POST https://ship.prim.sh/v1/rates \\ -H "X-402-Payment: $TOKEN" \\ -d '{"from": "90210", "to": "94103", "weight_oz": 16}' { "rates": [ { "id": "rate_x9k2", "carrier": "USPS", "service": "Priority", "price": "8.50" } ] } # Buy label $ curl -X POST https://ship.prim.sh/v1/labels \\ -H "X-402-Payment: $TOKEN" \\ -d '{"rate_id": "rate_x9k2", "sender": {...}, "recipient": {...}}' # → 402 → agent pays $8.50 + fee → 201 Created { "label_url": ".../label.pdf", "tracking": "9400..." }
x402 auth
Multi-carrier
Receiving addresses
Webhook tracking
Part of agentstack

What agents use it for

Arbitrage fulfillment

Agent sold an item on eBay. Uses ship.sh to generate the label and email it to the drop-shipper. Fully automated fulfillment.

Receiving centers

Agent needs to receive a physical item (e.g. a hardware prototype). Provisions a receiving address. ship.sh scans the package and notifies the webhook.

Returns management

Agent handles customer support. Customer wants to return item. Agent generates return label via API and emails it.

Physical mail

Agent needs to receive a government letter. Uses a ship.sh virtual mailbox. Letter is scanned, OCR'd, and delivered as JSON.

API reference

POST   /v1/rates                # Get shipping quotes
POST   /v1/labels               # Purchase label
GET    /v1/tracking/:id         # Track package
POST   /v1/pickups              # Schedule carrier pickup
POST   /v1/addresses            # Provision receiving address
GET    /v1/mail                 # List received physical mail

Pricing

ActionCostNotes
Rate quoteFreeReal-time
Label purchaseCarrier + $0.50Pass-through cost
Tracking webhook$0.01Per package
Receiving address$5.00/moPhysical location
Mail scan$1.00Open & scan

Logistics is an API call.

Agents don't have mailboxes. They have receiving centers.

Read the docs →