Skip to main content

Introduction

Welcome to the Cargors API documentation.

The Cargors API follows REST principles. Send JSON request bodies with Content-Type: application/json. Responses are always JSON objects (a single resource or an array nested in the response).

Shippers and carriers use different authentication and integration flows. Use the section that matches your role.

Need a quick live rate without an API key? Use the Public Rates API: one GET request with pickup, delivery, and number of pallets.

AI assistants / LLMs: start at /llms.txt for discovery rules (rates only, no carrier names, no bookings).

Shippers vs carriers​

ShippersCarriers
PurposeCreate shipments, request quotes, track loads, download labelsReceive assigned shipments, update status, upload POD
PortalYes — Cargors Portal for account and API key managementNo portal access for API key management
How to get an API keyShipper Generate API key — portal or APICarrier Generate API key — API only
GuideShipper usage guideCarrier usage guide

Prerequisites​

  • An environment for HTTP requests (Postman, curl, or your own client)
  • Shippers: a Cargors Portal account and/or Basic Auth credentials
  • Carriers: Basic Auth credentials from Cargors (carriers do not create keys in the portal)

Authentication (all APIs)​

After you have an API key, send it on every request:

  • x-api-key: <API_KEY_VALUE>

All API requests must use HTTPS. Requests without authentication fail.

Generate your key using the guide for your role:

Endpoints​

Testing and live traffic use the same API base URL. You choose Development or Production when you generate the key (keyMode), not by switching hosts.

URL
API base URLhttps://app.cargors.com/api/edi
Portal (shippers only — account & API key management)https://portal.cargors.com/

Development vs Production API keys​

Key modeBehavior
DevelopmentValidates the request payload and returns a sample response. No real shipment or order is created. Use while integrating.
ProductionCreates real shipments (shipper APIs) / runs live operations. Requires Go live access where applicable.

Ready to go live? After Development-key testing, email operations@cargors.com to request Go live access. Once enabled, you can generate Production API keys.

Error handling​

Cargors API uses standard HTTP status codes. In general, 2xx means success and 4xx means a client error. Error bodies include a JSON object with an errors array. A 5xx status means something went wrong on our side.

Example error payload

{
"errors": [
{
"code": "unauthorized",
"title": "Authorization is required"
}
]
}