Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/arcbest-shipments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Arcbest Shipments API
x-refined-note:
- x-generated-from differs across the merged source definitions and was not carried
- x-refined-note differs across the merged source definitions and was not carried
version: '1.0'
description: 'Operations tagged Shipments across 2 of this provider''s published API definitions: arcbest-api.yaml, arcbest-shipments-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.arcbest.com/v2
description: ArcBest API Production
- url: https://api.arcb.com/expedite/customer
description: Production. Stated verbatim in the ArcBest customer instructions PDF ("post your client id and secret to https://api.arcb.com/expedite/customer/authorize"). GET on /authorize returns HTTP 405 Method Not Allowed, probed 2026-09-04, confirming the endpoint is live and POST-only.
- url: https://test.api.arcb.com/expedite/customer
description: Test / sandbox. "We prefer that you begin integration against the test URI https://test.api.arcb.com/expedite/customer/" - ArcBest customer instructions PDF, August 2024.
security:
- bearerAuth: []
tags:
- name: Shipments
description: Shipment booking and management
paths:
/shipments:
post:
operationId: createShipment
summary: ArcBest Create Shipment
description: Book a new LTL freight shipment and generate a Bill of Lading.
tags:
- Shipments
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ShipmentRequest'
examples:
CreateShipmentRequestExample:
summary: Default createShipment request
x-microcks-default: true
value:
quoteNumber: Q-20260419-001
shipper:
name: ACME Corp
address: 123 Main St
city: Benton
state: AR
zip: '72015'
consignee:
name: Widget Inc
address: 456 Oak Ave
city: Beverly Hills
state: CA
zip: '90210'
responses:
'200':
description: Shipment created
content:
application/json:
schema:
$ref: '#/components/schemas/Shipment'
examples:
CreateShipment200Example:
summary: Default createShipment 200 response
x-microcks-default: true
value:
proNumber: PRO-123456789
bolNumber: BOL-20260419-001
status: BOOKED
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearerAuth: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
operationId: listShipments
summary: ArcBest List Shipments
description: List shipments with optional filtering by date range and status.
tags:
- Shipments
parameters:
- name: startDate
in: query
description: Start date filter (YYYY-MM-DD)
schema:
type: string
format: date
example: '2026-04-01'
- name: endDate
in: query
description: End date filter (YYYY-MM-DD)
schema:
type: string
format: date
example: '2026-04-19'
- name: status
in: query
description: Filter by shipment status
schema:
type: string
enum:
- BOOKED
- IN_TRANSIT
- DELIVERED
- EXCEPTION
example: IN_TRANSIT
responses:
'200':
description: List of shipments
content:
application/json:
schema:
$ref: '#/components/schemas/ShipmentList'
examples:
ListShipments200Example:
summary: Default listShipments 200 response
x-microcks-default: true
value:
shipments:
- proNumber: PRO-123456789
status: IN_TRANSIT
origin: Benton, AR
destination: Beverly Hills, CA
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- bearerAuth: []
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
servers:
- url: https://api.arcbest.com/v2
description: ArcBest API Production
/shipments/status-codes:
servers:
- url: https://api.arcb.com/expedite/customer
description: Production. Stated verbatim in the ArcBest customer instructions PDF ("post your client id and secret to https://api.arcb.com/expedite/customer/authorize"). GET on /authorize returns HTTP 405 Method Not Allowed, probed 2026-09-04, confirming the endpoint is live and POST-only.
- url: https://test.api.arcb.com/expedite/customer
description: Test / sandbox. "We prefer that you begin integration against the test URI https://test.api.arcb.com/expedite/customer/" - ArcBest customer instructions PDF, August 2024.
get:
operationId: shipmentsGetShipmentStatusCodes
summary: List shipment status codes
description: Returns the shipment status code vocabulary used across tracking responses.
tags:
- Shipments
responses:
'200':
description: OK
/shipments/search:
servers:
- url: https://api.arcb.com/expedite/customer
description: Production. Stated verbatim in the ArcBest customer instructions PDF ("post your client id and secret to https://api.arcb.com/expedite/customer/authorize"). GET on /authorize returns HTTP 405 Method Not Allowed, probed 2026-09-04, confirming the endpoint is live and POST-only.
- url: https://test.api.arcb.com/expedite/customer
description: Test / sandbox. "We prefer that you begin integration against the test URI https://test.api.arcb.com/expedite/customer/" - ArcBest customer instructions PDF, August 2024.
post:
operationId: shipmentsGetShipmentsByReferenceNumbers
summary: Search shipments by reference numbers
description: After /quotes/booking-request/status returns the pro number, track the shipment with this operation. ArcBest publishes the tracking model as JSON at json-schema/arcbest-expedite-tracking-model.json.
tags:
- Shipments
requestBody:
required: true
description: The reference numbers to search on.
content:
application/json:
schema:
type: array
items:
type: string
responses:
'200':
description: OK
components:
schemas:
ShipmentList:
type: object
properties:
shipments:
type: array
items:
$ref: '#/components/schemas/Shipment'
totalCount:
type: integer
description: Total number of shipments
example: 25
ShipmentRequest:
type: object
required:
- shipper
- consignee
properties:
quoteNumber:
type: string
description: Rate quote number to use for booking
example: Q-20260419-001
shipper:
$ref: '#/components/schemas/Address'
consignee:
$ref: '#/components/schemas/Address'
items:
type: array
items:
$ref: '#/components/schemas/FreightItem'
referenceNumber:
type: string
description: Customer reference number
example: PO-98765
Address:
type: object
properties:
name:
type: string
description: Company or person name
example: ACME Corp
address:
type: string
description: Street address
example: 123 Main St
city:
type: string
description: City
example: Benton
state:
type: string
description: State abbreviation
example: AR
zip:
type: string
description: ZIP code
example: '72015'
country:
type: string
description: Country code (ISO 3166-1 alpha-2)
example: US
ErrorResponse:
type: object
properties:
message:
type: string
description: Error message
example: Unauthorized access
code:
type: integer
description: Error code
example: 401
FreightItem:
type: object
properties:
weight:
type: number
description: Weight in pounds
example: 500
freightClass:
type: string
description: NMFC freight classification
example: '70'
pieces:
type: integer
description: Number of pieces
example: 2
description:
type: string
description: Commodity description
example: Machine parts
length:
type: number
description: Length in inches
example: 48.0
width:
type: number
description: Width in inches
example: 40.0
height:
type: number
description: Height in inches
example: 36.0
Shipment:
type: object
properties:
proNumber:
type: string
description: ArcBest PRO (shipment) number
example: PRO-123456789
bolNumber:
type: string
description: Bill of Lading number
example: BOL-20260419-001
status:
type: string
description: Shipment status
enum:
- BOOKED
- PICKED_UP
- IN_TRANSIT
- OUT_FOR_DELIVERY
- DELIVERED
- EXCEPTION
example: BOOKED
quoteNumber:
type: string
description: Rate quote number used for booking
example: Q-20260419-001
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: Bearer token obtained from ArcBest API authentication
x-refined-from:
- arcbest-api.yaml
- arcbest-shipments-api-openapi.yml