Cargomatic Carrier API
Endpoints for Cargomatic Carriers and Drivers
Endpoints for Cargomatic Carriers and Drivers
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/cargomatic-carrier-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Cargomatic Public Authorization Carrier API
description: '## Welcome to the Cargomatic API!
Our quoting, booking, and status APIs allow you to automate common workflows similar to features available within the Cargomatic portal.
Please reach out to [apisupport@cargomatic.com](apisupport@cargomatic.com) for sandbox credentials to get started.'
version: 3.0.0
servers:
- url: https://api-acceptance.cargomatic.com
tags:
- name: Carrier
description: Endpoints for Cargomatic Carriers and Drivers
paths:
/shipments/appointment:
post:
operationId: updateAppointment
summary: Updates an existing appointment with a new status, start time, and/or end time. Requires the client to send at least one of new `windowStart` time, new `windowEnd` time, or `appointmentConfirmed`.
tags:
- Carrier
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateShipmentRequest'
responses:
'200':
description: 'Status Code 200: Successful Response - the request was successful!'
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateShipmentResponse'
'400':
description: 'Status Code 400: Bad Request Response - the request header and/or body is invalid'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'500':
description: 'StatusCode 500: Internal Server Error Response - there''s a problem with the Public API service'
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
/shipments/accept:
post:
operationId: acceptShipment
summary: Accepts a Shipment
tags:
- Carrier
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AcceptShipmentRequest'
responses:
'200':
description: 'Status Code 200: Successful Response - the request was successful!'
content:
application/json:
schema:
$ref: '#/components/schemas/AcceptShipmentResponse'
'400':
description: 'Status Code 400: Bad Request Response - the request header and/or body is invalid'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'500':
description: 'StatusCode 500: Internal Server Error Response - there''s a problem with the Public API service'
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
/carrier/{carrierid}/driver:
post:
operationId: createDriver
summary: Creates a new Driver
tags:
- Carrier
security:
- bearerAuth: []
parameters:
- name: carrierid
in: path
description: Id of the carrier
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDriverRequest'
responses:
'200':
description: 'Status Code 200: Successful Response - the request was successful!'
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDriverResponse'
'400':
description: 'Status Code 400: Bad Request Response - the request header and/or body is invalid'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'500':
description: 'StatusCode 500: Internal Server Error Response - there''s a problem with the Public API service'
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
/shipment/assign:
post:
operationId: assignDriver
summary: Assigna a Driver to a Shipment
tags:
- Carrier
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AssignDriverRequest'
responses:
'200':
description: 'Status Code 200: Successful Response - the request was successful!'
content:
application/json:
schema:
$ref: '#/components/schemas/AssignDriverResponse'
'400':
description: 'Status Code 400: Bad Request Response - the request header and/or body is invalid'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'500':
description: 'StatusCode 500: Internal Server Error Response - there''s a problem with the Public API service'
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
components:
schemas:
AcceptShipmentRequest:
type: object
properties:
shipmentReference:
type: string
example: foo
InternalServerErrorResponse:
type: object
properties:
message:
type: string
example:
message: Internal Server Error
BadRequestResponse:
type: object
properties:
message:
type: string
example:
message: Invalid Request Body
CreateDriverRequest:
type: object
properties:
first_name:
type: string
example: john
last_name:
type: string
example: doe
username:
type: string
example: fakedriver123
email:
type: string
example: fake@gmail.com
password:
type: string
example: TestDriver1234
cdl_number:
type: string
example: 33333333
receive_offers:
type: boolean
phone:
type: string
example: 5555555555
carrier:
type: string
example: Cargomatic (demo)
AcceptShipmentResponse:
type: object
properties:
shipmentId:
type: string
example: foop
status:
type: string
example: created
carrierId:
type: string
example: 60b7a951c2b827f9f5179454
stops:
type: array
items:
type: object
properties:
stopId:
type: string
example: 60b7a951c2b827f9f517945c
status:
type: string
example: unstarted
locationName:
type: string
example: Cargomatic HQ
locationAddress:
type: string
example: 211 E. Ocean Blvd Long Beach CA 90802
windowStart:
type: string
format: date-time
example: 2021-06-02 15:52:49.258000+00:00
windowEnd:
type: string
format: date-time
example: 2021-06-02 19:52:49.258000+00:00
appointmentConfirmed:
type: boolean
complete:
type: boolean
missingDocs:
type: boolean
UpdateShipmentRequest:
type: object
properties:
shipmentReference:
type: string
example: 61f468826a139d5cfe58f0a2
stopId:
type: string
example: 61f468806a139d5cfe58f09d
windowStart:
type: string
format: date-time
example: 2022-03-28 19:00:00+00:00
windowEnd:
type: string
format: date-time
example: 2022-03-28 23:00:00+00:00
appointmentConfirmed:
type: boolean
UpdateShipmentResponse:
type: object
properties:
success:
type: boolean
stop:
type: object
properties:
stopId:
type: string
example: 64ac4a958bea65dbe619482b
status:
type: string
example: unstarted
locationName:
type: string
example: 21660 Copley
locationAddress:
type: string
example: 21660 Copley Dr Diamond Bar CA 91765 USA
windowStart:
type: string
format: date-time
example: 2022-07-14 19:00:00+00:00
windowEnd:
type: string
format: date-time
example: 2022-07-14 23:00:00+00:00
appointmentConfirmed:
type: boolean
complete:
type: boolean
missingDocs:
type: boolean
off_site:
type: boolean
sequence:
type: integer
format: int32
example: 2
AssignDriverRequest:
type: object
properties:
offer_id:
type: string
example: 64ad7c876c1af2d3fd81230d
driver_id:
type: string
example: 64ac71ddb111de5422ff31ac
AssignDriverResponse:
type: object
properties:
success:
type: boolean
jobs:
type: array
items:
type: string
CreateDriverResponse:
type: object
properties:
success:
type: boolean
data:
type: object
properties:
driverId:
type: string
example: 64ac71ddb111de5422ff31ac
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
x-amazon-apigateway-cors:
allowOrigins:
- '*'
allowCredentials: true
exposeHeaders:
- x-apigateway-header
- x-amz-date
- content-type
maxAge: 3600
allowMethods:
- '*'
allowHeaders":
- x-apigateway-header
- x-amz-date
- content-type
- Authorization