LTL Direct API (v2)

Download OpenAPI specification:

Technical API Reference for the LTL Direct product including rate requests, listing management, Bill of Lading, and tracking endpoints.

πŸ–οΈ Testing Environment

Always test your integration in sandbox before deploying to production.

  • πŸ–οΈ Sandbox (Recommended for Testing): https://api.ushipsandbox.com
  • πŸš€ Production: https://api.uship.com

Note: Sandbox and production environments require separate API keys.

Authentication

This API uses Bearer token authentication. To obtain an API key:

  1. Navigate to API Key Generation Page
  2. Generate your API key (specify sandbox or production)
  3. Include in the Authorization header: Authorization: Bearer <Your API Key>

Getting Started

For detailed sandbox testing guidance, see our Sandbox Guide.

For integration guides and tutorials, visit uShip DeveloperHub.

listing booked webhook Webhook

webhook sent when a listing is booked through an integration

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the booked listing

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Listing.Booked/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Listing.Booked/v1",
  • "data": {
    }
}

transit status changed webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the booked transit status change

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Shipment.TransitStatusChanged/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Shipment.TransitStatusChanged/v1",
  • "data": {
    }
}

listing reference number added webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the reference number

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Listing.ReferenceNumberAdded/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Listing.ReferenceNumberAdded/v1",
  • "data": {
    }
}

listing status changed webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the status change

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Listing.StatusChanged/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Listing.StatusChanged/v1",
  • "data": {
    }
}

shipment delivery timeframe updated webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the delivery timeframe

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Shipment.DeliveryTimeFrameUpdated/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Shipment.DeliveryTimeFrameUpdated/v1",
  • "data": {
    }
}

listing attachment added webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the attachment

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Listing.Attachment.AttachmentAdded/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Listing.Attachment.AttachmentAdded/v1",
  • "data": {
    }
}

listing price details updated webhook Webhook

Authorizations:
bearerAuth
Request Body schema: application/json

Information about the price details

specversion
string
Value: "1.0"

The version of the CloudEvents specification which the event uses. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#specversion

source
string <uri>

Identifies the context in which an event happened. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#source-1

id
time
string <date-time>

Timestamp of when the occurrence happened in ISO-8601 format. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#time

type
string
Value: "Listing.PriceDetailsUpdated/v1"

Type of event related to the originating occurrence. See https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md#type

object

Responses

Request samples

Content type
application/json
{
  • "specversion": "1.0",
  • "source": "http://example.com",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "time": "2019-08-24T14:15:22Z",
  • "type": "Listing.PriceDetailsUpdated/v1",
  • "data": {
    }
}

Listings

Retrieves a listing from the uShip Marketplace by listingId

Allows integrator to retrieve listing information by listing ID

Authorizations:
bearerAuth
path Parameters
listingId
required
integer <int32>
Example: 12345

Required. listingId of the listing that is to be returned

Responses

Response samples

Content type
application/json
{
  • "status": {
    },
  • "paymentStatus": {
    },
  • "transitStatus": {
    },
  • "cancellationStatus": {
    },
  • "hasPendingBookingRequest": true,
  • "gallery": [
    ],
  • "isCharitable": true,
  • "isAuction": true,
  • "isDutchAuction": true,
  • "autoAcceptPrice": {
    },
  • "auctionTargetPrice": {
    },
  • "auctionMaxPrice": {
    },
  • "namedPrice": {
    },
  • "offerPrice": {
    },
  • "lowestBidPrice": {
    },
  • "acceptedBidPrice": {
    },
  • "totalCost": {
    },
  • "bookingDeposit": {
    },
  • "amountDueToServiceProvider": {
    },
  • "amountToMe": {
    },
  • "priceDetails": {
    },
  • "commodity": "string",
  • "parentCommodity": "string",
  • "topLevelCommodity": "string",
  • "expiresOn": "2019-08-24T14:15:22Z",
  • "questionsAsked": 0,
  • "activeBidsPlaced": 0,
  • "totalBidsPlaced": 0,
  • "imageUrl": "string",
  • "isDefaultImage": true,
  • "checksum": "string",
  • "isWatched": true,
  • "createdOn": "2019-08-24T14:15:22Z",
  • "activatedOn": "2019-08-24T14:15:22Z",
  • "lastUpdatedOn": "2019-08-24T14:15:22Z",
  • "isBrokered": true,
  • "bookedOn": "2019-08-24T14:15:22Z",
  • "completedOn": "2019-08-24T14:15:22Z",
  • "cancelledOn": "2019-08-24T14:15:22Z",
  • "archivedOn": "2019-08-24T14:15:22Z",
  • "serviceProvider": {
    },
  • "assignedDriver": {
    },
  • "isReadyForPickup": true,
  • "billOfLadingNumber": 0,
  • "uShipPayments": {
    },
  • "minimumBidAmount": {
    },
  • "privateNetwork": "string",
  • "cancellationLink": "string",
  • "quoteRequestId": "string",
  • "commodityType": {
    },
  • "parentCommodityType": {
    },
  • "topLevelCommodityType": {
    },
  • "isItineraryMandatory": true,
  • "thirdParty": {
    },
  • "serviceTypes": [
    ],
  • "isExclusiveListing": true,
  • "listingId": 12345,
  • "title": "Furniture Shipment",
  • "description": "string",
  • "route": {
    },
  • "lister": {
    },
  • "items": [
    ],
  • "accessorials": [
    ],
  • "totalWeightInGrams": {
    },
  • "attributes": {
    },
  • "nextTransitStatus": {
    },
  • "previousTransitStatus": {
    },
  • "availableTransitStatuses": [
    ],
  • "referenceNumbers": [
    ],
  • "importSource": "string",
  • "links": [
    ]
}

ListingsAttachments

Retrieves listing attachment information

Allows integrator to retrieve listing attachments by listing ID

Authorizations:
bearerAuth
path Parameters
listingId
required
integer <int32>
Example: 12345

Required. listingId

attachmentId
required
integer <int32>
Example: 1

Required. attachmentId

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "uri": "string",
  • "fileName": "string",
  • "fileType": "string",
  • "fileSize": 0,
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "uploaderId": 0,
  • "attachmentType": {
    },
  • "notes": "string",
  • "links": [
    ]
}

Tracking

Retrieve tracking info

This endpoint allows you to retrieve latitude/longitude values, transit status, and the most recent location or address. If a recent location is not provided, these will be absent from the response.

Authorizations:
bearerAuth
path Parameters
listingId
required
integer <int32>
Example: 12345

Required. listingId

header Parameters
Authorization
required
string
Example: Example value

Required. Bearer {your password grant bearer token}

Responses

Response samples

Content type
application/json
{
  • "listingGeneratedId": 0,
  • "listingTitle": "string",
  • "commodityCode": "string",
  • "shipmentTrackingSummaryModel": {
    },
  • "carrierContactModel": {
    },
  • "shipmentTrackingStatuses": [
    ],
  • "mostRecentLocation": [
    ],
  • "mostRecentAddress": [
    ]
}

Rate Requests

Get list of available rates for a rate request

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: Example value

Required. id

query Parameters
development
string
header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "items": [
    ]
}

Create a rate request

Authorizations:
bearerAuth
query Parameters
development
string
header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Request Body schema: application/json
required
required
object

Required. route

Array of objects

Identifiers and numbers by which one can refer to this shipment or its cargo in some external system

required
Array of objects

Required. LTL Items

integratorId
string

The integrator id for the request. This is required to receive webhooks and custom rates

accessorials
Array of strings
Items Enum: "ProtectFromFreezing" "BlindShipmentCoordination" "SortAndSegregate" "ExcessiveLength"

Collection of service accessorials for this shipment

Responses

Request samples

Content type
application/json
{
  • "route": {
    },
  • "referenceNumbers": [
    ],
  • "items": [
    ],
  • "integratorId": "string",
  • "accessorials": [
    ]
}

Response samples

Content type
application/json
{
  • "reason": "string",
  • "errors": [
    ]
}

Rates

Accept a rate

Allows a shipper or an integrator on a shipper’s behalf to accept a rate

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: Example value

Required. id

header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Request Body schema: application/json
required
required
object

Required. Insurance

paymentMethodId
required
string

Required. Payment method ID

Responses

Request samples

Content type
application/json
{
  • "insurance": {
    },
  • "paymentMethodId": "Example value"
}

Response samples

Content type
application/json
{
  • "message": "string"
}

Retrieves the status of a rate acceptance request

Authorizations:
bearerAuth
path Parameters
executionId
required
string
Example: Example value

Required. executionId

id
required
string
Example: Example value

Required. id

header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Responses

Response samples

Content type
application/json
{
  • "response": "string",
  • "statusCode": 0
}

Payment Methods

Get All User's Payment Methods

Authorizations:
bearerAuth
query Parameters
topLevelCommodity
required
string
Example: topLevelCommodity=Example value

Required. Required top level commodity

header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "items": [
    ]
}

Bill of Lading

Get the preSigned url for bill of lading

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: Example value

Required. id

header Parameters
Authorization
required
string
Example: Example value

Required. Required Authorization header containing access token

Responses

Response samples

Content type
application/json
{
  • "billOfLadingNumber": 0,
  • "document": {
    }
}