API documentation | API docs for agents | OpenAPI 3.1

POST /api/v1/carriers

ark.create_carrier

Creates an organization carrier profile.

Availability
Expanded preview
Scopes
carriers:write
ARK permissions
canCreateCarrier
Team visibility
Not entity-scoped
Idempotency-Key
Required for this write
Approval
No MCP approval on REST API-token calls
Rate limit
API credential and organization budgets

Parameters

Idempotency-Keyheaderstringrequired
Required for external write operations. Reuse the same key only for exact retries of the same request body.
min length: 1; max length: 200

Request body

activeboolean

default: true

doNotUseboolean

default: false

namestringrequired

min length: 1; max length: 200

dbaNamestring | null

max length: 200

codestring | null

max length: 50

notesstring | null

max length: 5000

dotNumstring | null

max length: 30

mcNumstring | null

max length: 30

dispatchEmailstring | null

max length: 500

dispatchPhonestring | null

max length: 50

domicileCountrystring

one of: USA, CAN, MEX; default: "USA"

operatingCountriesarray<string>

min items: 1; max items: 3

scacstring | null

max length: 30

caatstring | null

max length: 100

sctPermitstring | null

max length: 100

nscNumberstring | null

max length: 100

nscProvincestring | null

max length: 100

gstHstNumberstring | null

max length: 100

defaultCurrencystring

one of: USD, CAD, MXN; default: "USD"

Example request

Shell
curl -X POST 'https://arktms.com/api/v1/carriers' \
  -H "Authorization: Bearer $ARK_API_TOKEN" \
  -H "Idempotency-Key: <unique-key>" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "<name>"
}'

Success response

Created carrier

objectstringrequired

one of: api_response

okbooleanrequired

one of: true

api_versionstringrequired

one of: 2026-05-31

request_idstringrequired
dataobjectrequired
data.idstringrequired

format: uuid

data.namestring | nullrequired
data.dbaNamestring | nullrequired
data.notesstring | nullrequired
data.codestring | nullrequired
data.dotNumstring | nullrequired
data.mcNumstring | nullrequired
data.primaryEmailstring | nullrequired

Primary carrier email from the carrier address record.

format: email

data.primaryPhonestring | nullrequired

Primary carrier phone from the carrier address record.

data.dispatchEmailstring | nullrequired
data.dispatchPhonestring | nullrequired
data.activebooleanrequired
data.doNotUsebooleanrequired
data.domicileCountrystringrequired

one of: USA, CAN, MEX

data.operatingCountriesarray<string>required
data.scacstring | nullrequired
data.caatstring | nullrequired
data.sctPermitstring | nullrequired
data.nscNumberstring | nullrequired
data.nscProvincestring | nullrequired
data.gstHstNumberstring | nullrequired
data.defaultCurrencystringrequired

one of: USD, CAD, MXN

data.paymentMethodstring | nullrequired
data.paymentTermIdstring | nullrequired

format: uuid

data.factoringIdstring | nullrequired

format: uuid

data.createdAtstring | nullrequired

format: date-time

data.modifiedAtstring | nullrequired

format: date-time

Errors

HTTP 400
Invalid request
HTTP 401
Authentication required
HTTP 403
Permission, scope, team, or entitlement denied