Webhook

Upload Document

Payload is identical in v1 and v2 — no migration needed for this event.

Augment POSTs this payload to your configured upload-document endpoint when a document needs to be associated with a load. The file content is base64-encoded and accompanied by an MD5 checksum for integrity verification.

Supported file types: .pdf, .jpg/.jpeg, .png, .heic, .webp, .tiff/.tif.

Supported fileType values: INVOICE, POD, BOL, RATE_CONFIRMATION, LUMPER_RECEIPT, OTHER.

When uploading an invoice (fileType: INVOICE), the referenceNumbers.invoiceNumber field is required.

The optional source field identifies the entity that provided the document (e.g. a carrier). Use it when your brokerage needs to route documents by origin, such as mapping a carrier by MC number or SCAC code.

Body·
required
application/json
  • checksum
    Type: string
    required

    MD5 hex digest of the raw (pre-encoding) file bytes, used for integrity verification

  • content
    Type: string
    required

    Base64-encoded file bytes

  • contentType
    Type: string
    required

    MIME type of the file. Supported values: application/pdf, image/jpeg, image/png, image/heic, image/webp, image/tiff

  • filename
    Type: string
    required

    Original filename including extension. Supported extensions: .pdf, .jpg, .jpeg, .png, .heic, .webp, .tiff, .tif

  • fileType
    Type: stringenum
    required

    The category of the document being uploaded

    values
    • INVOICE
    • POD
    • BOL
    • RATE_CONFIRMATION
    • LUMPER_RECEIPT
    • OTHER
  • loadNum
    Type: string
    required

    The load's external number in the TMS (brokerageLoadId)

  • sizeBytes
    Type: integer
    required

    File size in bytes

  • createdAt
    Type: string

    ISO 8601 timestamp of when the document was collected/created

  • internalLoadReference
    Type: string

    Optional internal load identifier from the TMS (brokerageLoadInternalId). Only included when available.

  • referenceNumbers
    Type: object
  • source
    Type: object

    Origin of the document, used by some brokerages for routing (e.g. carrier ID)

Responses
  • application/json
  • application/json
Request Example for postuploadDocument
{
  "loadNum": "",
  "internalLoadReference": "",
  "filename": "invoice-1234.pdf",
  "fileType": "INVOICE",
  "contentType": "application/pdf",
  "content": "",
  "sizeBytes": 1,
  "checksum": "",
  "referenceNumbers": {
    "invoiceNumber": ""
  },
  "source": {
    "type": "CARRIER",
    "identifierType": "MC_NUMBER",
    "identifier": "",
    "name": ""
  },
  "createdAt": ""
}
{
  "summary": {
    "total": 1,
    "succeeded": 1,
    "failed": 1
  },
  "results": [
    {
      "filename": "string",
      "success": true,
      "data": {
        "size": 1,
        "contentType": "string",
        "id": "string"
      }
    }
  ]
}