Skip to main content
This guide walks you through getting your API credentials and making your first rate request.

Prerequisites

You need an active ShipPeek account with at least one carrier configured. If you don’t have an account, sign up at shippeek.com.

Step 1: Get your API credentials

Your API token is a combination of your client ID and client secret in the format client_id.client_secret. You can find these in your ShipPeek dashboard.

Step 2: Make your first rate request

Use the sandbox environment to test without affecting live shipments.
curl -X POST https://api.shippeek.dev/rates \
  -H "Authorization: Bearer YOUR_CLIENT_ID.YOUR_CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "originPostalCode": "60601",
    "originType": "business dock",
    "destPostalCode": "90210",
    "destType": "business dock",
    "items": [
      {
        "weight": 500,
        "freightClass": 70,
        "length": 48,
        "width": 40,
        "height": 48,
        "quantity": 1,
        "package": "Pallets_48x40"
      }
    ]
  }'

Step 3: Read the response

A successful response returns a quote ID and an array of rates from each carrier:
{
  "id": "570665116d0bfce422911668",
  "rates": [
    {
      "id": "34575116d0afce4229116467",
      "status": "ok",
      "mode": "LTL",
      "total": 123.45,
      "days": 3,
      "carrier": "Estes Express Lines",
      "carrierCode": "exla",
      "serviceType": "Standard",
      "charges": [
        { "name": "linehaul", "amount": 1000 },
        { "name": "discount", "amount": -900 },
        { "name": "fuel", "amount": 23.45 }
      ]
    }
  ]
}
Key fields:
  • id — Save this quote ID. You need it to book a shipment.
  • rates[].id — The rate ID. Pass this when booking to select a specific carrier and price.
  • rates[].total — Total cost in USD.
  • rates[].days — Estimated transit days.
  • rates[].charges — Itemized breakdown (linehaul, fuel, discounts, accessorials).

Step 4: Book a shipment

Once you have a rate, book it by passing the quote ID and rate ID:
curl -X POST https://api.shippeek.dev/book \
  -H "Authorization: Bearer YOUR_CLIENT_ID.YOUR_CLIENT_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "570665116d0bfce422911668",
    "rateId": "34575116d0afce4229116467",
    "schedulePickup": true,
    "originCompany": "Acme Warehouse",
    "originAddress": "123 Main St",
    "originContactName": "John Smith",
    "originContactPhone": "312-555-0100",
    "originDockHoursOpen": "9:00 AM",
    "originDockHoursClose": "5:00 PM",
    "destCompany": "West Coast Distribution",
    "destAddress": "456 Oak Ave",
    "destContactName": "Jane Doe",
    "destContactPhone": "310-555-0200"
  }'
The response includes a PRO number, BOL, and pickup confirmation.

Next steps

Authentication

Understand API key formats and token management.

Rate shopping examples

See more rate request examples with accessorials, parcel, and streaming.

Carrier guides

Learn about carrier-specific requirements and features.

API Reference

Full endpoint documentation with request/response schemas.