{
  "openapi": "3.1.1",
  "info": {
    "title": "Augment API",
    "description": "<a href=\"https://trust.goaugment.com/?utm_campaign=api_docs&utm_source=api_docs&utm_medium=api_docs&utm_content=api_docs\" target=\"_blank\">Augment is now SOC 2 Type II Certified</a>\n\nThe Augment API endpoints are calls your system makes to manage loads,\ncarriers, and webhook configuration.\nThe latest version of the Augment API is hosted [online](https://apidocs.goaugment.com).\n\n## API Endpoints\n\nEndpoints your system calls to interact with Augment:\n\n- [Load Management](/reference/tag/load-management)\n- [Carrier Management](/reference/tag/carrier-management)\n- [CSV Imports](/reference/tag/csv-imports)\n- [Quote Management](/reference/tag/quote-management) - implemented by the\n  rate provider and called by Augment\n- [Models](/reference/models)\n- [Webhook Endpoints](/reference/tag/webhook-endpoints)\n- [Webhook Event Subscriptions](/reference/tag/webhook-event-subscriptions)\n\nWebhook management access is gated. Request access from Augment before using\nthese endpoints. After access is enabled, you can self-manage the webhook\nendpoints that receive event payloads and the webhook event subscriptions\nthat control which events are sent to each endpoint.\n\nUse [Webhook Endpoints](/reference/tag/webhook-endpoints) to create and\nupdate the HTTPS destinations where Augment sends webhook payloads. Use\n[Webhook Event Subscriptions](/reference/tag/webhook-event-subscriptions) to\nchoose event types for each endpoint and send test deliveries.\n\nOutbound webhook payloads, including Track & Trace events, are documented\nseparately in the [Webhooks](/webhooks) reference. Subscriptions created\nthrough the public webhook management APIs deliver version 2 webhook payloads only.\n\n[Quote Management](/reference/tag/quote-management) is the exception to all\nof the above: that endpoint is implemented by the rate provider and called by\nAugment, which cannot retrieve quotes until it is live.\n\n## Resources\n\n* [Homepage](https://www.goaugment.com)\n* [LinkedIn](https://www.linkedin.com/company/goaugment)\n* [Jobs - we're hiring!](https://jobs.ashbyhq.com/go-augment?utm_source=AMy24qx30n)\n\n## Developer Notes\n\nAll date-time fields are represented as strings. The date-time notation is defined by [RFC 3339, section 5.6](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6). Examples:\n- `2025-08-21T12:34:56Z`\n- `2025-08-21T04:34:56-08:00`\n\nHowever, when using local time, do not include the trailing `Z` or timezone offset in the date-time string.\n\nExample:\n- `2025-08-21T12:34:56`\n\n### Request Headers\n\n`X-Request-Source` (optional): a label for the system making the request,\nuseful when several of your systems share one API key. See\n[Authorization](/guide/start-developing/authorization) for details.\n",
    "version": "2.92.0"
  },
  "servers": [
    {
      "url": "https://api.prod.goaugment.com"
    }
  ],
  "security": [
    {
      "httpBasic": []
    }
  ],
  "tags": [
    {
      "name": "API Key",
      "description": "API key based authorization. Please refer to the\n[authorization documentation](docs/authorization.md) for details.\n"
    },
    {
      "name": "Load Management",
      "description": "API endpoints for creating, updating, and retrieving loads.\n"
    },
    {
      "name": "Carrier Management",
      "description": "API endpoints for managing carriers, carrier contacts, and carrier-manager relationships.\n"
    },
    {
      "name": "Carrier Support",
      "description": "Public API endpoints for correlating carrier issues (detention, lumper, TONU, etc.) with the matching incidents in your TMS. Access is gated by brokerage; talk to Augment before using these endpoints.\n"
    },
    {
      "name": "Purchase Order Management",
      "description": "API endpoints for creating and retrieving purchase orders together with their line items.\n"
    },
    {
      "name": "Facility Management",
      "description": "Public API endpoints for creating and updating facilities.\n"
    },
    {
      "name": "CSV Imports",
      "description": "Public API endpoint for submitting CSV files for asynchronous ingestion into Augment.\n"
    },
    {
      "name": "Webhook Endpoints",
      "description": "Public API endpoints for approved brokerages to create, update, list, and delete webhook endpoints. Self-service endpoints send version 2 webhook payloads only. Access is gated by brokerage; talk to Augment before using these endpoints.\n"
    },
    {
      "name": "Webhook Event Subscriptions",
      "description": "Public API endpoints for approved brokerages to list supported webhook event types, subscribe endpoints to event types, and send test deliveries. Subscriptions created through these public APIs deliver version 2 webhook event shapes only. Access is gated by brokerage; talk to Augment before using these endpoints.\n"
    },
    {
      "name": "Quote Management",
      "description": "Rate quoting. This is the one endpoint in this reference implemented by the rate provider and called by Augment: Augment submits a shipment, the provider prices it and returns the applicable rates. Augment cannot retrieve quotes until the endpoint is live.\n\nDuring setup the provider supplies Augment with the endpoint URL, the authentication method, a test endpoint where one exists, and the expected response time together with any rate limit to be observed. An API key in a request header is the usual arrangement; OAuth client credentials are also supported. Augment issues one request per quote, so volume tracks quoting activity rather than load count.\n\nConventions across the endpoint: money is a decimal number with two places rather than a string, margin is a whole percent (`17`, not `0.17`), fuel surcharge is a dollar amount, weight is an object carrying a value and a unit, dimensions are whole inches, and distances are statute miles. Dates are ISO 8601, with `quotedAt` in UTC.\n"
    }
  ],
  "paths": {
    "/v2/auth-check": {
      "post": {
        "operationId": "verifyApiKey",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "tags": [
          "API Key"
        ],
        "summary": "Verify your API key",
        "description": "Verify your API key is valid and not revoked. Use our auth check endpoint to verify your API key without writing data to your account. Great for setup and troubleshooting, but not intended for automated production health checks.\n",
        "responses": {
          "200": {
            "description": "API key is verified",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthCheckError"
                }
              }
            }
          }
        }
      }
    },
    "/v2/loads": {
      "get": {
        "operationId": "getLoad",
        "tags": [
          "Load Management"
        ],
        "summary": "Get load by load number",
        "description": "Retrieve enriched load data by load number (brokerage load ID). Returns the full LoadV2 format including carrier details, tracking events, reference numbers, notes, subscribers, and shipment information.\n",
        "parameters": [
          {
            "name": "loadNumber",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The load number (brokerage load ID)",
            "example": "LOAD-12345"
          }
        ],
        "responses": {
          "200": {
            "description": "Load found and returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoadV2Response"
                }
              }
            }
          },
          "400": {
            "description": "Bad request - loadNumber query parameter is required",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Load not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createOrUpdateLoad",
        "tags": [
          "Load Management"
        ],
        "summary": "Create or update load",
        "description": "Create a load, or replace an existing load matched by `loadNumber`.\n\nThe whole payload is validated on every request. Which fields are required depends on the load's `status`: stop appointment windows are optional while the load is a `DRAFT` and required on every route stop once the load reaches `CUSTOMER_CONFIRMED` or later. See [Load Status Validation](/guide/start-developing/load-status-validation) for the full status-by-status breakdown.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoadRequest"
              },
              "example": {
                "brokerage": {},
                "load": {
                  "loadNumber": "1",
                  "mode": "FTL",
                  "status": "DRAFT",
                  "isPostedToDAT": false,
                  "route": [
                    {
                      "sequence": 1,
                      "stopActivity": "PICKUP",
                      "expectedArrivalWindowStart": "2025-09-01T12:00:00Z",
                      "expectedArrivalWindowEnd": "2025-09-01T14:00:00Z",
                      "address": {
                        "street1": "1 Santa Monica Blvd",
                        "city": "Santa Monica",
                        "stateOrProvince": "CA",
                        "postalCode": "90401",
                        "country": "US"
                      }
                    },
                    {
                      "sequence": 2,
                      "stopActivity": "DELIVERY",
                      "expectedArrivalWindowStart": "2025-09-02T12:00:00Z",
                      "expectedArrivalWindowEnd": "2025-09-02T14:00:00Z",
                      "address": {
                        "street1": "1 Market St",
                        "city": "San Francisco",
                        "stateOrProvince": "CA",
                        "postalCode": "94105",
                        "country": "US"
                      }
                    }
                  ],
                  "items": [
                    {
                      "quantity": 600,
                      "packagingUnit": {
                        "unitType": "CARTON",
                        "quantity": 60
                      },
                      "handlingUnit": {
                        "unitType": "PALLET",
                        "quantity": 3
                      },
                      "description": "600 pieces packed in 60 cartons on 3 pallets",
                      "totalWeightLbs": 12000,
                      "lengthInches": 48,
                      "widthInches": 40,
                      "heightInches": 60,
                      "freightClass": "70",
                      "nmfc": "123456"
                    }
                  ]
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Load created successfully"
          },
          "400": {
            "description": "Malformed JSON request body, or a bad request rejected while processing the load. Field-level validation failures are returned as `422` instead.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "Validation failed. `errorCode` is `VALIDATION_ERROR` and `details` is keyed by the field path that failed, using the same indexes as the arrays you sent. Status-based failures — such as a route stop missing `expectedArrivalWindowStart` on a load at `CUSTOMER_CONFIRMED` — are reported here.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                },
                "example": {
                  "message": "Unprocessable Entity",
                  "errorCode": "VALIDATION_ERROR",
                  "details": {
                    "_errors": [],
                    "load": {
                      "_errors": [],
                      "route": {
                        "0": {
                          "_errors": [],
                          "expectedArrivalWindowStart": {
                            "_errors": [
                              "expectedArrivalWindowStart is required once a load reaches CUSTOMER_CONFIRMED"
                            ]
                          },
                          "expectedArrivalWindowEnd": {
                            "_errors": [
                              "expectedArrivalWindowEnd is required once a load reaches CUSTOMER_CONFIRMED"
                            ]
                          }
                        },
                        "_errors": []
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "patch": {
        "operationId": "patchLoad",
        "tags": [
          "Load Management"
        ],
        "summary": "Patch a load",
        "description": "Apply one or more patch operations to an existing load using a JSON Patch-inspired format ([RFC 6902](https://datatracker.ietf.org/doc/html/rfc6902)).\n\nEach operation targets a specific field by JSON Pointer path and specifies how to change it.\n\nOperations are applied to the stored load and the merged result is then\nvalidated as a whole. A patch can therefore be rejected because of\nfields it did not touch. Most commonly, replacing `/status` with\n`CUSTOMER_CONFIRMED` or a later status fails when the stored route stops\nhave no appointment windows — see\n[Load Status Validation](/guide/start-developing/load-status-validation).\n\n## Supported operations\n\n| `op` | Description |\n|---------|-------------|\n| `add` | Set a value or insert into an array at a specific index. |\n| `remove` | Remove a value or array element. |\n| `replace` | Replace an existing value. |\n| `append` | *(Custom)* Append an item to the end of an array. |\n| `upsert` | *(Custom)* Update an existing array element matching the `where` condition, or insert a new one if no match is found. |\n\n## Allowed paths\n\nOperations are validated against an allowlist of supported paths. Attempts to modify other paths will be rejected.\n\n| `path` | Supported operations | Value example |\n|--------|---------------------|---------------|\n| `/status` | `add`, `replace` | `\"DISPATCHED\"` |\n| `/mode` | `add`, `replace` | `\"FTL\"` |\n| `/loadType` | `add`, `replace` | `\"SPOT\"` |\n| `/equipment` | `add`, `replace` | `\"DRY_VAN\"` |\n| `/equipmentDescription` | `add`, `replace` | `\"53ft Dry Van\"` |\n| `/commodity` | `add`, `replace` | `\"Electronics\"` |\n| `/service` | `add`, `replace` | `\"STANDARD\"` |\n| `/targetRate` | `add`, `replace` | `1250.00` |\n| `/maxRate` | `add`, `replace` | `3000.00` |\n| `/totalRate` | `add`, `replace` | `2750.00` |\n| `/highValueAmount` | `add`, `replace` | `50000` |\n| `/totalMiles` | `add`, `replace` | `1200` |\n| `/tarpSize` | `add`, `replace` | `\"40x48\"` |\n| `/customerName` | `add`, `replace` | `\"Acme Corp\"` |\n| `/customerContact` | `add`, `replace` | `\"Jane Smith\"` |\n| `/customerNotes` | `add`, `replace` | `\"Call before delivery\"` |\n| `/customerId` | `add`, `replace` | `\"ACME-001\"` |\n| `/isPostedToDAT` | `add`, `replace` | `true` |\n| `/bidExpiration` | `add`, `replace` | `\"2025-08-21T12:34:56Z\"` |\n| `/lastLocationUpdate` | `add`, `replace` | `\"2025-10-15T20:20:00Z\"` |\n| `/weight` | `add`, `replace` | `{\"value\": 45000, \"unit\": \"LB\"}` |\n| `/dimensions` | `add`, `replace` | `{\"lengthInches\": 600, \"widthInches\": 96, \"heightInches\": 108}` |\n| `/minimumTemperature` | `add`, `replace` | `{\"value\": 32, \"unit\": \"F\"}` |\n| `/maximumTemperature` | `add`, `replace` | `{\"value\": 68, \"unit\": \"F\"}` |\n| `/minimumBulkHeadTemperature` | `add`, `replace` | `{\"value\": 35, \"unit\": \"F\"}` |\n| `/maximumBulkHeadTemperature` | `add`, `replace` | `{\"value\": 65, \"unit\": \"F\"}` |\n| `/externalTrackingStatus` | `add`, `replace` | `{\"source\": \"MACROPOINT\", \"code\": \"READY\"}` |\n| `/customData` | `add`, `replace` | `{\"key\": \"value\"}` |\n| `/notes` | `add`, `remove`, `append`, `upsert` | `{\"text\": \"Driver is 30 min out\"}` |\n| `/accessorials` | `add`, `remove`, `append`, `upsert` | `\"HAZMAT\"` |\n| `/referenceNumbers` | `add`, `remove`, `append`, `upsert` | `{\"name\": \"PO_NUMBER\", \"value\": \"PO-12345\"}` |\n| `/trackingEvents` | `add`, `remove`, `append`, `upsert` | `{\"eventType\": \"PICKED_UP\", \"eventSource\": \"CARRIER_API\", \"eventUtc\": \"2025-08-21T12:34:56Z\"}` |\n| `/bidCustomValues` | `add`, `remove`, `append`, `upsert` | `{\"name\": \"rush\", \"value\": \"true\"}` |\n| `/commodityItems` | `add`, `remove`, `append`, `upsert` | `{\"quantity\": 10, \"description\": \"boxes\"}` |\n| `/route` | `add`, `remove`, `append`, `upsert` | `{\"sequence\": 1, \"stopActivity\": \"PICKUP\"}` |\n| `/carrier` | `add`, `remove`, `replace` | `add`: assign a carrier when the load has none.<br>`replace`: replace the carrier already on the load.<br>Both use `value` shaped as [**LoadPatchCarrier**](#model/LoadPatchCarrier).<br>`remove`: unassign the carrier (omit `value`). |\n| `/carrier/drivers` | `append`, `replace` | `append`: one [**LoadPatchCarrierDriver**](#model/LoadPatchCarrierDriver).<br>`replace`: array of the same schema (replaces the full drivers list). |\n| `/carrier/contacts` | `append`, `replace` | `append`: one [**LoadPatchCarrierContact**](#model/LoadPatchCarrierContact).<br>`replace`: array of the same schema (replaces the full contacts list). |\n\n## Examples\n\n**Replace a simple field:**\n\n```json\n{ \"op\": \"replace\", \"path\": \"/status\", \"value\": \"IN_TRANSIT\" }\n```\n\n**Append to an array:**\n\n```json\n{ \"op\": \"append\", \"path\": \"/notes\", \"value\": { \"text\": \"Driver is 30 min out\" } }\n```\n\n**Upsert an array element (update stop 1 if it exists, insert if not):**\n\n```json\n{ \"op\": \"upsert\", \"path\": \"/route\", \"value\": { \"sequence\": 1, \"stopActivity\": \"PICKUP\" }, \"where\": { \"sequence\": 1 } }\n```\n\n**Assign carrier on load:**\n\n```json\n{\n  \"op\": \"add\",\n  \"path\": \"/carrier\",\n  \"value\": {\n    \"carrierId\": \"tms-carrier-42\",\n    \"name\": \"Acme Trucking\",\n    \"dotNumber\": 1234567,\n    \"drivers\": [{ \"id\": \"drv-1\", \"name\": \"Driver One\", \"phone\": \"+12081234567\" }],\n    \"contacts\": [\n      { \"role\": \"DISPATCHER\", \"name\": \"Dispatch\", \"email\": \"dispatch@example.com\" },\n      { \"role\": \"AP_REP\", \"name\": \"AP\", \"email\": \"ap@example.com\" }\n    ]\n  }\n}\n```\n\n**Clear carrier from load:**\n\n```json\n{ \"op\": \"remove\", \"path\": \"/carrier\" }\n```\n\n**Append a driver:**\n\n```json\n{\n  \"op\": \"append\",\n  \"path\": \"/carrier/drivers\",\n  \"value\": {\n    \"id\": \"drv-2\",\n    \"name\": \"Jane Driver\",\n    \"phone\": \"+12081234568\",\n    \"phoneExtension\": \"101\"\n  }\n}\n```\n\n**Replace carrier contacts:**\n\n```json\n{\n  \"loadReference\": \"LOAD-12345\",\n  \"operations\": [\n    {\n      \"op\": \"replace\",\n      \"path\": \"/carrier/contacts\",\n      \"value\": [\n        {\n          \"id\": \"contact-dispatch-1\",\n          \"role\": \"DISPATCHER\",\n          \"name\": \"Night dispatch\",\n          \"email\": \"dispatch@example.com\",\n          \"phone\": \"+12081234569\",\n          \"phoneExtension\": \"202\"\n        },\n        {\n          \"id\": \"contact-ap-1\",\n          \"role\": \"AP_REP\",\n          \"name\": \"Accounts payable\",\n          \"email\": \"ap@example.com\",\n          \"phone\": \"+12081234570\",\n          \"phoneExtension\": \"303\"\n        }\n      ]\n    }\n  ]\n}\n```\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoadPatchRequest"
              },
              "examples": {
                "statusAndNotes": {
                  "summary": "Status and notes",
                  "value": {
                    "loadReference": "LOAD-12345",
                    "operations": [
                      {
                        "op": "replace",
                        "path": "/status",
                        "value": "IN_TRANSIT"
                      },
                      {
                        "op": "append",
                        "path": "/notes",
                        "value": {
                          "text": "Driver is 30 min out"
                        }
                      }
                    ]
                  }
                },
                "carrierAssign": {
                  "summary": "Assign carrier on load",
                  "value": {
                    "loadReference": "LOAD-12345",
                    "operations": [
                      {
                        "op": "add",
                        "path": "/carrier",
                        "value": {
                          "carrierId": "tms-carrier-42",
                          "name": "Acme Trucking",
                          "dotNumber": 1234567,
                          "drivers": [
                            {
                              "id": "drv-1",
                              "name": "Driver One",
                              "phone": "+12081234567"
                            }
                          ],
                          "contacts": [
                            {
                              "role": "DISPATCHER",
                              "name": "Dispatch",
                              "email": "dispatch@example.com"
                            },
                            {
                              "role": "AP_REP",
                              "name": "AP",
                              "email": "ap@example.com"
                            }
                          ]
                        }
                      }
                    ]
                  }
                },
                "carrierRemove": {
                  "summary": "Remove carrier from load",
                  "value": {
                    "loadReference": "LOAD-12345",
                    "operations": [
                      {
                        "op": "remove",
                        "path": "/carrier"
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Load patched successfully"
          },
          "400": {
            "description": "Bad request — invalid operation, disallowed path, missing required field, or a merged result that fails validation (for example moving `/status` to `CUSTOMER_CONFIRMED` while stored route stops have no appointment windows). `details` carries the underlying validation output as a string.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Load not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/loads/tracking": {
      "post": {
        "operationId": "addTrackingEvent",
        "tags": [
          "Load Management"
        ],
        "summary": "Add a tracking event",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TrackingEventRequest"
              },
              "example": {
                "loadNumber": "1330559",
                "trackingEvent": {
                  "eventSource": "MACROPOINT",
                  "eventType": "INFO",
                  "eventUtc": "2026-09-11T23:00:25Z",
                  "city": "St Louis",
                  "stateOrProvince": "MO",
                  "latitude": 38.56045466,
                  "longitude": -90.4000096,
                  "nextEtaUtc": "2026-09-12T08:01:05Z",
                  "notes": "Location update received. Locator: 6166485924, Source: Ping"
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Load updated successfully"
          },
          "400": {
            "description": "Bad request (work in progress)"
          }
        }
      }
    },
    "/v2/carrier-issues/external-ref": {
      "post": {
        "operationId": "reportCarrierIssueExternalId",
        "tags": [
          "Carrier Support"
        ],
        "summary": "Report the external incident id for a carrier issue",
        "description": "After you receive a `CARRIER_ISSUE_UPDATED` webhook and create the incident in your own TMS, call this endpoint with the `carrierIssueId` from that webhook and your incident id (`externalId`). Augment stores the correlation so subsequent `CARRIER_ISSUE_UPDATED` events for the same issue include your `externalId` — letting you update the existing incident in place instead of creating a duplicate.\n\nThe call is idempotent: sending it again for the same `carrierIssueId` just updates the stored `externalId`. It is optional — if you never call it, events keep arriving without an `externalId` and nothing else changes.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CarrierIssueExternalRefRequest"
              },
              "example": {
                "carrierIssueId": "01JCARRIERISSUERECORD00001",
                "externalId": "TMS-INC-30275"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "External reference recorded"
          },
          "422": {
            "description": "Invalid payload"
          }
        }
      }
    },
    "/v1/purchase-orders": {
      "get": {
        "operationId": "getPurchaseOrder",
        "tags": [
          "Purchase Order Management"
        ],
        "summary": "Get purchase order by number",
        "description": "Retrieve a purchase order and its line items by the purchase order number you assigned. Purchase order numbers are unique within your system.\n",
        "parameters": [
          {
            "name": "purchaseOrderNumber",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "The purchase order number",
            "example": "PO-1001"
          }
        ],
        "responses": {
          "200": {
            "description": "Purchase order found and returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PurchaseOrderResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Purchase order not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "createPurchaseOrder",
        "tags": [
          "Purchase Order Management"
        ],
        "summary": "Create purchase order",
        "description": "Create a purchase order along with its line items and its vendor and buyer contact records, in a single call.\n\nThis endpoint creates only. A `purchaseOrderNumber` you have already used returns `409 Conflict` rather than updating the existing purchase order.\n\nThe vendor and contacts are matched before being created: reusing a `vendor.vendorCode` or a contact you have sent before links the new purchase order to the existing record instead of duplicating it.\n\n`purchaseOrderDate` accepts either a calendar day (`2026-08-18`) or a full timestamp; only the UTC calendar day is stored.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PurchaseOrderRequest"
              },
              "example": {
                "purchaseOrder": {
                  "purchaseOrderNumber": "PO-1001",
                  "internalPurchaseOrderNumber": "INT-7",
                  "status": "OPEN",
                  "purchaseOrderDate": "2026-08-18"
                },
                "lineItems": [
                  {
                    "lineNumber": "1",
                    "sku": "SKU-1",
                    "description": "Canned tomatoes, 12 ct",
                    "orderedQuantity": 100,
                    "openQuantity": 100,
                    "unitOfMeasure": "CASE",
                    "unitPrice": "12.50",
                    "currency": "USD",
                    "status": "OPEN",
                    "expectedArrivalDate": "2026-09-02"
                  }
                ],
                "vendor": {
                  "name": "Acme Foods",
                  "vendorCode": "ACME"
                },
                "vendorContact": {
                  "name": "Vic Vendor",
                  "email": "vic@acmefoods.example"
                },
                "buyerContact": {
                  "name": "Dana Buyer",
                  "email": "dana@example.com",
                  "phone": "+13125550100",
                  "phoneExtension": "204"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Purchase order created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PurchaseOrderResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "409": {
            "description": "A purchase order with this purchaseOrderNumber already exists for your system\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "Validation errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v1/carriers": {
      "post": {
        "operationId": "createOrUpdateCarrier",
        "tags": [
          "Carrier Management"
        ],
        "summary": "Create or update carrier",
        "description": "Create a new carrier or update an existing one. This endpoint supports three operations:\n- **Creation**: Provide all required fields to create a new carrier.\n- **Partial Update**: Include only the fields you want to update. Carriers\n  are matched by `tmsId`, so provide the `tmsId` of the carrier you want\n  to update.\n\n- **Full Update**: Include all fields to completely replace the carrier\n  data.\n\nFor updating managers and contacts, it is highly recommended to provide `tmsId` for each manager and contact when creating them. This allows the system to match and update existing managers/contacts by their `tmsId` during subsequent updates. If `tmsId` is not provided for managers or contacts, you will need to clear the entire array and re-add all managers/contacts when updating.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CarrierRequest"
              },
              "example": {
                "name": "Acme Logistics",
                "tmsId": "acme-tms-001",
                "dotNumber": 1234567,
                "mcNumber": 765432,
                "customData": {
                  "tier": "gold",
                  "score": 98.5,
                  "verified": true,
                  "aliases": [
                    "Acme Freight",
                    "Acme Carriers LLC"
                  ],
                  "routing": {
                    "defaultRegion": "NS",
                    "allowCrossBorder": false
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Carrier created or updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CarrierResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity - Validation errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "get": {
        "operationId": "getCarrierByIdentifier",
        "tags": [
          "Carrier Management"
        ],
        "summary": "Get carrier by DOT or MC number",
        "description": "Fetch a carrier by its DOT number or MC number. Returns the carrier with associated managers and contacts.\n",
        "parameters": [
          {
            "name": "dotNumber",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "description": "DOT number"
          },
          {
            "name": "mcNumber",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "description": "MC number"
          }
        ],
        "responses": {
          "200": {
            "description": "Carrier found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CarrierResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Carrier not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v1/carriers/bulk": {
      "post": {
        "operationId": "bulkUpsertCarriers",
        "tags": [
          "Carrier Management"
        ],
        "summary": "Bulk create or update carriers",
        "description": "Create or update multiple carriers in a single request. Maximum 20 carriers per request. Each carrier is processed in its own transaction. Partial success is supported - some carriers may succeed while others fail.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpsertCarriersRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Bulk operation completed (may have partial success)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkUpsertCarriersResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request (e.g., exceeds maximum batch size)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Entity - Validation errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v1/carriers/{carrierId}": {
      "get": {
        "operationId": "getCarrierById",
        "tags": [
          "Carrier Management"
        ],
        "summary": "Get carrier by ID",
        "description": "Fetch a carrier by its carrier ID. Returns the carrier with associated managers and contacts.\n",
        "parameters": [
          {
            "name": "carrierId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Augment's carrier identifier, returned as `carrierId` in the create/update carrier response."
          }
        ],
        "responses": {
          "200": {
            "description": "Carrier found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CarrierResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Carrier not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "delete": {
        "operationId": "archiveCarrier",
        "tags": [
          "Carrier Management"
        ],
        "summary": "Archive carrier",
        "description": "Soft delete a carrier. The carrier will no longer be returned in GET requests.\n",
        "parameters": [
          {
            "name": "carrierId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Augment's carrier identifier, returned as `carrierId` in the create/update carrier response."
          }
        ],
        "responses": {
          "204": {
            "description": "Carrier archived successfully"
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Carrier not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/facilities": {
      "post": {
        "operationId": "upsertFacility",
        "tags": [
          "Facility Management"
        ],
        "summary": "Create or update a facility",
        "description": "Create or update a single facility, keyed on the `externalId` you send. An `externalId` not yet seen for your brokerage creates a facility; one already stored updates it.\n\n**This is a whole-record replace, not a partial update.** Any field omitted from the body is cleared on an existing facility rather than left as it was. Send the complete record on every call. Posting a facility without `notes`, for example, erases notes already stored against it.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublicFacilityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Facility created or updated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublicFacilityResponse"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request data",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "A field is missing or invalid. `details` names the field.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/facilities/bulk": {
      "post": {
        "operationId": "bulkUpsertFacilities",
        "tags": [
          "Facility Management"
        ],
        "summary": "Bulk create or update facilities",
        "description": "Create or update up to 20 facilities in one request. The response returns one result per input record, in the same order.\n\n**Every record is a whole-record replace**, on the same terms as the single-facility route above. Omitted fields are cleared.\n\nRecords are processed independently. A record that fails a value check, such as a malformed email or an unknown country, is returned with `status: FAILED` and the rest still apply.\n\nIf any record is missing `externalId` or `name`, or has a field of the wrong type, the whole request is rejected with a `422` and nothing is written.\n\nMore than 20 facilities is rejected with a `400`.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpsertFacilitiesRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Bulk operation completed. Check each entry in `results`; a `200` does not mean every record succeeded.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkUpsertFacilitiesResponse"
                }
              }
            }
          },
          "400": {
            "description": "Batch size exceeded; send at most 20 facilities per request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "A facility is missing a required field or has a field of the wrong type. Nothing is written.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/csv-imports": {
      "post": {
        "operationId": "createCsvImport",
        "tags": [
          "CSV Imports"
        ],
        "summary": "Import a CSV file",
        "description": "Submit a CSV file for asynchronous ingestion into Augment. The request body is the raw file content, sent with `Content-Type: text/csv` — not a multipart upload. The brokerage that owns the import is resolved from the API key used to authenticate the request.\n\nA `202` response means the file was accepted and enqueued, not that every row was imported. Processing happens asynchronously; row-level mapping failures surface on the ingest event referenced by `ingestId`, not in this response.\n\n`mappingName` selects the CSV column mapping to apply: either a global default mapping or one configured specifically for your brokerage. If no mapping with that name is configured, the request fails with `CSV_IMPORT_UNKNOWN_MAPPING_NAME`. Contact Augment to have a mapping configured before using this endpoint.\n\nFiles are capped at 5 MB, and each brokerage may submit at most 50 files per UTC day.\n",
        "parameters": [
          {
            "name": "mappingName",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Name of the configured CSV mapping to apply.",
            "example": "default-load-import"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "text/csv": {
              "schema": {
                "type": "string",
                "format": "binary"
              },
              "example": "loadNumber,mode,status,pickupCity,deliveryCity\nLOAD-12345,FTL,DRAFT,Santa Monica,San Francisco\nLOAD-12346,FTL,DRAFT,Los Angeles,Seattle\n"
            }
          }
        },
        "responses": {
          "202": {
            "description": "CSV import accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CsvImportAcceptedResponse"
                }
              }
            }
          },
          "400": {
            "description": "Malformed request; do not retry without changing it. `errorCode` identifies the specific failure: `CSV_IMPORT_MISSING_MAPPING_NAME` (the `mappingName` query parameter was not sent), `CSV_IMPORT_INVALID_BODY` (the request body was not raw CSV content — for example an empty body), `CSV_IMPORT_EMPTY_FILE` (the file had no non-blank lines), `CSV_IMPORT_FILE_TOO_LARGE` (the file exceeds 5 MB), `CSV_IMPORT_MISSING_HEADER_ROW` (fewer than two non-blank lines, so there is no header plus at least one data row), or `CSV_IMPORT_UNKNOWN_MAPPING_NAME` (no mapping with that name is configured for your brokerage or globally).\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                },
                "example": {
                  "message": "Bad Request",
                  "errorCode": "CSV_IMPORT_FILE_TOO_LARGE",
                  "details": "File exceeds the maximum size of 5242880 bytes"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "429": {
            "description": "Daily file cap reached for this brokerage. Retry after midnight UTC; do not retry sooner.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                },
                "example": {
                  "message": "Too Many Requests",
                  "errorCode": "CSV_IMPORT_DAILY_FILE_CAP_EXCEEDED",
                  "details": "Daily cap of 50 files per brokerage reached; retry after midnight UTC"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-endpoints": {
      "get": {
        "tags": [
          "Webhook Endpoints"
        ],
        "operationId": "listWebhookEndpoints",
        "summary": "List webhook endpoints",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Lists public webhook endpoints for the authenticated brokerage. Customers do not pass `brokerageKey`; the brokerage is resolved from the API key.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "responses": {
          "200": {
            "description": "Webhook endpoints returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookEndpoint"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Webhook Endpoints"
        ],
        "operationId": "createWebhookEndpoint",
        "summary": "Create webhook endpoint",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Creates a public webhook endpoint for the authenticated brokerage. The endpoint URL must use HTTPS. Created endpoints use webhook payload version 2 and TLS verification. You cannot create v1 webhook subscriptions through self-service management. After creating an endpoint, create a webhook subscription that points to the returned `id`.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWebhookEndpointRequest"
              },
              "example": {
                "name": "Primary Webhook",
                "url": "https://example.com/webhooks/augment",
                "auth": {
                  "type": "bearerToken",
                  "token": "customer-secret-token"
                },
                "customHeaders": {
                  "X-Source": "augment"
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Webhook endpoint created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookEndpoint"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-endpoints/{webhookEndpointId}": {
      "parameters": [
        {
          "name": "webhookEndpointId",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          },
          "description": "Webhook endpoint ID"
        }
      ],
      "get": {
        "tags": [
          "Webhook Endpoints"
        ],
        "operationId": "getWebhookEndpoint",
        "summary": "Get webhook endpoint",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Returns one public webhook endpoint for the authenticated brokerage. Returns `404` if the endpoint does not exist or is not a public webhook endpoint for that brokerage.\n",
        "responses": {
          "200": {
            "description": "Webhook endpoint returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookEndpoint"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Webhook Endpoints"
        ],
        "operationId": "updateWebhookEndpoint",
        "summary": "Update webhook endpoint",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Partially updates a public webhook endpoint. Supported fields are `name`, `url`, `auth`, and `customHeaders`. At least one field is required. Omitted fields are preserved. Passing `customHeaders: null` clears custom headers. Existing webhook subscriptions stay attached to the same endpoint ID. After changing the endpoint URL or auth, test each affected subscription.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWebhookEndpointRequest"
              },
              "example": {
                "url": "https://example.com/webhooks/augment-v2",
                "customHeaders": null
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Webhook endpoint updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookEndpoint"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Webhook Endpoints"
        ],
        "operationId": "deleteWebhookEndpoint",
        "summary": "Delete webhook endpoint",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Deletes a public webhook endpoint. This returns `409` if any webhook subscription still references the endpoint.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "responses": {
          "204": {
            "description": "Webhook endpoint deleted successfully"
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook endpoint not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "409": {
            "description": "Webhook endpoint is still referenced by a subscription",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-event-types": {
      "get": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "listWebhookEventTypes",
        "summary": "List webhook event types",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Returns the public event types supported for subscription creation. Use this endpoint as the source of truth for allowed `eventType` values before creating a webhook subscription.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "responses": {
          "200": {
            "description": "Webhook event types returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookManagementEventType"
                  }
                },
                "example": [
                  "TRACKING_UPDATE",
                  "STOP_UPDATE",
                  "LOAD_CARRIER_UPDATE",
                  "SEND_TMS_COMMENT",
                  "SCHEDULED_CARRIER_OUTREACH",
                  "UPLOAD_FILES",
                  "PUSH_BID_TO_TMS",
                  "PUSH_LOAD_DRAFT",
                  "CARRIER_ISSUE_UPDATED"
                ]
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-subscriptions": {
      "get": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "listWebhookSubscriptions",
        "summary": "List webhook subscriptions",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Lists public webhook subscriptions for the authenticated brokerage. A subscription connects one public webhook endpoint to one public webhook event type.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "responses": {
          "200": {
            "description": "Webhook subscriptions returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/WebhookSubscription"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "createWebhookSubscription",
        "summary": "Create webhook subscription",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Creates a subscription from a public webhook endpoint to one public event type. `isActive` is optional and defaults to `true`. The endpoint must exist and must be a public webhook endpoint for the authenticated brokerage. Duplicate subscriptions for the same `webhookEndpointId` and `eventType` are rejected with `409`. After creating the subscription, send a test delivery for the returned subscription `id`. Subscriptions created through these public APIs deliver version 2 webhook event shapes for the selected event type.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWebhookSubscriptionRequest"
              },
              "example": {
                "webhookEndpointId": "endpoint-id",
                "eventType": "TRACKING_UPDATE",
                "isActive": true
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Webhook subscription created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscription"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "409": {
            "description": "Webhook endpoint already has a subscription for this event type",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-subscriptions/{subscriptionId}": {
      "parameters": [
        {
          "name": "subscriptionId",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          },
          "description": "Webhook subscription ID"
        }
      ],
      "get": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "getWebhookSubscription",
        "summary": "Get webhook subscription",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Returns one public webhook subscription for the authenticated brokerage, or `404` if no matching public subscription exists.\n",
        "responses": {
          "200": {
            "description": "Webhook subscription returned successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscription"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook subscription not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "updateWebhookSubscription",
        "summary": "Update webhook subscription",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Partially updates a public webhook subscription. Only `webhookEndpointId` and `isActive` are updatable. `eventType` is not updatable; create a new subscription to change event type. At least one field is required.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateWebhookSubscriptionRequest"
              },
              "example": {
                "webhookEndpointId": "new-endpoint-id",
                "isActive": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Webhook subscription updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhookSubscription"
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook subscription not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "409": {
            "description": "Webhook endpoint already has a subscription for this event type",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "deleteWebhookSubscription",
        "summary": "Delete webhook subscription",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Deletes a public webhook subscription. This returns `409` if the subscription has group overrides; those overrides must be removed first.\n\nAccess to webhook management is gated by brokerage. Talk to Augment to enable access before relying on this endpoint.\n",
        "responses": {
          "204": {
            "description": "Webhook subscription deleted successfully"
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Webhook management access is not enabled for this brokerage",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook subscription not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "409": {
            "description": "Webhook subscription has group overrides",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/v2/webhook-subscriptions/{subscriptionId}/test": {
      "parameters": [
        {
          "name": "subscriptionId",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string"
          },
          "description": "Webhook subscription ID"
        }
      ],
      "post": {
        "tags": [
          "Webhook Event Subscriptions"
        ],
        "operationId": "testWebhookSubscription",
        "summary": "Test webhook subscription",
        "security": [
          {
            "httpBasic": []
          }
        ],
        "description": "Sends a test delivery for a public webhook subscription. The request body is optional. If omitted, Augment sends a default test payload for the subscription's event type.\n\nTo send your own test payload, the API request body must be an object with a `payload` key. The value of `payload` should be the webhook event body you want Augment to send. Augment unwraps this field and sends only the `payload` value as the HTTP request body to your webhook endpoint. Use a payload value that matches the webhook event you are testing. For subscriptions created through these public APIs, refer to the version 2 event shapes documented in the [Webhooks reference](/webhooks). You cannot create v1 webhook subscriptions through self-service management.\n\nUse this after creating a subscription or updating the endpoint URL, auth token, or custom headers.\n",
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TestWebhookSubscriptionRequest"
              },
              "example": {
                "payload": {
                  "id": "test-event-10507012-001",
                  "workflow": "TRACK_AND_TRACE",
                  "occurredAt": "2026-06-08T12:00:00.000Z",
                  "loadNumber": "10507012",
                  "customerLoadInternalId": null,
                  "eventType": "TRACKING_UPDATE",
                  "data": {
                    "nextSequence": 1,
                    "nextEtaUtc": "2026-06-09T14:00:00.000Z",
                    "eventType": "PING",
                    "eventSource": "PHONE_EMAIL",
                    "eventUtc": "2026-06-08T12:00:00.000Z",
                    "city": "Ashland",
                    "stateOrProvince": "VA",
                    "latitude": 37.759,
                    "longitude": -77.479,
                    "notes": "Driver in Ashland, VA; in transit to Westfield, MA delivery by 10:00 AM tomorrow."
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Test delivery result",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TestWebhookSubscriptionResponse"
                },
                "example": {
                  "statusCode": 200,
                  "body": {}
                }
              }
            }
          },
          "400": {
            "description": "Bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "404": {
            "description": "Webhook subscription not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    },
    "/rates/quote": {
      "post": {
        "operationId": "createRateQuote",
        "tags": [
          "Quote Management"
        ],
        "servers": [
          {
            "url": "https://rates.example.com/v1",
            "description": "Placeholder. The endpoint is hosted by the rate provider, so the base URL, the path, and the authentication scheme are determined by the provider. Actual values are supplied to Augment during setup.\n"
          }
        ],
        "summary": "Request a rate quote",
        "description": "This endpoint is implemented by the rate provider and called by Augment. Every other endpoint in this reference operates in the opposite direction, so the distinction warrants emphasis: Augment acts as the HTTP client, and cannot retrieve quotes until the endpoint is available on the provider side. The path and base URL shown above are placeholders for the values the provider assigns.\n\nEach request describes a single shipment and expects the rates that apply to it. `mode`, `rateType`, two stops carrying a city and a state, and `equipment.equipmentType` are always present. The remaining fields are included when Augment holds a value and omitted when it does not, so an omitted optional field should be read as unknown rather than as a default. An omitted `isHazmat`, for example, does not indicate that the freight is non-hazardous.\n\n`dimensions` is optional, but Augment includes it whenever a value is available, so that the rate provider rather than Augment determines whether a shipment is legal or oversize. Where oversize freight falls outside the scope of an initial build, `dimensions` may be disregarded and the field reserved for later use.\n\nWhere a shipment cannot be priced, the response must be `200` with an empty `rates` array and a populated `noRateReason`. This condition must not be reported with an error status: an error prevents Augment from distinguishing between \"no rate exists\" and \"the endpoint is unavailable\", and the two require opposite handling. 4xx and 5xx responses are reserved for malformed requests, authentication failures, and genuine faults.\n\nOne request is sent per rep. When a customer email reaches several of your reps, Augment sends one request for each, with its own `augmentQuoteId` and that rep as `QUOTE_OWNER`. Create one quote per request and do not merge them.\n\nA request that repeats an `augmentQuoteId` already sent is an update to that quote, not a new quote. Augment resends it when the customer replies on the same thread with changes. Treat the call as idempotent: apply the latest values and return the same `externalId`.\n",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RateQuoteRequest"
              },
              "example": {
                "mode": "FTL",
                "rateType": "SPOT",
                "stops": [
                  {
                    "sequence": 1,
                    "stopActivity": "PICKUP",
                    "address": {
                      "city": "Houston",
                      "stateOrProvince": "TX",
                      "postalCode": "77002",
                      "country": "US"
                    }
                  },
                  {
                    "sequence": 2,
                    "stopActivity": "DELIVERY",
                    "address": {
                      "city": "Avon",
                      "stateOrProvince": "IN",
                      "postalCode": null,
                      "country": "US"
                    }
                  }
                ],
                "equipment": {
                  "equipmentType": "FLATBED"
                },
                "weight": {
                  "value": 44000,
                  "unit": "LB"
                },
                "dimensions": {
                  "lengthInches": 636,
                  "widthInches": 126,
                  "heightInches": 102
                },
                "commodity": "Steel coil",
                "pickupDate": "2026-09-03",
                "totalMiles": 1015,
                "tarpSize": "8 foot",
                "isHazmat": false,
                "hazmatUnNumber": null,
                "accessorials": [
                  "TARPS"
                ],
                "customerName": "PALRAM Americas",
                "numberTruckloads": 1,
                "referenceNumbers": [
                  {
                    "name": "TENDER_NUMBER",
                    "value": "0507150210"
                  }
                ],
                "contacts": [
                  {
                    "role": "QUOTE_OWNER",
                    "email": "rep@provider.example.com"
                  },
                  {
                    "role": "QUOTE_REQUESTER",
                    "name": "Jane Shipper"
                  }
                ],
                "email": {
                  "direction": "INBOUND",
                  "messageId": "<abc123@mail.shipper.example.com>",
                  "sentAt": "2026-09-02T14:05:00Z",
                  "subject": "Spot quote request Houston, TX to Avon, IN",
                  "participants": {
                    "from": {
                      "name": "Jane Shipper",
                      "address": "jane@shipper.example.com"
                    },
                    "to": [
                      {
                        "address": "rep@provider.example.com"
                      }
                    ],
                    "cc": []
                  },
                  "body": "Can you quote a flatbed of steel coil, Houston TX to Avon IN, 44,000 lbs, pick up 9/3?",
                  "summary": "Spot quote, flatbed steel coil, Houston TX to Avon IN, 44,000 lbs, pickup 9/3",
                  "classification": "QUOTE_REQUEST",
                  "attachmentCount": 0
                },
                "customData": {},
                "augmentQuoteId": "01kzry3mzq8f4h2n7v9x1c3b5d"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The applicable rates. Also the response for a shipment that cannot be priced: an empty `rates` array plus a `noRateReason`.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateQuoteResponse"
                },
                "example": {
                  "augmentQuoteId": "01kzry3mzq8f4h2n7v9x1c3b5d",
                  "externalId": "Q-448120",
                  "quotedAt": "2026-08-27T14:22:10Z",
                  "currency": "USD",
                  "totalMiles": 1015,
                  "rates": [
                    {
                      "source": "ATS_SPECIALIZED",
                      "linehaul": 4800,
                      "fuelSurcharge": 1000,
                      "fuelSurchargePct": 20.8,
                      "allInTotal": 5800,
                      "costPerMile": 4.73,
                      "marginPct": 17,
                      "accessorials": [
                        {
                          "code": "PERMITS",
                          "label": "Permit charges",
                          "amount": 4.18,
                          "basis": "FLAT"
                        },
                        {
                          "code": "OVERSIZE",
                          "label": "OD over 10 feet",
                          "amount": 0.45,
                          "basis": "PER_MILE"
                        },
                        {
                          "code": "STOP_OFF_CHARGE",
                          "label": "Stop-off fee",
                          "amount": 150,
                          "basis": "PER_STOP"
                        }
                      ]
                    },
                    {
                      "source": "DAT",
                      "linehaul": 4550,
                      "fuelSurcharge": 980,
                      "fuelSurchargePct": null,
                      "allInTotal": 5530,
                      "costPerMile": 4.48,
                      "marginPct": null,
                      "accessorials": []
                    }
                  ],
                  "noRateReason": null,
                  "noRateDetail": null
                }
              }
            }
          },
          "400": {
            "description": "Malformed request body",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "422": {
            "description": "Validation errors",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          },
          "500": {
            "description": "Rating failed. Reserved for genuine faults. A shipment that simply cannot be priced is a 200 with a `noRateReason`.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiErrorBody"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "httpBasic": {
        "type": "http",
        "scheme": "basic",
        "description": "Authenticate with HTTP Basic auth by sending an empty username and your API key as the password, equivalent to encoding :<API_KEY> in the Basic credential.\n"
      }
    },
    "schemas": {
      "RateQuoteRequest": {
        "type": "object",
        "description": "One shipment to be priced. `mode`, `rateType`, `stops`, `equipment` and `augmentQuoteId` are always sent. The rest is sent when Augment has it, so treat a missing field as unknown rather than as a default.\n",
        "required": [
          "mode",
          "rateType",
          "stops",
          "equipment",
          "augmentQuoteId"
        ],
        "x-property-order": [
          "mode",
          "rateType",
          "stops",
          "equipment",
          "weight",
          "dimensions",
          "commodity",
          "pickupDate",
          "totalMiles",
          "tarpSize",
          "isHazmat",
          "hazmatUnNumber",
          "accessorials",
          "customerName",
          "numberTruckloads",
          "wellspaceInches",
          "referenceNumbers",
          "contacts",
          "email",
          "customData",
          "augmentQuoteId"
        ],
        "properties": {
          "mode": {
            "description": "Transportation mode. Same values as `Load.mode`.",
            "enum": [
              "DRAYAGE",
              "EXPEDITE",
              "FTL",
              "LTL",
              "PARTIAL"
            ]
          },
          "rateType": {
            "description": "The commercial basis of the rate being asked for. Same values as `Load.rateType`.\n",
            "enum": [
              "CONTRACT",
              "DEDICATED",
              "PROJECT",
              "SPOT"
            ]
          },
          "stops": {
            "type": "array",
            "minItems": 2,
            "description": "The route in sequence. One `PICKUP` and one `DELIVERY` is the floor and is enough to return a rate.\n\nThis is an array rather than an origin and destination pair so a third or later stop is visible in the request. You cannot charge a stop-off fee against a lane that doesn't show the stop.\n",
            "items": {
              "$ref": "#/components/schemas/QuoteStop"
            }
          },
          "equipment": {
            "type": "object",
            "description": "Equipment needed to move the shipment",
            "required": [
              "equipmentType"
            ],
            "properties": {
              "equipmentType": {
                "$ref": "#/components/schemas/QuoteEquipmentType"
              }
            }
          },
          "weight": {
            "type": [
              "object",
              "null"
            ],
            "description": "Total shipment weight. An object rather than a bare number, matching the load contract, so the unit is never guessed.\n",
            "x-property-order": [
              "value",
              "unit"
            ],
            "properties": {
              "value": {
                "type": "number",
                "description": "Weight amount"
              },
              "unit": {
                "type": "string",
                "enum": [
                  "LB",
                  "KG"
                ],
                "description": "Unit of measure for the weight"
              }
            }
          },
          "dimensions": {
            "type": [
              "object",
              "null"
            ],
            "description": "Overall shipment dimensions in whole inches. Legal width runs to roughly 12 feet; wider than that generally needs escorts.\n",
            "x-property-order": [
              "lengthInches",
              "widthInches",
              "heightInches"
            ],
            "properties": {
              "lengthInches": {
                "type": "integer",
                "description": "Overall length in whole inches"
              },
              "widthInches": {
                "type": "integer",
                "description": "Overall width in whole inches"
              },
              "heightInches": {
                "type": "integer",
                "description": "Overall height in whole inches"
              }
            }
          },
          "commodity": {
            "type": [
              "string",
              "null"
            ],
            "description": "Free-text description of the freight"
          },
          "pickupDate": {
            "type": [
              "string",
              "null"
            ],
            "format": "date",
            "description": "Requested pickup day"
          },
          "totalMiles": {
            "type": [
              "number",
              "null"
            ],
            "description": "Augment's mileage estimate, when it has one. Advisory only: rating should use the provider's own mileage, which is then returned on the response.\n"
          },
          "tarpSize": {
            "type": [
              "string",
              "null"
            ],
            "description": "Tarp size requirement, when the freight needs tarping"
          },
          "isHazmat": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Whether the shipment carries hazardous materials. Missing means unknown, not false.\n"
          },
          "hazmatUnNumber": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^UN[0-9]{4}$",
            "description": "UN number for the hazardous material, `UN` followed by four digits. Sent only when `isHazmat` is true and the source document carried the number.\n",
            "examples": [
              "UN1090",
              "UN1203"
            ]
          },
          "accessorials": {
            "type": [
              "array",
              "null"
            ],
            "description": "Accessorial codes Augment already knows the shipment needs, such as `TARPS` or `TWIC`. Advisory only. You return the priced accessorials on each rate and are not limited to what's listed here.\n",
            "items": {
              "$ref": "#/components/schemas/AccessorialsEnum"
            }
          },
          "customerName": {
            "type": [
              "string",
              "null"
            ],
            "description": "The shipper the quote is for, when a customer rate applies"
          },
          "augmentQuoteId": {
            "type": "string",
            "description": "Augment's id for this quote. Echo it back unchanged. Treat it as an opaque string.\n"
          },
          "numberTruckloads": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 1,
            "description": "Number of truckloads on this lane. Missing means 1. One request covers one lane; several truckloads on the same lane are counted here rather than sent as separate requests.\n"
          },
          "wellspaceInches": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Well space needed, in whole inches, for drop-deck freight. A separate field rather than part of `dimensions`, because it describes the trailer requirement, not the freight.\n"
          },
          "referenceNumbers": {
            "type": [
              "array",
              "null"
            ],
            "description": "Reference numbers the customer put on the request, such as a tender or spot-bid number. Use them to recognize a follow-up on the same request.\n",
            "items": {
              "type": "object",
              "required": [
                "name",
                "value"
              ],
              "properties": {
                "name": {
                  "$ref": "#/components/schemas/QuoteReferenceNumberName"
                },
                "value": {
                  "type": "string"
                }
              }
            }
          },
          "contacts": {
            "type": "array",
            "description": "People on the quote. Exactly one `QUOTE_OWNER` is always sent: the rep whose mailbox received the request. `QUOTE_REQUESTER` is the customer contact who asked, when known.\n",
            "items": {
              "$ref": "#/components/schemas/QuoteContact"
            }
          },
          "email": {
            "$ref": "#/components/schemas/QuoteEmail"
          },
          "customData": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": true,
            "description": "Additional fields Augment can reliably parse from the email, agreed with each provider during setup, such as a customer-specific code. Keys and values are defined per provider. Ignore any key you do not use.\n"
          }
        }
      },
      "QuoteStop": {
        "type": "object",
        "description": "One stop on the route. A rate request describes a geographic point rather than a facility, so no street address is sent.\n",
        "required": [
          "sequence",
          "stopActivity",
          "address"
        ],
        "x-property-order": [
          "sequence",
          "stopActivity",
          "address"
        ],
        "properties": {
          "sequence": {
            "type": "integer",
            "minimum": 1,
            "description": "Position of the stop in the route. Starts at 1 and goes up by 1 for each stop after it.\n"
          },
          "stopActivity": {
            "enum": [
              "PICKUP",
              "DELIVERY"
            ]
          },
          "address": {
            "type": "object",
            "description": "A geographic point. The field names match `LoadRouteStop.address`, but only `city`, `stateOrProvince` and `country` are required. Quote requests routinely arrive with no ZIP, and street lines are never sent.\n",
            "required": [
              "city",
              "stateOrProvince",
              "country"
            ],
            "x-property-order": [
              "city",
              "stateOrProvince",
              "postalCode",
              "country"
            ],
            "properties": {
              "city": {
                "type": "string",
                "description": "City name"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "State or province code"
              },
              "postalCode": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Postal or ZIP code, when the source document had one"
              },
              "country": {
                "type": "string",
                "enum": [
                  "US",
                  "CA",
                  "MX"
                ],
                "description": "Two-letter ISO country code"
              }
            }
          }
        }
      },
      "QuoteEquipmentType": {
        "type": "string",
        "description": "A subset of the platform equipment enum, weighted toward specialized and oversize trailers.\n\nClosed set for this endpoint. The full platform enum runs to over a hundred values and carries aliases for the same trailer, so provider trailer codes should be mapped onto these values, with `OTHER` sent where nothing fits, rather than a synonym Augment may not map back.\n",
        "enum": [
          "DRY_VAN",
          "REEFER",
          "FLATBED",
          "FLATBED_WITH_TARPS",
          "FLATBED_OVERDIMENSION",
          "FLATBED_STRETCH",
          "STEP_DECK",
          "STEP_DECK_OR_REM_GOOSENECK_RGN",
          "DOUBLE_DROP",
          "LOWBOY",
          "LOWBOY_OR_REM_GOOSENECK_RGN",
          "LOWBOY_OVERDIMENSION",
          "REMOVABLE_GOOSENECK",
          "CONESTOGA",
          "STRETCH_TRAILER",
          "WALKING_FLOOR",
          "OTHER"
        ]
      },
      "QuoteContact": {
        "type": "object",
        "required": [
          "role"
        ],
        "x-property-order": [
          "role",
          "name",
          "email"
        ],
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "QUOTE_OWNER",
              "QUOTE_REQUESTER"
            ],
            "description": "`QUOTE_OWNER` is the provider's rep who owns the quote. `QUOTE_REQUESTER` is the customer contact who asked for it.\n"
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "Contact name, when known"
          },
          "email": {
            "type": [
              "string",
              "null"
            ],
            "format": "email",
            "description": "Contact email address, when known"
          }
        }
      },
      "QuoteReferenceNumberName": {
        "description": "Kind of reference number on a quote request",
        "enum": [
          "TENDER_NUMBER",
          "PO_NUMBER",
          "BOL_NUMBER",
          "OTHER"
        ]
      },
      "QuoteEmail": {
        "type": [
          "object",
          "null"
        ],
        "description": "The email that triggered this quote. When one thread carries several quote requests, this is the message that produced this quote, not the first message in the thread.\n",
        "x-property-order": [
          "direction",
          "messageId",
          "sentAt",
          "subject",
          "participants",
          "body",
          "summary",
          "classification",
          "attachmentCount"
        ],
        "properties": {
          "direction": {
            "type": "string",
            "enum": [
              "INBOUND"
            ],
            "description": "Direction of the email relative to the provider's rep"
          },
          "messageId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Internet Message-ID of the triggering email (the RFC 5322 `Message-ID` header). It stays the same across folders and mailboxes. To open the email in Microsoft 365, look it up with Microsoft Graph: `GET /users/{rep}/messages?$filter=internetMessageId eq '{messageId}'`, which returns the message `id` and `webLink`.\n"
          },
          "sentAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "When the triggering email was sent, in UTC"
          },
          "subject": {
            "type": [
              "string",
              "null"
            ],
            "description": "Subject line of the triggering email"
          },
          "participants": {
            "type": "object",
            "description": "Sender and recipients of the triggering email",
            "properties": {
              "from": {
                "$ref": "#/components/schemas/QuoteEmailAddress"
              },
              "to": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/QuoteEmailAddress"
                }
              },
              "cc": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/QuoteEmailAddress"
                }
              }
            }
          },
          "body": {
            "type": [
              "string",
              "null"
            ],
            "description": "Plain-text body of the triggering email, as received. A reply or forward includes the quoted history it carried.\n"
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "description": "Short summary of the request, written by Augment. A convenience for the rep; `body` stays the source of truth.\n"
          },
          "classification": {
            "type": [
              "string",
              "null"
            ],
            "description": "How Augment classified the email, for example `QUOTE_REQUEST`.\n"
          },
          "attachmentCount": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0,
            "description": "Number of attachments on the triggering email, when known"
          }
        }
      },
      "QuoteEmailAddress": {
        "type": "object",
        "required": [
          "address"
        ],
        "properties": {
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "Display name, when present"
          },
          "address": {
            "type": "string",
            "format": "email",
            "description": "Email address"
          }
        }
      },
      "RateQuoteResponse": {
        "type": "object",
        "description": "The rates that apply to the shipment. `rates` is empty and `noRateReason` is set where the shipment cannot be priced.\n",
        "required": [
          "augmentQuoteId",
          "quotedAt",
          "currency",
          "rates"
        ],
        "x-property-order": [
          "augmentQuoteId",
          "externalId",
          "quotedAt",
          "currency",
          "totalMiles",
          "rates",
          "noRateReason",
          "noRateDetail"
        ],
        "properties": {
          "augmentQuoteId": {
            "type": "string",
            "description": "The `augmentQuoteId` from the request, echoed back unchanged"
          },
          "externalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Your id for the quote this request created, such as the TMS quote number. Augment stores it against `augmentQuoteId`.\n"
          },
          "quotedAt": {
            "type": "string",
            "format": "date-time",
            "description": "When the rate was produced, in UTC"
          },
          "currency": {
            "type": "string",
            "enum": [
              "USD",
              "CAD"
            ],
            "description": "Currency for every money field in the response. Cross-border lanes are in scope, so CAD is supported.\n"
          },
          "totalMiles": {
            "type": [
              "number",
              "null"
            ],
            "description": "The mileage the rates were actually priced against. Augment prefers this over the estimate it sent, and extends `PER_MILE` accessorials with it.\n"
          },
          "rates": {
            "type": "array",
            "description": "One entry per rating source. Empty where the shipment cannot be priced.\n\nA list keyed by `source` rather than a fixed field per rater means adding a source later is additive instead of a breaking change.\n",
            "items": {
              "$ref": "#/components/schemas/Rate"
            }
          },
          "noRateReason": {
            "type": [
              "string",
              "null"
            ],
            "description": "Why there is no rate. Required when `rates` is empty, and null whenever `rates` has at least one entry.\n\nAn enum rather than free text so Augment can route the quote without parsing a message. `MISSING_REQUIRED_INPUT` is the only value Augment can act on automatically: the request was well formed but did not carry a value the provider requires, so Augment can obtain it from the customer and retry. Every other value is final for that shipment and routes the quote to a rep.\n",
            "enum": [
              "LANE_NOT_SERVICED",
              "NO_CAPACITY",
              "EQUIPMENT_NOT_SUPPORTED",
              "HAZMAT_NOT_SUPPORTED",
              "OVERSIZE_OUT_OF_SCOPE",
              "COMMODITY_RESTRICTED",
              "CUSTOMER_NOT_FOUND",
              "MISSING_REQUIRED_INPUT",
              "RATE_UNAVAILABLE",
              "OTHER",
              null
            ]
          },
          "noRateDetail": {
            "type": [
              "string",
              "null"
            ],
            "description": "Optional free text expanding on `noRateReason`, shown to the rep working the quote. Augment does not parse it.\n"
          }
        }
      },
      "Rate": {
        "type": "object",
        "description": "One rate from one rating source.\n\n`linehaul`, `fuelSurcharge` and `allInTotal` are all required every time. Augment does not add the parts up and does not subtract them out of the total. When they disagree it flags the rate for a person instead of picking a number to trust.\n",
        "required": [
          "source",
          "linehaul",
          "fuelSurcharge",
          "allInTotal"
        ],
        "x-property-order": [
          "source",
          "linehaul",
          "fuelSurcharge",
          "fuelSurchargePct",
          "allInTotal",
          "costPerMile",
          "marginPct",
          "accessorials"
        ],
        "properties": {
          "source": {
            "type": "string",
            "description": "The system or model that produced the rate.\n\nNot a closed set. New rating sources are added over time and Augment tolerates a value it has not seen, so the examples below are not exhaustive. Values should use UPPER_SNAKE_CASE, and a given source's value should remain stable between responses.\n\nThe values are vendor-neutral on purpose: the same field carries a specialized in-house rate, a market rate, or a model added later, without either side reserving vendor-specific names.\n",
            "examples": [
              "ATS_SPECIALIZED",
              "DAT",
              "CONTRACT_TARIFF",
              "INTERNAL_MODEL",
              "RATE_HISTORY"
            ]
          },
          "linehaul": {
            "type": "number",
            "description": "Linehaul amount, before fuel and accessorials"
          },
          "fuelSurcharge": {
            "type": "number",
            "description": "Fuel surcharge in dollars, not a percent. Send 0 rather than leaving it out when a rate carries no fuel surcharge.\n"
          },
          "fuelSurchargePct": {
            "type": [
              "number",
              "null"
            ],
            "description": "The fuel surcharge as a whole percent, where the provider holds it in that form. Sent alongside `fuelSurcharge`, never instead of it.\n"
          },
          "allInTotal": {
            "type": "number",
            "description": "Total rate including linehaul, fuel and any accessorials already rolled in.\n"
          },
          "costPerMile": {
            "type": [
              "number",
              "null"
            ],
            "description": "Cost per mile for this rate, where the provider calculates it\n"
          },
          "marginPct": {
            "type": [
              "number",
              "null"
            ],
            "description": "Margin as a whole percent: 17, not 0.17.\n\nWhen a rate carries a margin, Augment seeds its margin selector with it and does not stack a second margin on top; a rep override is still tracked. Send null when the source has no margin of its own, as with a raw market rate.\n"
          },
          "accessorials": {
            "type": "array",
            "description": "The accessorials that apply to this shipment on this rate, with amounts. Send an empty array when none do.\n\nAugment asks for these per rate instead of keeping its own table, because a table cannot represent a route-dependent charge such as metro tolls, bridge and island fees, or county and city permits, and goes stale silently whenever a charge changes on the provider side.\n",
            "items": {
              "$ref": "#/components/schemas/RateAccessorial"
            }
          }
        }
      },
      "RateAccessorial": {
        "type": "object",
        "description": "One priced accessorial. `basis` is what lets a flat permit charge and a per-mile oversize charge share one shape.\n",
        "required": [
          "code",
          "amount",
          "basis"
        ],
        "x-property-order": [
          "code",
          "label",
          "amount",
          "basis"
        ],
        "properties": {
          "code": {
            "$ref": "#/components/schemas/AccessorialsEnum"
          },
          "label": {
            "type": [
              "string",
              "null"
            ],
            "description": "The charge as the provider words it, shown to the rep"
          },
          "amount": {
            "type": "number",
            "description": "The amount, read according to `basis`. A `PER_MILE` amount is the rate per mile, not the extended total.\n"
          },
          "basis": {
            "type": "string",
            "description": "How `amount` applies. `FLAT` is charged once for the shipment, `PER_MILE` is multiplied by the route mileage, and `PER_STOP` is charged for each stop beyond the first pickup and last delivery.\n",
            "enum": [
              "FLAT",
              "PER_MILE",
              "PER_STOP"
            ]
          }
        }
      },
      "CarrierIssueExternalRefRequest": {
        "type": "object",
        "description": "Correlates a carrier issue from a CARRIER_ISSUE_UPDATED webhook with the matching incident id in your TMS.\n",
        "required": [
          "carrierIssueId",
          "externalId"
        ],
        "x-property-order": [
          "carrierIssueId",
          "externalId"
        ],
        "properties": {
          "carrierIssueId": {
            "type": "string",
            "description": "The correlation token from the CARRIER_ISSUE_UPDATED webhook payload.\n",
            "example": "01JCARRIERISSUERECORD00001"
          },
          "externalId": {
            "type": "string",
            "description": "The incident id in your TMS.",
            "example": "TMS-INC-30275"
          }
        }
      },
      "LoadPatchRequest": {
        "type": "object",
        "required": [
          "loadReference",
          "operations"
        ],
        "x-property-order": [
          "loadReference",
          "operations"
        ],
        "properties": {
          "loadReference": {
            "type": "string",
            "description": "The load number (brokerage load ID) of the load to patch.",
            "example": "LOAD-12345"
          },
          "operations": {
            "type": "array",
            "description": "One or more patch operations to apply, in order.",
            "items": {
              "$ref": "#/components/schemas/LoadPatchOperation"
            }
          }
        }
      },
      "LoadPatchOperation": {
        "oneOf": [
          {
            "title": "remove",
            "type": "object",
            "required": [
              "op",
              "path"
            ],
            "properties": {
              "op": {
                "type": "string",
                "enum": [
                  "remove"
                ]
              },
              "path": {
                "type": "string",
                "description": "A JSON Pointer ([RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901)) identifying the field to operate on. Must be one of the allowed paths documented in the PATCH endpoint description.\n",
                "example": "/status"
              }
            }
          },
          {
            "title": "add / replace / append",
            "type": "object",
            "required": [
              "op",
              "path",
              "value"
            ],
            "properties": {
              "op": {
                "type": "string",
                "enum": [
                  "add",
                  "replace",
                  "append"
                ],
                "description": "The operation to perform. `add` and `replace` follow [RFC 6902](https://datatracker.ietf.org/doc/html/rfc6902). `append` is a custom extension that pushes a new element onto an array field.\n"
              },
              "path": {
                "type": "string",
                "description": "A JSON Pointer ([RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901)) identifying the field to operate on. Must be one of the allowed paths documented in the PATCH endpoint description.\n",
                "example": "/status"
              },
              "value": {
                "description": "The value to set or insert."
              }
            }
          },
          {
            "title": "upsert",
            "type": "object",
            "required": [
              "op",
              "path",
              "value",
              "where"
            ],
            "properties": {
              "op": {
                "type": "string",
                "enum": [
                  "upsert"
                ],
                "description": "Custom operation that updates an existing array element matching the `where` condition, or inserts a new one if no match is found.\n"
              },
              "path": {
                "type": "string",
                "description": "A JSON Pointer ([RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901)) identifying the array field to operate on. Must be one of the allowed paths documented in the PATCH endpoint description.\n"
              },
              "value": {
                "description": "The element to insert or use as the replacement."
              },
              "where": {
                "type": "object",
                "description": "A map of field names to expected values used to identify an existing array element. If a matching element is found it is replaced with `value`; otherwise `value` is appended.\n",
                "additionalProperties": true,
                "example": {
                  "sequence": 1
                }
              }
            }
          }
        ]
      },
      "LoadPatchCarrierDriver": {
        "type": "object",
        "description": "Driver for PATCH on `/carrier` (nested) or `/carrier/drivers`.",
        "x-property-order": [
          "id",
          "name",
          "phone",
          "phoneExtension"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "TMS driver id (not Augment’s id)."
          },
          "name": {
            "type": "string",
            "description": "Driver name on the load."
          },
          "phone": {
            "type": "string",
            "description": "E.164 or supported format; see `Carrier.drivers` on create load."
          },
          "phoneExtension": {
            "type": "string",
            "description": "Digits only."
          }
        }
      },
      "LoadPatchCarrierContact": {
        "type": "object",
        "description": "Contact for PATCH on `/carrier` (nested) or `/carrier/contacts`.",
        "x-property-order": [
          "id",
          "role",
          "name",
          "email",
          "phone",
          "phoneExtension"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "TMS contact id (not Augment’s id)."
          },
          "role": {
            "type": "string",
            "enum": [
              "DISPATCHER",
              "AP_REP"
            ],
            "description": "Optional. `DISPATCHER` or `AP_REP` (same as load `CarrierContact`)."
          },
          "name": {
            "type": "string",
            "description": "Contact name."
          },
          "email": {
            "type": "string",
            "description": "Contact email."
          },
          "phone": {
            "type": "string",
            "description": "E.164 or supported format; see `CarrierContact` on create load."
          },
          "phoneExtension": {
            "type": "string",
            "description": "Digits only."
          }
        }
      },
      "LoadPatchCarrier": {
        "type": "object",
        "description": "`value` for PATCH `/carrier`: `add` (no carrier yet) or `replace`.\n",
        "x-property-order": [
          "carrierId",
          "name",
          "mcNumber",
          "dotNumber",
          "scac",
          "address",
          "drivers",
          "contacts"
        ],
        "properties": {
          "carrierId": {
            "type": "string",
            "description": "TMS carrier id for this load (not Augment’s id)."
          },
          "name": {
            "type": "string",
            "description": "Carrier name."
          },
          "mcNumber": {
            "type": "integer",
            "description": "US MC number, if sent."
          },
          "dotNumber": {
            "type": "integer",
            "description": "USDOT number, if sent."
          },
          "scac": {
            "type": "string",
            "description": "SCAC (Standard Carrier Alpha Code)—short alphabetic carrier code, often used in rail/intermodal.\n"
          },
          "address": {
            "$ref": "#/components/schemas/CarrierAddress"
          },
          "drivers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoadPatchCarrierDriver"
            }
          },
          "contacts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoadPatchCarrierContact"
            }
          }
        }
      },
      "PurchaseOrderStatus": {
        "type": "string",
        "enum": [
          "OPEN",
          "CLOSED",
          "CANCELED"
        ],
        "description": "Lifecycle state of a purchase order or one of its line items."
      },
      "PurchaseOrderLineItemRequest": {
        "type": "object",
        "description": "One ordered line on a purchase order.",
        "additionalProperties": false,
        "required": [
          "lineNumber"
        ],
        "x-property-order": [
          "lineNumber",
          "sku",
          "description",
          "orderedQuantity",
          "openQuantity",
          "unitOfMeasure",
          "unitPrice",
          "currency",
          "status",
          "expectedArrivalDate",
          "customData"
        ],
        "properties": {
          "lineNumber": {
            "type": "string",
            "description": "Your line identifier. Unique within the purchase order.",
            "example": "1"
          },
          "sku": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true,
            "maxLength": 1000
          },
          "orderedQuantity": {
            "type": "integer",
            "nullable": true
          },
          "openQuantity": {
            "type": "integer",
            "nullable": true
          },
          "unitOfMeasure": {
            "type": "string",
            "nullable": true,
            "example": "CASE"
          },
          "unitPrice": {
            "type": "string",
            "nullable": true,
            "description": "Non-negative decimal string with up to 8 integer and 2 fractional digits.\n",
            "example": "12.50"
          },
          "currency": {
            "type": "string",
            "minLength": 3,
            "maxLength": 3,
            "default": "USD",
            "description": "ISO 4217 currency code. Defaults to USD when omitted."
          },
          "status": {
            "$ref": "#/components/schemas/PurchaseOrderStatus"
          },
          "expectedArrivalDate": {
            "type": "string",
            "nullable": true,
            "description": "Day this line is expected to arrive. A calendar day (`2026-09-02`) or a full timestamp is accepted; only the UTC calendar day is stored. Send `null` to clear it.\n",
            "example": "2026-09-02"
          },
          "customData": {
            "type": "object",
            "nullable": true,
            "description": "Arbitrary JSON key-value data you want carried on the line."
          }
        }
      },
      "PurchaseOrderRequest": {
        "type": "object",
        "description": "Creates a purchase order together with its line items and its vendor and buyer contact records.\n",
        "additionalProperties": false,
        "required": [
          "purchaseOrder",
          "lineItems",
          "vendor",
          "buyerContact"
        ],
        "x-property-order": [
          "purchaseOrder",
          "lineItems",
          "vendor",
          "vendorContact",
          "buyerContact"
        ],
        "properties": {
          "purchaseOrder": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "purchaseOrderNumber",
              "status",
              "purchaseOrderDate"
            ],
            "x-property-order": [
              "purchaseOrderNumber",
              "internalPurchaseOrderNumber",
              "status",
              "purchaseOrderDate",
              "customData"
            ],
            "properties": {
              "purchaseOrderNumber": {
                "type": "string",
                "description": "Your purchase order number. Unique within your system.",
                "example": "PO-1001"
              },
              "internalPurchaseOrderNumber": {
                "type": "string",
                "nullable": true
              },
              "status": {
                "$ref": "#/components/schemas/PurchaseOrderStatus"
              },
              "purchaseOrderDate": {
                "type": "string",
                "description": "Day the purchase order was issued. A calendar day (`2026-08-18`) or a full timestamp is accepted; only the UTC calendar day is stored.\n",
                "example": "2026-08-18"
              },
              "customData": {
                "type": "object",
                "nullable": true
              }
            }
          },
          "lineItems": {
            "type": "array",
            "description": "The ordered lines. May be empty.",
            "items": {
              "$ref": "#/components/schemas/PurchaseOrderLineItemRequest"
            }
          },
          "vendor": {
            "type": "object",
            "description": "The vendor shipping the purchase order. Matched on vendorCode within your system: an existing vendor is reused rather than duplicated.\n",
            "additionalProperties": false,
            "required": [
              "name",
              "vendorCode"
            ],
            "x-property-order": [
              "name",
              "vendorCode"
            ],
            "properties": {
              "name": {
                "type": "string",
                "example": "Acme Foods"
              },
              "vendorCode": {
                "type": "string",
                "description": "Your vendor identifier. Unique within your system.",
                "example": "ACME"
              }
            }
          },
          "vendorContact": {
            "type": "object",
            "nullable": true,
            "description": "A contact at the vendor. At least one of email or phone is required when supplied.\n",
            "additionalProperties": false,
            "x-property-order": [
              "name",
              "email",
              "phone"
            ],
            "properties": {
              "name": {
                "type": "string",
                "nullable": true
              },
              "email": {
                "type": "string",
                "format": "email",
                "nullable": true,
                "example": "vic@acmefoods.example"
              },
              "phone": {
                "type": "string",
                "nullable": true,
                "description": "E.164 format, including the country code.",
                "example": "+13125550100"
              }
            }
          },
          "buyerContact": {
            "type": "object",
            "description": "The buying contact at your organization. At least one of email or phone is required.\n",
            "additionalProperties": false,
            "x-property-order": [
              "name",
              "externalId",
              "email",
              "phone",
              "phoneExtension"
            ],
            "properties": {
              "name": {
                "type": "string",
                "nullable": true
              },
              "externalId": {
                "type": "string",
                "nullable": true
              },
              "email": {
                "type": "string",
                "format": "email",
                "nullable": true,
                "example": "dana@example.com"
              },
              "phone": {
                "type": "string",
                "nullable": true,
                "description": "E.164 format, including the country code.",
                "example": "+13125550100"
              },
              "phoneExtension": {
                "type": "string",
                "nullable": true,
                "description": "Digits only.",
                "example": "204"
              }
            }
          }
        }
      },
      "PurchaseOrderLineItemResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "lineNumber",
          "currency"
        ],
        "x-property-order": [
          "id",
          "lineNumber",
          "sku",
          "description",
          "orderedQuantity",
          "openQuantity",
          "unitOfMeasure",
          "unitPrice",
          "currency",
          "status",
          "expectedArrivalDate",
          "customData"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Augment's identifier for the line item."
          },
          "lineNumber": {
            "type": "string"
          },
          "sku": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "orderedQuantity": {
            "type": "integer",
            "nullable": true
          },
          "openQuantity": {
            "type": "integer",
            "nullable": true
          },
          "unitOfMeasure": {
            "type": "string",
            "nullable": true
          },
          "unitPrice": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/PurchaseOrderStatus"
          },
          "expectedArrivalDate": {
            "type": "string",
            "format": "date",
            "nullable": true,
            "description": "The stored UTC calendar day this line is expected to arrive.",
            "example": "2026-09-02"
          },
          "customData": {
            "type": "object",
            "nullable": true
          }
        }
      },
      "PurchaseOrderResponse": {
        "type": "object",
        "description": "A purchase order with its line items.",
        "additionalProperties": false,
        "required": [
          "id",
          "purchaseOrderNumber",
          "status",
          "purchaseOrderDate",
          "lineItems",
          "createdAt",
          "updatedAt"
        ],
        "x-property-order": [
          "id",
          "purchaseOrderNumber",
          "internalPurchaseOrderNumber",
          "status",
          "purchaseOrderDate",
          "customData",
          "lineItems",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Augment's identifier for the purchase order.",
            "example": "01JPURCHASEORDERRECORD0001"
          },
          "purchaseOrderNumber": {
            "type": "string",
            "example": "PO-1001"
          },
          "internalPurchaseOrderNumber": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/PurchaseOrderStatus"
          },
          "purchaseOrderDate": {
            "type": "string",
            "format": "date",
            "description": "The stored UTC calendar day.",
            "example": "2026-08-18"
          },
          "customData": {
            "type": "object",
            "nullable": true
          },
          "lineItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PurchaseOrderLineItemResponse"
            }
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "ApiErrorBody": {
        "type": "object",
        "required": [
          "message"
        ],
        "x-property-order": [
          "message",
          "errorCode",
          "details"
        ],
        "properties": {
          "message": {
            "type": "string",
            "description": "An error message"
          },
          "errorCode": {
            "type": "string",
            "description": "An error code"
          },
          "details": {
            "oneOf": [
              {
                "type": "object"
              },
              {
                "type": "string"
              }
            ],
            "description": "Additional error details"
          }
        }
      },
      "CsvImportAcceptedResponse": {
        "type": "object",
        "required": [
          "ingestId"
        ],
        "properties": {
          "ingestId": {
            "type": "string",
            "description": "Ingest event id; row-level results surface asynchronously on it."
          }
        }
      },
      "WebhookEndpoint": {
        "type": "object",
        "description": "Public webhook endpoint configured for outbound webhook delivery.",
        "additionalProperties": false,
        "required": [
          "id",
          "url",
          "authType"
        ],
        "x-property-order": [
          "id",
          "name",
          "url",
          "authType",
          "customHeaders"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Webhook endpoint ID",
            "example": "webhook_endpoint_01HY..."
          },
          "name": {
            "type": "string",
            "description": "Display name for the endpoint",
            "example": "Primary Webhook"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "HTTPS URL that receives Augment webhook deliveries",
            "example": "https://example.com/webhooks/augment"
          },
          "authType": {
            "type": "string",
            "enum": [
              "bearerToken",
              "customHeaders"
            ],
            "description": "Outbound delivery auth type. Tokens are never returned by read or list responses.\n"
          },
          "customHeaders": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/WebhookCustomHeaders"
              },
              {
                "type": "null"
              }
            ],
            "description": "Optional custom headers sent with webhook deliveries"
          }
        }
      },
      "CreateWebhookEndpointRequest": {
        "type": "object",
        "description": "Request body for creating a public webhook endpoint.",
        "additionalProperties": false,
        "required": [
          "url",
          "auth"
        ],
        "x-property-order": [
          "name",
          "url",
          "auth",
          "customHeaders"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Optional display name for the endpoint",
            "example": "Primary Webhook"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "HTTPS URL that receives Augment webhook deliveries",
            "example": "https://example.com/webhooks/augment"
          },
          "auth": {
            "$ref": "#/components/schemas/WebhookEndpointAuth"
          },
          "customHeaders": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/WebhookCustomHeaders"
              },
              {
                "type": "null"
              }
            ],
            "description": "Optional custom headers sent with webhook deliveries"
          }
        }
      },
      "UpdateWebhookEndpointRequest": {
        "type": "object",
        "description": "Request body for partially updating a public webhook endpoint. At least one field is required.\n",
        "additionalProperties": false,
        "minProperties": 1,
        "x-property-order": [
          "name",
          "url",
          "auth",
          "customHeaders"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Display name for the endpoint",
            "example": "Primary Webhook"
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "HTTPS URL that receives Augment webhook deliveries",
            "example": "https://example.com/webhooks/augment-v2"
          },
          "auth": {
            "$ref": "#/components/schemas/WebhookEndpointAuth"
          },
          "customHeaders": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/WebhookCustomHeaders"
              },
              {
                "type": "null"
              }
            ],
            "description": "Optional custom headers. Pass `null` to clear custom headers."
          }
        }
      },
      "WebhookEndpointAuth": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WebhookEndpointBearerTokenAuth"
          },
          {
            "$ref": "#/components/schemas/WebhookEndpointCustomHeadersAuth"
          }
        ],
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "bearerToken": "#/components/schemas/WebhookEndpointBearerTokenAuth",
            "customHeaders": "#/components/schemas/WebhookEndpointCustomHeadersAuth"
          }
        },
        "description": "Outbound auth configuration used when Augment delivers webhooks to your endpoint. This is not the same as the API key auth used to call Augment.\n"
      },
      "WebhookEndpointBearerTokenAuth": {
        "type": "object",
        "description": "Bearer token authentication for webhook delivery requests.",
        "required": [
          "type",
          "token"
        ],
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "bearerToken"
            ],
            "description": "Bearer token auth."
          },
          "token": {
            "type": "string",
            "description": "Secret token sent as `Authorization: Bearer <token>` on webhook delivery. This token is never returned by read or list responses.\n",
            "example": "customer-secret-token"
          }
        }
      },
      "WebhookEndpointCustomHeadersAuth": {
        "type": "object",
        "description": "Authentication conveyed via the endpoint's `customHeaders` field (e.g. `x-api-key`). No bearer token is sent and Augment does not store one.\n",
        "required": [
          "type"
        ],
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "customHeaders"
            ],
            "description": "Custom headers auth."
          }
        }
      },
      "WebhookCustomHeaders": {
        "type": "object",
        "description": "Custom headers sent with webhook deliveries.",
        "additionalProperties": {
          "type": "string"
        },
        "example": {
          "X-Customer-Header": "value"
        }
      },
      "WebhookSubscription": {
        "type": "object",
        "description": "Public webhook subscription connecting one webhook endpoint to one event type.\n",
        "additionalProperties": false,
        "required": [
          "id",
          "webhookEndpointId",
          "eventType",
          "isActive"
        ],
        "x-property-order": [
          "id",
          "webhookEndpointId",
          "eventType",
          "isActive"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Webhook subscription ID",
            "example": "webhook_subscription_01HY..."
          },
          "webhookEndpointId": {
            "type": "string",
            "description": "Webhook endpoint ID that receives this event type",
            "example": "webhook_endpoint_01HY..."
          },
          "eventType": {
            "$ref": "#/components/schemas/WebhookManagementEventType"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether this subscription is active",
            "example": true
          }
        }
      },
      "CreateWebhookSubscriptionRequest": {
        "type": "object",
        "description": "Request body for creating a public webhook subscription.",
        "additionalProperties": false,
        "required": [
          "webhookEndpointId",
          "eventType"
        ],
        "x-property-order": [
          "webhookEndpointId",
          "eventType",
          "isActive"
        ],
        "properties": {
          "webhookEndpointId": {
            "type": "string",
            "description": "Webhook endpoint ID that should receive this event type",
            "example": "webhook_endpoint_01HY..."
          },
          "eventType": {
            "$ref": "#/components/schemas/WebhookManagementEventType"
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether this subscription should be active. Defaults to `true`.",
            "default": true
          }
        }
      },
      "UpdateWebhookSubscriptionRequest": {
        "type": "object",
        "description": "Request body for partially updating a public webhook subscription. At least one field is required. `eventType` is not updatable.\n",
        "additionalProperties": false,
        "minProperties": 1,
        "x-property-order": [
          "webhookEndpointId",
          "isActive"
        ],
        "properties": {
          "webhookEndpointId": {
            "type": "string",
            "description": "New webhook endpoint ID for this subscription",
            "example": "webhook_endpoint_01HZ..."
          },
          "isActive": {
            "type": "boolean",
            "description": "Whether this subscription should be active",
            "example": false
          }
        }
      },
      "TestWebhookSubscriptionRequest": {
        "type": "object",
        "description": "Optional request body for a test webhook delivery. The request body uses a `payload` wrapper: the `payload` key is part of this API request, and the `payload` value is the webhook event body that Augment sends to the configured endpoint.\n",
        "additionalProperties": false,
        "properties": {
          "payload": {
            "type": "object",
            "additionalProperties": true,
            "description": "Custom webhook event body to send to the subscription endpoint. Augment sends this object exactly as the webhook POST body. It should match the version 2 event shape your listener expects, such as a Track & Trace event envelope from the Webhooks reference.\n"
          }
        }
      },
      "TestWebhookSubscriptionResponse": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "statusCode",
          "body"
        ],
        "x-property-order": [
          "statusCode",
          "body"
        ],
        "properties": {
          "statusCode": {
            "type": "number",
            "format": "double",
            "description": "HTTP status code returned by the webhook endpoint",
            "example": 200
          },
          "body": {
            "description": "Response body returned by the webhook endpoint"
          }
        }
      },
      "WebhookManagementEventType": {
        "type": "string",
        "description": "Public event type for webhook subscription creation. Call `GET /v2/webhook-event-types` for the current source of truth.\n",
        "enum": [
          "TRACKING_UPDATE",
          "STOP_UPDATE",
          "LOAD_CARRIER_UPDATE",
          "SEND_TMS_COMMENT",
          "SCHEDULED_CARRIER_OUTREACH",
          "UPLOAD_FILES",
          "PUSH_BID_TO_TMS",
          "PUSH_LOAD_DRAFT",
          "CARRIER_ISSUE_UPDATED"
        ]
      },
      "AuthCheckError": {
        "type": "object",
        "required": [
          "message",
          "requestId",
          "timestamp"
        ],
        "x-property-order": [
          "message",
          "requestId",
          "timestamp"
        ],
        "properties": {
          "message": {
            "type": "string",
            "description": "Human-readable error message",
            "example": "Invalid key"
          },
          "requestId": {
            "type": "string",
            "format": "uuid",
            "description": "Unique requestId for troubleshooting",
            "example": "a1b0fce9-075a-4ad3-87fd-f307c51d2298"
          },
          "timestamp": {
            "type": "string",
            "description": "Unix timestamp of the error in milliseconds",
            "example": "1760136207000"
          }
        }
      },
      "LoadRequest": {
        "type": "object",
        "required": [
          "load",
          "brokerage"
        ],
        "x-property-order": [
          "load",
          "brokerage",
          "carrier",
          "customer",
          "trackingEvents",
          "carrierPaymentStatuses"
        ],
        "properties": {
          "load": {
            "$ref": "#/components/schemas/Load"
          },
          "trackingEvents": {
            "type": "array",
            "description": "Providing this field replaces all existing tracking events for the Load, including an empty array, which clears them. Omit the field to preserve existing tracking events. To append events instead of replacing them, use the POST /v2/loads/tracking endpoint.\n",
            "items": {
              "$ref": "#/components/schemas/TrackingEvent"
            }
          },
          "carrier": {
            "description": "The carrier on the load. Send `null` to clear the carrier assigned to the load. When you send an object, `name` and `dotNumber` are required, and every entry in `drivers` needs a `phone`. A carrier object that fails validation is reported as one `body.carrier` entry in the 422 `details`; its `message` names the nested field.\n",
            "oneOf": [
              {
                "$ref": "#/components/schemas/Carrier"
              },
              {
                "type": "null"
              }
            ]
          },
          "brokerage": {
            "$ref": "#/components/schemas/Brokerage"
          },
          "customer": {
            "$ref": "#/components/schemas/Customer"
          },
          "carrierPaymentStatuses": {
            "type": "array",
            "description": "Per-carrier payment status entries for this load. Each entry represents the payment outcome for one carrier on the load (e.g., TONU + linehaul on a co-brokered load yields two entries). Sending this field replaces any prior set of statuses for the load.\n",
            "items": {
              "$ref": "#/components/schemas/CarrierPaymentStatus"
            }
          }
        }
      },
      "CarrierPaymentStatus": {
        "type": "object",
        "required": [
          "carrierId",
          "status"
        ],
        "x-property-order": [
          "carrierId",
          "status",
          "scheduledPaymentDate",
          "actualPaymentDate",
          "paymentMethod",
          "paymentReferenceNumbers"
        ],
        "properties": {
          "carrierId": {
            "type": "string",
            "description": "Brokerage-side external carrier identifier (the `externalId` used elsewhere in the API). Resolved against `(brokerageKey, carrierId)`, which is unique. Required on every entry.\n"
          },
          "status": {
            "type": "string",
            "enum": [
              "PAID",
              "SCHEDULED",
              "OTHER"
            ],
            "description": "Explicit payment status. `OTHER` is a catch-all for states not yet promoted to first-class enum values (e.g., PARTIAL, APPROVED, DISPUTED, FAILED); additional values may be added in a backward-compatible way.\n"
          },
          "scheduledPaymentDate": {
            "type": "string",
            "format": "date",
            "description": "Scheduled payment date (YYYY-MM-DD, UTC)."
          },
          "actualPaymentDate": {
            "type": "string",
            "format": "date",
            "description": "Actual payment date (YYYY-MM-DD, UTC)."
          },
          "paymentMethod": {
            "type": "string",
            "enum": [
              "ACH",
              "CHECK"
            ],
            "description": "Payment method used."
          },
          "paymentReferenceNumbers": {
            "type": "array",
            "description": "Broker-side transaction or confirmation IDs associated with the payment (e.g., TriumphPay confirmation IDs). A list supports split payments and multiple confirmation IDs per payment.\n",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "TrackingEventRequest": {
        "type": "object",
        "required": [
          "loadNumber",
          "trackingEvent"
        ],
        "x-property-order": [
          "loadNumber",
          "trackingEvent"
        ],
        "properties": {
          "loadNumber": {
            "type": "string"
          },
          "trackingEvent": {
            "$ref": "#/components/schemas/TrackingEvent"
          }
        }
      },
      "TrackingCallbackResponse": {
        "type": "object",
        "required": [
          "loadNumber",
          "trackingEvent"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "trackingEvent"
        ],
        "properties": {
          "loadNumber": {
            "type": "string",
            "description": "The unique identifier for the load"
          },
          "brokerageLoadInternalId": {
            "type": "string",
            "description": "Internal load ID in the TMS"
          },
          "trackingEvent": {
            "$ref": "#/components/schemas/TrackingEvent"
          }
        }
      },
      "LoadCarrierCallbackResponse": {
        "type": "object",
        "required": [
          "loadNumber",
          "loadCarrierUpdate"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "loadCarrierUpdate"
        ],
        "properties": {
          "loadNumber": {
            "type": "string",
            "description": "The unique identifier for the load"
          },
          "brokerageLoadInternalId": {
            "type": "string",
            "description": "Internal load ID in the TMS"
          },
          "loadCarrierUpdate": {
            "$ref": "#/components/schemas/LoadCarrierUpdate"
          }
        }
      },
      "CommentCallbackResponse": {
        "type": "object",
        "required": [
          "loadNumber",
          "comment"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "comment"
        ],
        "properties": {
          "loadNumber": {
            "type": "string",
            "description": "The unique identifier for the load"
          },
          "brokerageLoadInternalId": {
            "type": "string",
            "description": "Internal load ID in the TMS"
          },
          "comment": {
            "type": "string"
          }
        }
      },
      "StopUpdateCallbackResponse": {
        "type": "object",
        "required": [
          "loadNumber",
          "brokerageLoadInternalId",
          "stopUpdate"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "stopUpdate"
        ],
        "properties": {
          "loadNumber": {
            "type": "string",
            "description": "The unique identifier for the load"
          },
          "brokerageLoadInternalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Optional internal load ID in the TMS. Use loadNumber as the main ID. Will be null if not provided."
          },
          "stopUpdate": {
            "$ref": "#/components/schemas/StopUpdate"
          }
        }
      },
      "ScheduledCarrierOutreachCallbackResponse": {
        "type": "object",
        "required": [
          "loadNumber",
          "scheduledAt",
          "outreachType",
          "context"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "scheduledAt",
          "outreachType",
          "context"
        ],
        "properties": {
          "loadNumber": {
            "type": "string",
            "description": "The unique identifier for the load"
          },
          "brokerageLoadInternalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Optional internal load ID in the TMS. Use loadNumber as the main ID. Will be null if not provided."
          },
          "scheduledAt": {
            "type": "string",
            "format": "date-time",
            "description": "The scheduled carrier outreach time, as a UTC ISO 8601 string ending in `Z` (e.g. `2025-08-21T12:34:56Z`)"
          },
          "outreachType": {
            "type": "string",
            "description": "The type of carrier outreach scheduled",
            "enum": [
              "PHONE_CALL",
              "EMAIL",
              "TEXT_MESSAGE"
            ]
          },
          "context": {
            "type": "string",
            "description": "Context describing why the carrier outreach was scheduled"
          }
        }
      },
      "BidCreated": {
        "type": "object",
        "description": "Carrier interest or a carrier bid submitted for a load. Delivered via PUSH_BID_TO_TMS webhook subscription. This callback is sent when a carrier expresses interest, even if the carrier did not provide a dollar offer amount.\n",
        "required": [
          "bidId",
          "createdAt",
          "loadReference",
          "internalLoadReference",
          "carrier",
          "channel",
          "truckEmpty"
        ],
        "x-property-order": [
          "bidId",
          "createdAt",
          "loadReference",
          "internalLoadReference",
          "carrier",
          "offerAmount",
          "channel",
          "truckEmpty",
          "repId"
        ],
        "properties": {
          "bidId": {
            "type": "string",
            "description": "Unique identifier for the bid",
            "example": "bid-abc-123"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "description": "ISO 8601 timestamp (with timezone offset) of when the bid was created\n",
            "example": "2026-02-19T14:30:00.000Z"
          },
          "loadReference": {
            "type": "string",
            "description": "Brokerage load reference number",
            "example": "LOAD-456"
          },
          "internalLoadReference": {
            "type": "string",
            "description": "Augment internal load reference",
            "example": "INT-789"
          },
          "carrier": {
            "type": "object",
            "description": "Carrier that submitted the bid. At least one of `id`, `mcNumber`, or `dotNumber` must be present.\n",
            "anyOf": [
              {
                "required": [
                  "id"
                ]
              },
              {
                "required": [
                  "mcNumber"
                ]
              },
              {
                "required": [
                  "dotNumber"
                ]
              }
            ],
            "properties": {
              "id": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Carrier identifier",
                "example": "carrier-001"
              },
              "mcNumber": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Carrier MC number",
                "example": 123456
              },
              "dotNumber": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Carrier DOT number",
                "example": 7890123
              }
            }
          },
          "offerAmount": {
            "type": [
              "number",
              "null"
            ],
            "description": "Bid offer amount in dollars. This can be null when the carrier expressed interest but did not provide a dollar amount.\n",
            "example": 2500
          },
          "channel": {
            "type": "object",
            "description": "Communication channel used for the bid. At least one of `phone` or `email` must be present.\n",
            "required": [
              "type"
            ],
            "anyOf": [
              {
                "required": [
                  "phone"
                ]
              },
              {
                "required": [
                  "email"
                ]
              }
            ],
            "properties": {
              "type": {
                "type": "string",
                "enum": [
                  "call",
                  "email"
                ],
                "description": "Type of communication channel",
                "example": "call"
              },
              "phone": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Phone number (present for call-based bids)",
                "example": "+15551234567"
              },
              "email": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "email",
                "description": "Email address (present for email-based bids)"
              }
            }
          },
          "truckEmpty": {
            "type": "object",
            "description": "Truck empty location and availability",
            "properties": {
              "city": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "City name",
                "example": "Dallas"
              },
              "stateOrProvince": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "State or province code",
                "example": "TX"
              },
              "country": {
                "type": [
                  "string",
                  "null"
                ],
                "enum": [
                  "US",
                  "CA",
                  "MX",
                  null
                ],
                "description": "Country code",
                "example": "US"
              },
              "dateTime": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "date-time",
                "description": "Truck empty date and time",
                "example": "2026-02-20T08:00:00.000Z"
              }
            }
          },
          "repId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Augment representative ID who facilitated the bid",
            "example": "rep-456"
          }
        }
      },
      "StopUpdate": {
        "type": "object",
        "required": [
          "stopSequenceNumber",
          "status",
          "timezone"
        ],
        "x-property-order": [
          "stopSequenceNumber",
          "stopId",
          "status",
          "arrivalTime",
          "unloadStartTime",
          "unloadEta",
          "departureTime",
          "timezone",
          "accessorials",
          "dockDoor",
          "notes"
        ],
        "properties": {
          "stopSequenceNumber": {
            "type": "integer",
            "description": "The sequence number of the stop being updated"
          },
          "stopId": {
            "type": "string",
            "description": "Optional external or system ID of the stop"
          },
          "status": {
            "$ref": "#/components/schemas/StopUpdateLoadStatus"
          },
          "arrivalTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Arrival time at the stop. May be in UTC with offset, or local time without offset when paired with the timezone field.\n"
              }
            ]
          },
          "unloadStartTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Unload start time. May be in UTC with offset, or local time without offset when paired with the timezone field.\n"
              }
            ]
          },
          "unloadEta": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Estimated unload completion time. In UTC, or with a specific timezone offset.\n"
              }
            ]
          },
          "departureTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Departure time from the stop. In UTC, or with a specific timezone offset.\n"
              }
            ]
          },
          "timezone": {
            "type": "string",
            "description": "IANA timezone (e.g., America/Chicago) of the stop location.",
            "examples": [
              "America/Chicago",
              "America/Los_Angeles"
            ]
          },
          "accessorials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccessorialsEnum"
            }
          },
          "dockDoor": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        }
      },
      "StopUpdateLoadStatus": {
        "enum": [
          "AT_PICKUP",
          "AT_DELIVERY",
          "IN_TRANSIT",
          "DELIVERED"
        ],
        "description": "Status code indicating the current state of the load at the stop"
      },
      "Load": {
        "type": "object",
        "required": [
          "loadNumber",
          "status",
          "mode",
          "route"
        ],
        "x-property-order": [
          "loadNumber",
          "brokerageLoadInternalId",
          "status",
          "mode",
          "rateType",
          "route",
          "referenceNumbers",
          "equipment",
          "accessorials",
          "items",
          "externalTrackingStatus",
          "isPostedToDAT",
          "weight",
          "totalMiles",
          "maxRate",
          "targetRate",
          "highValueAmount",
          "dimensions",
          "minimumTemperature",
          "maximumTemperature",
          "service",
          "bidExpiration",
          "notes",
          "bookedRate",
          "shipperRate",
          "tarpSize",
          "minimumBulkHeadTemperature",
          "maximumBulkHeadTemperature",
          "customData"
        ],
        "properties": {
          "loadNumber": {
            "type": "string"
          },
          "brokerageLoadInternalId": {
            "type": "string",
            "description": "Optional internal load ID in the TMS. Use loadNumber as the main ID."
          },
          "mode": {
            "enum": [
              "DRAYAGE",
              "EXPEDITE",
              "FTL",
              "LTL",
              "PARTIAL"
            ]
          },
          "rateType": {
            "enum": [
              "CONTRACT",
              "DEDICATED",
              "PROJECT",
              "SPOT"
            ]
          },
          "status": {
            "$ref": "#/components/schemas/LoadStatus",
            "description": "The load's lifecycle status. The status determines which fields are required: stop appointment windows are optional at `DRAFT` and required on every route stop at `CUSTOMER_CONFIRMED` and later. A load with no status set is treated as `DRAFT`. See [Load Status Validation](/guide/start-developing/load-status-validation).\n"
          },
          "referenceNumbers": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name",
                "value"
              ],
              "properties": {
                "name": {
                  "$ref": "#/components/schemas/LoadReferenceNumberName"
                },
                "value": {
                  "type": "string"
                }
              }
            }
          },
          "equipment": {
            "type": "object",
            "description": "Optional equipment details. If provided, equipmentType is required",
            "required": [
              "equipmentType"
            ],
            "x-property-order": [
              "equipmentType",
              "description",
              "dimensions"
            ],
            "properties": {
              "equipmentType": {
                "description": "Required if equipment object is provided",
                "enum": [
                  "AUTO_CARRIER",
                  "AUTO_TRANSPORT",
                  "B_TRAIN",
                  "BOX_TRUCK",
                  "CHASSIS",
                  "CONESTOGA",
                  "CONTAINER",
                  "CONTAINER_INSULATED",
                  "CONTAINER_OR_CHASSIS",
                  "CONTAINER_REFRIGERATED",
                  "CONTAINERS",
                  "CONVEYOR",
                  "DECKS_SPECIALIZED",
                  "DECKS_STANDARD",
                  "DOUBLE_DROP",
                  "DROP_DECK_LANDOLL",
                  "DRY_BULK",
                  "DRY_VAN",
                  "DUMP_END",
                  "DUMP_SIDE",
                  "DUMP_TRAILER",
                  "FLATBED",
                  "FLATBED_AIR_RIDE",
                  "FLATBED_CONESTOGA",
                  "FLATBED_DOUBLE",
                  "FLATBED_HAZMAT",
                  "FLATBED_HOTSHOT",
                  "FLATBED_MAXI",
                  "FLATBED_OR_STEP_DECK",
                  "FLATBED_OVERDIMENSION",
                  "FLATBED_STRETCH",
                  "FLATBED_VAN_REEFER",
                  "FLATBED_WITH_CHAINS",
                  "FLATBED_WITH_SIDES",
                  "FLATBED_WITH_TARPS",
                  "FLATBED_WITH_TEAM",
                  "FLATBEDS",
                  "HAZARDOUS_MATERIALS",
                  "HOPPER_BOTTOM",
                  "HOTSHOT",
                  "HOTSHOT_FLATBED",
                  "INSULATED_VAN_OR_REEFER",
                  "LOWBOY",
                  "LOWBOY_OR_REM_GOOSENECK_RGN",
                  "LOWBOY_OVERDIMENSION",
                  "MOVING_VAN",
                  "PLATE_TRAILER",
                  "PNEUMATIC",
                  "POWER_ONLY",
                  "POWER_ONLY_LOAD_OUT",
                  "POWER_ONLY_TOW_AWAY",
                  "REEFER",
                  "REEFER_AIR_RIDE",
                  "REEFER_DEEP_FROZEN",
                  "REEFER_DOUBLE",
                  "REEFER_HAZMAT",
                  "REEFER_INTERMODAL",
                  "REEFER_LOGISTICS",
                  "REEFER_OR_POWER_ONLY",
                  "REEFER_OR_VENTED_VAN",
                  "REEFER_PALLET_EXCHANGE",
                  "REEFER_QUADAXLE",
                  "REEFER_TRIAXLE",
                  "REEFER_WITH_TEAM",
                  "REEFERS",
                  "REMOVABLE_GOOSE_NECK",
                  "REMOVABLE_GOOSENECK",
                  "SPRINTER_VAN",
                  "SPRINTER_VAN_HAZMAT",
                  "SPRINTER_VAN_TEMP_CONTROLLED",
                  "SPRINTER_VAN_WITH_TEAM",
                  "STEP_DECK",
                  "STEP_DECK_OR_REM_GOOSENECK_RGN",
                  "STEPDECK_CONESTOGA",
                  "STRAIGHT_BOX_TRUCK",
                  "STRAIGHT_BOX_TRUCK_HAZMAT",
                  "STRAIGHT_BOX_TRUCK_REEFER",
                  "STRAIGHT_TRUCK",
                  "STRETCH_TRAILER",
                  "TANKER",
                  "TANKER_ALUMINUM",
                  "TANKER_INTERMODAL",
                  "TANKER_STEEL",
                  "TANKERS",
                  "TRUCK_AND_TRAILER",
                  "V2G",
                  "VAH",
                  "VAN",
                  "VAN_AIR_RIDE",
                  "VAN_BLANKET_WRAP",
                  "VAN_CONESTOGA",
                  "VAN_CURTAIN",
                  "VAN_DOUBLE",
                  "VAN_HAZMAT",
                  "VAN_HIGH_CUBE",
                  "VAN_HIGH_CUBE_4_AXLE",
                  "VAN_HOTSHOT",
                  "VAN_INSULATED",
                  "VAN_INTERMODAL",
                  "VAN_LIFT_GATE",
                  "VAN_LOGISTICS",
                  "VAN_OPEN_TOP",
                  "VAN_OR_FLATBED",
                  "VAN_OR_FLATBED_WITH_TARPS",
                  "VAN_OR_POWER_ONLY",
                  "VAN_OR_REEFER",
                  "VAN_PALLET_EXCHANGE",
                  "VAN_ROLLER_BED",
                  "VAN_SPRINTER",
                  "VAN_TRIPLE",
                  "VAN_VENTED",
                  "VAN_WITH_CURTAINS",
                  "VAN_WITH_TEAM",
                  "VANS_SPECIALIZED",
                  "VANS_STANDARD",
                  "VENTED_VAN_OR_POWER_ONLY",
                  "WALKING_FLOOR",
                  "OTHER"
                ]
              },
              "description": {
                "type": "string",
                "description": "A field suitable for mapping the exact string value that the source system stores for equipment type"
              },
              "dimensions": {
                "type": "object",
                "description": "Physical dimensions of the equipment/trailer. At least one of length, width, or height is required if this object is provided.",
                "required": [
                  "unit"
                ],
                "x-property-order": [
                  "length",
                  "width",
                  "height",
                  "unit"
                ],
                "properties": {
                  "length": {
                    "type": "number",
                    "description": "Length, in the given unit. Must be positive."
                  },
                  "width": {
                    "type": "number",
                    "description": "Width, in the given unit. Must be positive."
                  },
                  "height": {
                    "type": "number",
                    "description": "Height, in the given unit. Must be positive."
                  },
                  "unit": {
                    "type": "string",
                    "enum": [
                      "IN",
                      "CM",
                      "FT",
                      "M",
                      "YD"
                    ],
                    "description": "Unit of measure for length, width, and height"
                  }
                }
              }
            }
          },
          "accessorials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccessorialsEnum"
            }
          },
          "route": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoadRouteStop"
            }
          },
          "items": {
            "type": "array",
            "description": "Optional array of items. If provided, each item must include quantity and totalWeightLbs. Use packagingUnit to describe how the item is packaged and handlingUnit to describe how the freight is handled or moved.",
            "items": {
              "$ref": "#/components/schemas/LoadItem"
            }
          },
          "externalTrackingStatus": {
            "$ref": "#/components/schemas/ExternalTrackingStatus",
            "description": "External tracking status information. When updating a load: - If omitted, the existing externalTrackingStatus value is preserved unchanged - If explicitly set to null, the externalTrackingStatus is cleared - If provided with a value, the externalTrackingStatus is updated to that value\n"
          },
          "isPostedToDAT": {
            "type": "boolean",
            "description": "Indicates whether the load has been posted to DAT load board. This is required for Augie to search for loads using lane information (pick up and drop off city and state).\n"
          },
          "weight": {
            "type": "number",
            "description": "Total weight in pounds (lbs)"
          },
          "totalMiles": {
            "type": "number",
            "description": "Total estimated mileage for the entire route of a load"
          },
          "maxRate": {
            "type": "number",
            "description": "Maximum bid amount in USD"
          },
          "targetRate": {
            "type": "number",
            "description": "Target rate in USD"
          },
          "highValueAmount": {
            "type": "number",
            "description": "High value amount in USD"
          },
          "dimensions": {
            "type": "object",
            "description": "Optional dimensions object. If provided, all dimension fields are required. All dimensions are in inches.",
            "required": [
              "heightInches",
              "lengthInches",
              "widthInches"
            ],
            "x-property-order": [
              "lengthInches",
              "widthInches",
              "heightInches"
            ],
            "properties": {
              "heightInches": {
                "type": "integer",
                "description": "Required if dimensions object is provided"
              },
              "lengthInches": {
                "type": "integer",
                "description": "Required if dimensions object is provided"
              },
              "widthInches": {
                "type": "integer",
                "description": "Required if dimensions object is provided"
              }
            }
          },
          "minimumTemperature": {
            "type": "number",
            "description": "Minimum temperature requirement in Fahrenheit"
          },
          "maximumTemperature": {
            "type": "number",
            "description": "Maximum temperature requirement in Fahrenheit"
          },
          "service": {
            "$ref": "#/components/schemas/LoadService",
            "description": "Service type for the load"
          },
          "bidExpiration": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Bid expiration time in UTC, or with a specific timezone offset"
              }
            ]
          },
          "notes": {
            "type": "array",
            "description": "Operational notes about the load. Use this field to send context about actions taken on the load (e.g. broker instructions, status updates). On update, the provided notes are merged with existing notes.\n",
            "items": {
              "$ref": "#/components/schemas/LoadNote"
            }
          },
          "bookedRate": {
            "type": "number",
            "description": "Booked rate in USD"
          },
          "shipperRate": {
            "type": "number",
            "description": "Shipper rate in USD"
          },
          "tarpSize": {
            "type": "string",
            "description": "Tarp size requirement"
          },
          "minimumBulkHeadTemperature": {
            "type": "number",
            "description": "Minimum bulkhead temperature requirement in Fahrenheit"
          },
          "maximumBulkHeadTemperature": {
            "type": "number",
            "description": "Maximum bulkhead temperature requirement in Fahrenheit"
          },
          "groupExternalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "The external identifier used to associate this load with a group. Used during create/update to resolve the internal groupKey.\n"
          },
          "customData": {
            "$ref": "#/components/schemas/LoadCustomData"
          }
        }
      },
      "LoadCustomData": {
        "type": "object",
        "nullable": true,
        "description": "Optional client-specific metadata for the load. Use string keys; each value may be a string, number, boolean, array of JSON-safe values, or a nested object with the same rules. The serialized JSON must not exceed 10,000 characters.\n\nIf you want Augie to use values from customData in automated workflows, coordinate the expected keys and meanings with Augment. Your SOPs or workflow instructions may need to be updated so Augie knows when and how to reference those values.\n\nOn update, sending this field replaces the stored value. Omitting it preserves the existing value, while sending `null` clears it.\n",
        "additionalProperties": true,
        "example": {
          "customerLoadId": "ABC-12345",
          "priorityTier": 2,
          "whiteGloveDelivery": true,
          "tags": [
            "rush",
            "high-value"
          ],
          "routing": {
            "region": "NE",
            "requiresAppointment": true
          }
        }
      },
      "LoadNote": {
        "type": "object",
        "required": [
          "timestamp",
          "text",
          "author"
        ],
        "x-property-order": [
          "timestamp",
          "text",
          "author"
        ],
        "properties": {
          "timestamp": {
            "$ref": "#/components/schemas/InputDateTimeUtc",
            "description": "When the note was created"
          },
          "text": {
            "type": "string",
            "description": "Note content"
          },
          "author": {
            "type": "string",
            "description": "Who created the note (e.g. email address or system name)"
          }
        }
      },
      "LoadStatus": {
        "description": "The load's lifecycle status. `CANCELED`, `ERROR`, and `ARCHIVED` are terminal or administrative states rather than lifecycle stages; a load in any status can move to one of them. Validation requirements vary by status — see [Load Status Validation](/guide/start-developing/load-status-validation).\n",
        "enum": [
          "DRAFT",
          "CUSTOMER_CONFIRMED",
          "COVERED",
          "DISPATCHED",
          "AT_PICKUP",
          "IN_TRANSIT",
          "AT_DELIVERY",
          "DELIVERED",
          "POD_COLLECTED",
          "PAID",
          "CANCELED",
          "ERROR",
          "ARCHIVED"
        ]
      },
      "LoadReferenceNumberName": {
        "enum": [
          "BILLED_DATE",
          "BOOKING_NUMBER",
          "BOL_NUMBER",
          "CONSIGNEE_NUMBER",
          "CONSIGNEE_REF_NUMBER",
          "CONTAINER_NUMBER",
          "CONTROL_NUMBER",
          "CUSTOMER_REF_NUMBER",
          "DAT_POSTING_ID",
          "PICKUP_NUMBER",
          "PO_NUMBER",
          "POSTING_GROUP_ID",
          "PRO_NUMBER",
          "RELEASED_DATE",
          "REQUIRED_DOCS",
          "SHIPMENT_NUMBER",
          "SHIPPER_NUMBER",
          "TMS_LOAD_STATUS",
          "TMS_SHIPMENT_STATUS",
          "TRAILER_NUMBER",
          "TRUCK_NUMBER",
          "OTHER"
        ]
      },
      "LoadRouteStop": {
        "type": "object",
        "description": "A stop on the load's route. `expectedArrivalWindowStart` and `expectedArrivalWindowEnd` are the only fields whose requirement depends on the load's status: they are optional while the load is a `DRAFT`, and required on every stop once the load reaches `CUSTOMER_CONFIRMED` or a later lifecycle status. See [Load Status Validation](/guide/start-developing/load-status-validation).\n",
        "required": [
          "sequence",
          "stopActivity",
          "address"
        ],
        "x-property-order": [
          "sequence",
          "externalId",
          "facilityCode",
          "stopActivity",
          "address",
          "notes",
          "expectedArrivalWindowStart",
          "expectedArrivalWindowEnd",
          "actualArrivalTime",
          "actualCompletionTime",
          "expectedDropWindowStart",
          "expectedDropWindowEnd",
          "mustArriveByDate",
          "isLocalTime",
          "schedulingType",
          "handlingType",
          "customData"
        ],
        "properties": {
          "sequence": {
            "type": "integer",
            "description": "The sequence number of the stop in the route. Number should start at 1 increase by 1 for the following stop."
          },
          "externalId": {
            "type": "string",
            "description": "Optional external ID for the stop. This is used to link the stop to an external system."
          },
          "facilityCode": {
            "type": [
              "string",
              "null"
            ],
            "description": "Identifier of the facility where the stop takes place, matching the facility's external ID in your TMS. Stored as provided and not checked against a known facility, so an unrecognized code is accepted rather than rejected.\n"
          },
          "stopActivity": {
            "enum": [
              "PICKUP",
              "DELIVERY"
            ]
          },
          "address": {
            "type": "object",
            "required": [
              "street1",
              "city",
              "stateOrProvince",
              "postalCode",
              "country"
            ],
            "x-property-order": [
              "company",
              "locationName",
              "street1",
              "street2",
              "city",
              "stateOrProvince",
              "postalCode",
              "country"
            ],
            "properties": {
              "company": {
                "type": "string"
              },
              "locationName": {
                "type": "string"
              },
              "street1": {
                "type": "string"
              },
              "street2": {
                "type": "string"
              },
              "city": {
                "type": "string"
              },
              "stateOrProvince": {
                "type": "string"
              },
              "postalCode": {
                "type": "string"
              },
              "country": {
                "type": "string",
                "description": "Must be 2-letter ISO country code as listed here: https://www.iban.com/country-codes"
              }
            }
          },
          "notes": {
            "description": "Optional notes for the stop.",
            "type": "string"
          },
          "expectedArrivalWindowStart": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Expected arrival window start time in UTC, or with a specific timezone offset. Optional at `DRAFT`; required once the load reaches `CUSTOMER_CONFIRMED` or later. Must be at or before `expectedArrivalWindowEnd` whenever both are present.\n"
              }
            ]
          },
          "expectedArrivalWindowEnd": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Expected arrival window end time in UTC, or with a specified timezone offset. Optional at `DRAFT`; required once the load reaches `CUSTOMER_CONFIRMED` or later.\n"
              }
            ]
          },
          "actualArrivalTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Actual arrival time in UTC, or with a specific timezone offset"
              }
            ]
          },
          "actualCompletionTime": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Actual completion time in UTC, or with a specific timezone offset"
              }
            ]
          },
          "expectedDropWindowStart": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Expected window start time for drop trailers in UTC, or with a specific timezone offset"
              }
            ]
          },
          "expectedDropWindowEnd": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Expected window end time for drop trailers in UTC, or with a specific timezone offset"
              }
            ]
          },
          "mustArriveByDate": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "The date and time by which the carrier must arrive at this stop, in UTC or with a specific timezone offset"
              }
            ]
          },
          "isLocalTime": {
            "type": "boolean",
            "description": "When true, route times are in local time instead of UTC. When this is true, omit the Z suffix or timezone offset from all route time strings. Example: 2017-07-21T17:32:28\n"
          },
          "schedulingType": {
            "enum": [
              "APPT",
              "FCFS"
            ],
            "description": "Scheduling type for the stop.\n- APPT (Appointment) indicates the stop operates on an appointment basis.\n- FCFS (First Come First Serve) indicates the stop accepts arrivals on a first-come-first-serve basis.\n"
          },
          "handlingType": {
            "enum": [
              "DT",
              "L"
            ],
            "description": "Handling type for the stop.\n- DT (Drop Trailer) indicates the location supports drop-trailer operations.\n- L (Live) indicates live loading or unloading where the driver stays with the trailer.\n"
          },
          "customData": {
            "$ref": "#/components/schemas/StopCustomData"
          }
        }
      },
      "StopCustomData": {
        "type": "object",
        "nullable": true,
        "description": "Optional client-specific metadata for this stop. Use string keys; each value may be a string, number, boolean, array of JSON-safe values, or a nested object with the same rules. The serialized JSON must not exceed 2,000 characters.\n\nUse this field to attach stop-specific references such as pickup numbers, BOL numbers, or PO numbers to individual stops rather than flattening them into load-level `customData`.\n\nOn update, sending this field replaces the stored value for that stop. Because routes are replaced wholesale on every write, omitting `customData` from a stop clears it to `null`. Send `null` explicitly to clear a previously stored value.\n",
        "additionalProperties": true,
        "example": {
          "pickupNumber": "PU-111",
          "bolNumber": "0007031665",
          "dock": {
            "door": "42"
          }
        }
      },
      "LoadItem": {
        "type": "object",
        "required": [
          "quantity",
          "totalWeightLbs"
        ],
        "x-property-order": [
          "quantity",
          "packagingUnit",
          "handlingUnit",
          "description",
          "totalWeightLbs",
          "lengthInches",
          "widthInches",
          "heightInches",
          "freightClass",
          "nmfc",
          "density",
          "pickupSequence",
          "deliverySequence"
        ],
        "properties": {
          "quantity": {
            "type": "integer",
            "description": "Item quantity. Required if item is provided."
          },
          "packagingUnit": {
            "$ref": "#/components/schemas/LoadItemUnit",
            "description": "How the item is packaged, such as 60 cartons. Prefer this field when packaging quantity differs from item quantity or handling quantity.\n"
          },
          "handlingUnit": {
            "$ref": "#/components/schemas/LoadItemUnit",
            "description": "How the freight is handled or moved, such as 3 pallets. Prefer this field when handling quantity differs from item quantity or packaging quantity.\n"
          },
          "description": {
            "type": "string",
            "description": "Commodity description for this item. Augment's AI agent uses this value verbatim when speaking with carriers."
          },
          "totalWeightLbs": {
            "type": "number",
            "description": "Required if item is provided"
          },
          "lengthInches": {
            "type": "integer"
          },
          "widthInches": {
            "type": "integer"
          },
          "heightInches": {
            "type": "integer"
          },
          "freightClass": {
            "type": "string",
            "enum": [
              "50",
              "55",
              "60",
              "65",
              "70",
              "77.5",
              "85",
              "92.5",
              "100",
              "110",
              "125",
              "150",
              "175",
              "200",
              "250",
              "300",
              "400",
              "500"
            ]
          },
          "nmfc": {
            "type": "string"
          },
          "density": {
            "type": "number"
          },
          "pickupSequence": {
            "type": "integer"
          },
          "deliverySequence": {
            "type": "integer"
          }
        }
      },
      "LoadItemUnit": {
        "type": "object",
        "required": [
          "unitType",
          "quantity"
        ],
        "x-property-order": [
          "unitType",
          "quantity"
        ],
        "properties": {
          "unitType": {
            "$ref": "#/components/schemas/PackageType"
          },
          "quantity": {
            "type": "number",
            "description": "Quantity of this unit type."
          }
        }
      },
      "PackageType": {
        "type": "string",
        "enum": [
          "PALLET",
          "PIECE",
          "CARTON",
          "TOTE",
          "SKID",
          "CRATE",
          "BOX",
          "DRUM",
          "CASE",
          "BUNDLE",
          "OTHER",
          "FLOOR_LOADED",
          "ROLL",
          "SHEET"
        ]
      },
      "LoadService": {
        "enum": [
          "HOTSHOT",
          "PARTIAL",
          "STANDARD",
          "TIME_CRITICAL",
          "VOLUME"
        ]
      },
      "LoadShipment": {
        "type": "object",
        "required": [
          "loadShipmentRef"
        ],
        "x-property-order": [
          "loadShipmentRef",
          "loadShipmentInternalRef",
          "shipmentRef",
          "status",
          "referenceNumbers",
          "accessorials",
          "notes",
          "route",
          "items",
          "minTemperatureF",
          "maxTemperatureF",
          "service",
          "customer"
        ],
        "properties": {
          "loadShipmentRef": {
            "type": "string",
            "description": "Unique identifier for the load shipment."
          },
          "loadShipmentInternalRef": {
            "type": "string",
            "description": "Optional internal load shipment ID in the TMS. Use loadShipmentRef as the main ID."
          },
          "shipmentRef": {
            "type": "string"
          },
          "status": {
            "allOf": [
              {
                "type": "string"
              },
              {
                "description": "Status of the load shipment"
              },
              {
                "$ref": "#/components/schemas/LoadStatus"
              }
            ]
          },
          "referenceNumbers": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name",
                "value"
              ],
              "x-property-order": [
                "name",
                "value"
              ],
              "properties": {
                "name": {
                  "$ref": "#/components/schemas/LoadReferenceNumberName"
                },
                "value": {
                  "type": "string"
                }
              }
            }
          },
          "accessorials": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccessorialsEnum"
            }
          },
          "notes": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "timestamp",
                "text",
                "author"
              ],
              "x-property-order": [
                "timestamp",
                "text",
                "author"
              ],
              "properties": {
                "timestamp": {
                  "type": "string",
                  "format": "date-time"
                },
                "text": {
                  "type": "string",
                  "description": "Content of the note"
                },
                "author": {
                  "type": "string",
                  "description": "Author of the note"
                }
              }
            }
          },
          "route": {
            "allOf": [
              {
                "type": "object",
                "required": [
                  "loadSequence"
                ],
                "properties": {
                  "loadSequence": {
                    "type": "integer",
                    "description": "The sequence number of the stop in overall load route."
                  }
                }
              },
              {
                "$ref": "#/components/schemas/LoadRouteStop"
              }
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoadItem"
            }
          },
          "minTemperatureF": {
            "type": "number",
            "description": "Minimum temperature requirement in Fahrenheit"
          },
          "maxTemperatureF": {
            "type": "number",
            "description": "Maximum temperature requirement in Fahrenheit"
          },
          "service": {
            "$ref": "#/components/schemas/LoadService",
            "description": "Service type for the load"
          },
          "customer": {
            "$ref": "#/components/schemas/Customer"
          }
        }
      },
      "CarrierAddress": {
        "type": "object",
        "description": "Carrier address on a load. Optional on the parent object; when present, include every required field below.\n",
        "required": [
          "street1",
          "city",
          "stateOrProvince",
          "postalCode",
          "country"
        ],
        "x-property-order": [
          "company",
          "locationName",
          "street1",
          "street2",
          "city",
          "stateOrProvince",
          "postalCode",
          "country"
        ],
        "properties": {
          "company": {
            "type": "string"
          },
          "locationName": {
            "type": "string"
          },
          "street1": {
            "type": "string",
            "description": "Required when address is provided"
          },
          "street2": {
            "type": "string"
          },
          "city": {
            "type": "string",
            "description": "Required when address is provided"
          },
          "stateOrProvince": {
            "type": "string",
            "description": "Required when address is provided"
          },
          "postalCode": {
            "type": "string",
            "description": "Required when address is provided"
          },
          "country": {
            "type": "string",
            "description": "Required when address is provided. 2-letter ISO country code: https://www.iban.com/country-codes"
          }
        }
      },
      "Carrier": {
        "type": "object",
        "required": [
          "name",
          "dotNumber"
        ],
        "x-property-order": [
          "carrierId",
          "name",
          "mcNumber",
          "dotNumber",
          "scac",
          "address",
          "contacts",
          "drivers"
        ],
        "properties": {
          "carrierId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "mcNumber": {
            "type": "integer"
          },
          "dotNumber": {
            "type": "integer"
          },
          "scac": {
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/CarrierAddress"
          },
          "contacts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CarrierContact"
            }
          },
          "drivers": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "phone"
              ],
              "x-property-order": [
                "id",
                "name",
                "phone",
                "phoneExtension"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "phone": {
                  "type": "string",
                  "description": "Phone number in E.164 format (e.g., +12081234567) or common local format. Supports US, CA, MX, PH.",
                  "example": "+12081234567"
                },
                "phoneExtension": {
                  "type": "string",
                  "description": "Phone number extension (numeric only)."
                }
              }
            }
          }
        }
      },
      "CarrierContact": {
        "type": "object",
        "description": "Optional contact object. If provided, role is required.",
        "required": [
          "role"
        ],
        "x-property-order": [
          "id",
          "name",
          "phone",
          "phoneExtension",
          "email",
          "role"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format (e.g., +12081234567) or common local format. Supports US, CA, MX, PH.",
            "example": "+12081234567"
          },
          "phoneExtension": {
            "type": "string",
            "description": "Phone number extension (numeric only)."
          },
          "email": {
            "type": "string"
          },
          "role": {
            "description": "Required if contact is provided.\n- `AP_REP` — Accounts Payable Specialist\n- `DISPATCHER` — Dispatcher\n- `AFTER_HOURS_DISPATCHER` — dispatcher to contact outside of regular business hours\n- `WEEKEND_DISPATCHER` — dispatcher to contact on weekends\n- `BOOKING` — handles load booking\n- `TRACKING` — handles load tracking\n",
            "enum": [
              "AP_REP",
              "DISPATCHER",
              "AFTER_HOURS_DISPATCHER",
              "WEEKEND_DISPATCHER",
              "BOOKING",
              "TRACKING"
            ]
          }
        }
      },
      "Brokerage": {
        "type": "object",
        "x-property-order": [
          "contacts"
        ],
        "properties": {
          "contacts": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "role",
                "name"
              ],
              "x-property-order": [
                "id",
                "name",
                "phone",
                "phoneExtension",
                "email",
                "role"
              ],
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "phone": {
                  "type": "string",
                  "description": "Phone number in E.164 format (e.g., +12081234567) or common local format. Supports US, CA, MX, PH.",
                  "example": "+12081234567"
                },
                "phoneExtension": {
                  "type": "string",
                  "description": "Phone number extension (numeric only)."
                },
                "email": {
                  "type": "string"
                },
                "role": {
                  "type": "array",
                  "description": "The employee's role(s) on each load. Possible values: `CARRIER_REP` — rep who gets commission credit for the load, `CARRIER_TEAM` — team responsible for carrier-facing operations and relationships, `OPERATIONS_REP` — manages day-to-day operations on the load, `OPERATIONS_MANAGER` — brokerage-side manager or supervisor, `ACCOUNT_MANAGER` — manages the customer relationship, `CUSTOMER_REP` — sales rep to the customer, `CUSTOMER_TEAM` — part of the broader customer team, `BOOKED_BY` — party who booked the load, `AP_REP` — manages invoices and payments, `AFTER_HOURS_REP` — contact available outside of regular business hours.\n",
                  "items": {
                    "enum": [
                      "ACCOUNT_MANAGER",
                      "OPERATIONS_REP",
                      "OPERATIONS_MANAGER",
                      "CARRIER_REP",
                      "CARRIER_TEAM",
                      "CUSTOMER_TEAM",
                      "BOOKED_BY",
                      "CUSTOMER_REP",
                      "AP_REP",
                      "AFTER_HOURS_REP"
                    ]
                  }
                }
              }
            }
          }
        }
      },
      "Customer": {
        "type": "object",
        "required": [
          "name"
        ],
        "x-property-order": [
          "customerId",
          "name"
        ],
        "properties": {
          "customerId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      },
      "TrackedLocation": {
        "type": "object",
        "x-property-order": [
          "lastEvent"
        ],
        "properties": {
          "lastEvent": {
            "$ref": "#/components/schemas/TrackingEvent"
          }
        }
      },
      "LoadCarrierUpdate": {
        "type": "object",
        "required": [
          "source"
        ],
        "x-property-order": [
          "source",
          "driverName",
          "driverPhoneNumber",
          "truckNumber",
          "trailerNumber",
          "bolNumber",
          "notes"
        ],
        "properties": {
          "source": {
            "enum": [
              "EMAIL",
              "PHONE"
            ]
          },
          "driverName": {
            "type": "string"
          },
          "driverPhoneNumber": {
            "type": "string"
          },
          "truckNumber": {
            "type": "string"
          },
          "trailerNumber": {
            "type": "string"
          },
          "bolNumber": {
            "type": "string"
          },
          "notes": {
            "type": "string"
          }
        }
      },
      "TrackingEvent": {
        "type": "object",
        "required": [
          "eventType",
          "eventSource",
          "eventUtc"
        ],
        "x-property-order": [
          "eventType",
          "eventSource",
          "eventUtc",
          "isLocalTime",
          "nextSequence",
          "nextEtaUtc",
          "city",
          "country",
          "stateOrProvince",
          "postalCode",
          "latitude",
          "longitude",
          "temperatureF",
          "notes",
          "dispatcher",
          "driver"
        ],
        "properties": {
          "nextSequence": {
            "type": "integer",
            "description": "Sequence number of the stop `nextEtaUtc` applies to, matching `LoadRouteStop.sequence`.",
            "example": 2
          },
          "nextEtaUtc": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Next estimated arrival time as a UTC ISO 8601 timestamp with an offset (e.g. ending in `Z`, as in `2026-09-12T08:01:05Z`). When `isLocalTime` is true, send a naive local timestamp with no offset instead (e.g. `2026-09-12T03:01:05`).\n"
              }
            ]
          },
          "eventType": {
            "description": "Type of tracking event.",
            "enum": [
              "DELAYED",
              "INFO",
              "PICKED_UP",
              "PING",
              "COVERED",
              "DISPATCHED"
            ],
            "example": "INFO"
          },
          "eventSource": {
            "description": "How the tracking data was obtained.",
            "enum": [
              "4KITES",
              "CARRIER_API",
              "HIGHWAY",
              "MACROPOINT",
              "P44",
              "PHONE_EMAIL",
              "SMC3",
              "TEXT",
              "TMS",
              "TRUCKER_TOOLS",
              "OTHER"
            ],
            "example": "MACROPOINT"
          },
          "eventUtc": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "Event time as a UTC ISO 8601 timestamp with an offset (e.g. ending in `Z`, as in `2026-09-11T23:00:25Z`). When `isLocalTime` is true, send a naive local timestamp with no offset instead (e.g. `2026-09-11T18:00:25`).\n"
              }
            ]
          },
          "isLocalTime": {
            "type": "boolean",
            "description": "When true, `eventUtc` and `nextEtaUtc` (if present) are treated as naive local times and converted to UTC using the timezone resolved from `latitude`/`longitude`, `postalCode`, or `city`/`stateOrProvince` (in that priority order); `country` (defaults to `US`) helps disambiguate the `postalCode` lookup. One of `latitude`/`longitude`, `postalCode`, or `city`/`stateOrProvince` must be present when `isLocalTime` is true.\n"
          },
          "city": {
            "type": "string",
            "description": "City closest to the event location.",
            "example": "St Louis"
          },
          "country": {
            "type": "string",
            "description": "Country of the event location, as an ISO 3166-1 alpha-2 code. Used to disambiguate the `postalCode` lookup when `isLocalTime` is true; defaults to `US` when omitted. Only `US`, `CA`, and `MX` are currently supported for this lookup — any other value falls back to `US`.\n",
            "example": "US"
          },
          "stateOrProvince": {
            "type": "string",
            "description": "State or province closest to the event location.",
            "example": "MO"
          },
          "postalCode": {
            "type": "string"
          },
          "latitude": {
            "type": "number",
            "example": 38.56045466
          },
          "longitude": {
            "type": "number",
            "example": -90.4000096
          },
          "temperatureF": {
            "type": "number",
            "description": "Temperature in Fahrenheit, if reported by the source.",
            "example": 26
          },
          "notes": {
            "type": "string",
            "description": "Free-text context from the carrier communication.",
            "example": "Location update received. Locator: 6166485924, Source: Ping"
          },
          "dispatcher": {
            "$ref": "#/components/schemas/TrackingEventContact"
          },
          "driver": {
            "$ref": "#/components/schemas/TrackingEventContact"
          }
        }
      },
      "TrackingEventContact": {
        "type": "object",
        "description": "Contact information for a person associated with a tracking event.",
        "x-property-order": [
          "id",
          "name",
          "phone",
          "phoneExtension",
          "email"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the contact in the TMS system."
          },
          "name": {
            "type": "string",
            "description": "Full name of the contact."
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format (e.g., +12081234567) or common local format. Supports US, CA, MX, PH.",
            "example": "+12081234567"
          },
          "phoneExtension": {
            "type": "string",
            "description": "Phone number extension (numeric only)."
          },
          "email": {
            "type": "string",
            "description": "Email address of the contact."
          }
        }
      },
      "AccessorialsEnum": {
        "type": "string",
        "description": "Accessorial code representing an additional service or requirement for a load. This is not a closed set — new accessorial codes may be added at any time. Values are normalized to UPPER_SNAKE_CASE (e.g., `inside delivery` → `INSIDE_DELIVERY`).\n",
        "examples": [
          "AFTER_HOURS",
          "BULK_HEAD",
          "CHAINS",
          "CONSTRUCTION_SITE",
          "DELIVERY_APPOINTMENT",
          "DETENTION",
          "DETENTION_LOADING",
          "DETENTION_UNLOADING",
          "DRIVER_ASSIST",
          "DRIVER_COUNT",
          "E_TRACKING",
          "FOOD_GRADE",
          "FORKLIFT",
          "GENERAL_LIABILITY",
          "GUARANTEED_APPOINTMENT_DELIVERY",
          "HAZMAT",
          "HIGH_VALUE",
          "HIGH_VISIBILITY",
          "HOLIDAY",
          "INSIDE_DELIVERY",
          "INSIDE_PICKUP",
          "LAYOVER",
          "LIFTGATE",
          "LIMITED_ACCESS",
          "LOAD_BAR",
          "LUMPER",
          "MILITARY_BASE",
          "NOTIFY_BEFORE_ARRIVAL",
          "OVERSIZE",
          "OVERWEIGHT",
          "OVER_LENGTH_SHIPMENT",
          "PICKUP_APPOINTMENT",
          "POD_REQUIRED",
          "PROTECT_FROM_FREEZE",
          "RAMPS",
          "RESIDENTIAL",
          "SIGNATURE_REQUIRED",
          "SORT_AND_SEGREGATE",
          "STOP_OFF_CHARGE",
          "STRAPS",
          "TANKER_ENDORSED",
          "TARGETED_COMMODITY",
          "TARPS",
          "TEAM_SERVICE",
          "TEMPERATURE_REQUIREMENT",
          "TRADESHOW",
          "TRAILER_CLEANING",
          "TONU",
          "TRAILER_INTERCHANGE",
          "TWIC",
          "WEEKEND"
        ]
      },
      "ExternalTrackingStatusCode": {
        "enum": [
          "READY",
          "WAITING",
          "FAILED",
          "COMPLETED"
        ],
        "description": "Status code indicating the current state of external tracking"
      },
      "ExternalTrackingStatus": {
        "type": "object",
        "required": [
          "source",
          "message",
          "code",
          "updatedAt"
        ],
        "x-property-order": [
          "source",
          "message",
          "code",
          "updatedAt"
        ],
        "properties": {
          "source": {
            "enum": [
              "MACROPOINT",
              "P44",
              "OTHER"
            ],
            "description": "The source system or service providing the tracking status"
          },
          "message": {
            "type": "string",
            "description": "Human-readable message describing the current tracking status",
            "examples": [
              "Tracking Now",
              "Ready to Track",
              "Requesting App Install"
            ]
          },
          "code": {
            "$ref": "#/components/schemas/ExternalTrackingStatusCode"
          },
          "updatedAt": {
            "allOf": [
              {
                "$ref": "#/components/schemas/InputDateTimeUtc"
              },
              {
                "description": "The timestamp when the tracking status was last updated in UTC, or with a specific timezone offset"
              }
            ]
          }
        }
      },
      "CarrierRequest": {
        "type": "object",
        "required": [
          "name",
          "tmsId"
        ],
        "x-property-order": [
          "name",
          "tmsId",
          "status",
          "complianceStatus",
          "mcNumber",
          "dotNumber",
          "scac",
          "address",
          "email",
          "phone",
          "phoneExtension",
          "managers",
          "contacts",
          "notes",
          "customData"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Carrier name (required)"
          },
          "tmsId": {
            "type": "string",
            "description": "TMS identifier for the carrier. Used for matching existing carriers. Cannot be changed after creation."
          },
          "status": {
            "type": "object",
            "description": "Carrier status.",
            "x-property-order": [
              "code",
              "reason"
            ],
            "properties": {
              "code": {
                "type": "string",
                "enum": [
                  "ACTIVE",
                  "DO_NOT_USE"
                ],
                "description": "Status code indicating the carrier's current state"
              },
              "reason": {
                "type": "string",
                "description": "Optional reason for the status"
              }
            }
          },
          "complianceStatus": {
            "type": "object",
            "description": "Compliance status information.",
            "properties": {
              "codes": {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Compliance codes as key-value pairs"
              }
            }
          },
          "mcNumber": {
            "type": "integer",
            "description": "MC number"
          },
          "dotNumber": {
            "type": "integer",
            "description": "DOT number"
          },
          "scac": {
            "type": "string",
            "description": "SCAC code"
          },
          "address": {
            "type": "object",
            "description": "Carrier address.",
            "x-property-order": [
              "name",
              "company",
              "street1",
              "street2",
              "city",
              "stateOrProvince",
              "postalCode",
              "country"
            ],
            "properties": {
              "street1": {
                "type": "string",
                "description": "Street address line 1"
              },
              "street2": {
                "type": "string",
                "description": "Street address line 2 (optional)"
              },
              "city": {
                "type": "string",
                "description": "City name"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "State or province code"
              },
              "postalCode": {
                "type": "string",
                "description": "Postal or ZIP code"
              },
              "country": {
                "type": "string",
                "description": "Must be 2-letter ISO country code as listed here: https://www.iban.com/country-codes"
              },
              "name": {
                "type": "string",
                "description": "Location name (e.g., building name)"
              },
              "company": {
                "type": "string",
                "description": "Company name"
              }
            }
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "Carrier email address."
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format (e.g., +13125551234)."
          },
          "phoneExtension": {
            "type": "string",
            "description": "Phone extension."
          },
          "managers": {
            "type": "array",
            "description": "Array of organization contacts (managers) who manage this carrier. Pass an empty array [] to clear all managers when updating.",
            "items": {
              "$ref": "#/components/schemas/BrokerageContactRequest"
            }
          },
          "contacts": {
            "type": "array",
            "description": "Array of carrier contacts (carrier employees). Pass an empty array [] to clear all contacts when updating.",
            "items": {
              "$ref": "#/components/schemas/CarrierContactRequest"
            }
          },
          "notes": {
            "type": "string",
            "description": "Free-form notes about the carrier."
          },
          "customData": {
            "$ref": "#/components/schemas/CarrierCustomData"
          }
        }
      },
      "CarrierCustomData": {
        "type": "object",
        "description": "Optional metadata for the carrier. Use string keys; each value may be a string, number, boolean, array of JSON-safe values, or nested object with the same rules. Omit or send `{}` when you have nothing to store.\n",
        "additionalProperties": true,
        "example": {
          "tier": "gold",
          "score": 98.5,
          "verified": true,
          "aliases": [
            "Acme Freight",
            "Acme Carriers LLC"
          ],
          "routing": {
            "defaultRegion": "NS",
            "allowCrossBorder": false
          }
        }
      },
      "CarrierResponse": {
        "type": "object",
        "x-property-order": [
          "id",
          "name",
          "tmsId",
          "status",
          "complianceStatus",
          "mcNumber",
          "dotNumber",
          "scac",
          "address",
          "email",
          "phone",
          "phoneExtension",
          "managers",
          "contacts",
          "notes",
          "customData"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Carrier ID (ULID)"
          },
          "name": {
            "type": "string",
            "description": "Carrier name"
          },
          "tmsId": {
            "type": "string",
            "nullable": true,
            "description": "TMS identifier for the carrier"
          },
          "status": {
            "type": "object",
            "nullable": true,
            "description": "Carrier status",
            "x-property-order": [
              "code",
              "reason"
            ],
            "properties": {
              "code": {
                "type": "string",
                "enum": [
                  "ACTIVE",
                  "DO_NOT_USE"
                ],
                "description": "Status code indicating the carrier's current state"
              },
              "reason": {
                "type": "string",
                "nullable": true,
                "description": "Optional reason for the status"
              }
            }
          },
          "complianceStatus": {
            "type": "object",
            "nullable": true,
            "description": "Compliance status information",
            "properties": {
              "codes": {
                "type": "object",
                "additionalProperties": {
                  "type": "string"
                },
                "description": "Compliance codes as key-value pairs"
              }
            }
          },
          "mcNumber": {
            "type": "integer",
            "nullable": true,
            "description": "MC number"
          },
          "dotNumber": {
            "type": "integer",
            "nullable": true,
            "description": "DOT number"
          },
          "scac": {
            "type": "string",
            "nullable": true,
            "description": "SCAC code"
          },
          "address": {
            "type": "object",
            "nullable": true,
            "description": "Carrier address",
            "x-property-order": [
              "name",
              "company",
              "street1",
              "street2",
              "city",
              "stateOrProvince",
              "postalCode",
              "country"
            ],
            "properties": {
              "street1": {
                "type": "string",
                "description": "Street address line 1"
              },
              "street2": {
                "type": "string",
                "nullable": true,
                "description": "Street address line 2"
              },
              "city": {
                "type": "string",
                "description": "City name"
              },
              "stateOrProvince": {
                "type": "string",
                "nullable": true,
                "description": "State or province code"
              },
              "postalCode": {
                "type": "string",
                "description": "Postal or ZIP code"
              },
              "country": {
                "type": "string",
                "description": "Country code (2-letter ISO)"
              },
              "name": {
                "type": "string",
                "nullable": true,
                "description": "Location name"
              },
              "company": {
                "type": "string",
                "nullable": true,
                "description": "Company name"
              }
            }
          },
          "email": {
            "type": "string",
            "nullable": true,
            "description": "Carrier email address"
          },
          "phone": {
            "type": "string",
            "nullable": true,
            "description": "Phone number in E.164 format (e.g., +13125551234)"
          },
          "phoneExtension": {
            "type": "string",
            "nullable": true,
            "description": "Phone extension"
          },
          "managers": {
            "type": "array",
            "description": "Array of organization contacts (managers) who manage this carrier",
            "items": {
              "$ref": "#/components/schemas/BrokerageContactResponse"
            }
          },
          "contacts": {
            "type": "array",
            "description": "Array of carrier contacts (carrier employees)",
            "items": {
              "$ref": "#/components/schemas/CarrierContactResponse"
            }
          },
          "notes": {
            "type": "string",
            "nullable": true,
            "description": "Free-form notes about the carrier"
          },
          "customData": {
            "description": "Optional metadata returned for the carrier; `null` when none is stored.\n",
            "oneOf": [
              {
                "$ref": "#/components/schemas/CarrierCustomData"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "BrokerageContactRequest": {
        "type": "object",
        "x-property-order": [
          "tmsId",
          "name",
          "email",
          "phone",
          "phoneExtension",
          "preferredContactMode",
          "roles"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Contact name"
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "Contact email address"
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format (e.g., +13125551234)"
          },
          "phoneExtension": {
            "type": "string",
            "description": "Phone extension"
          },
          "tmsId": {
            "type": "string",
            "description": "TMS identifier for matching existing contacts. If provided, the system will match and update the existing contact."
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "CARRIER_REP",
                "ACCOUNT_MANAGER",
                "OPERATIONS_REP",
                "OPERATIONS_MANAGER",
                "BOOKED_BY",
                "CUSTOMER_REP",
                "CUSTOMER_TEAM",
                "CARRIER_TEAM",
                "AP_REP",
                "AFTER_HOURS_REP"
              ]
            },
            "description": "The employee's role(s) on each load. Possible values: `CARRIER_REP` — rep who gets commission credit for the load, `OPERATIONS_REP` — manages day-to-day operations on the load, `OPERATIONS_MANAGER` — brokerage-side manager or supervisor, `ACCOUNT_MANAGER` — manages the customer relationship, `CUSTOMER_REP` — sales rep to the customer, `CUSTOMER_TEAM` — part of the broader customer team, `CARRIER_TEAM` — team responsible for carrier-facing operations and relationships, `BOOKED_BY` — party who booked the load, `AP_REP` — Accounts Payable Specialist, who manages invoice and payment processes, `AFTER_HOURS_REP` — contact available outside of regular business hours.\n"
          },
          "preferredContactMode": {
            "type": "string",
            "enum": [
              "EMAIL",
              "PHONE_CALL",
              "TEXT_MESSAGE",
              "TELEGRAM"
            ],
            "description": "Preferred method of contact"
          }
        }
      },
      "BrokerageContactResponse": {
        "type": "object",
        "x-property-order": [
          "id",
          "tmsId",
          "name",
          "email",
          "phone",
          "phoneExtension",
          "preferredContactMode",
          "roles"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Organization contact ID (ULID)"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Contact name"
          },
          "tmsId": {
            "type": "string",
            "nullable": true,
            "description": "TMS identifier for the contact"
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "CARRIER_REP",
                "ACCOUNT_MANAGER",
                "OPERATIONS_REP",
                "OPERATIONS_MANAGER",
                "BOOKED_BY",
                "CUSTOMER_REP",
                "CUSTOMER_TEAM",
                "CARRIER_TEAM",
                "AP_REP",
                "AFTER_HOURS_REP"
              ]
            },
            "description": "The employee's role(s) on each load. Possible values: `CARRIER_REP` — rep who gets commission credit for the load, `OPERATIONS_REP` — manages day-to-day operations on the load, `OPERATIONS_MANAGER` — brokerage-side manager or supervisor, `ACCOUNT_MANAGER` — manages the customer relationship, `CUSTOMER_REP` — sales rep to the customer, `CUSTOMER_TEAM` — part of the broader customer team, `CARRIER_TEAM` — team responsible for carrier-facing operations and relationships, `BOOKED_BY` — party who booked the load, `AP_REP` — Accounts Payable Specialist, who manages invoice and payment processes, `AFTER_HOURS_REP` — contact available outside of regular business hours.\n"
          },
          "preferredContactMode": {
            "type": "string",
            "nullable": true,
            "enum": [
              "EMAIL",
              "PHONE_CALL",
              "TEXT_MESSAGE",
              "TELEGRAM"
            ],
            "description": "Preferred method of contact"
          },
          "email": {
            "type": "string",
            "nullable": true,
            "description": "Contact email address"
          },
          "phone": {
            "type": "string",
            "nullable": true,
            "description": "Phone number in E.164 format (e.g., +13125551234)"
          },
          "phoneExtension": {
            "type": "string",
            "nullable": true,
            "description": "Phone extension"
          }
        }
      },
      "CarrierContactRequest": {
        "type": "object",
        "x-property-order": [
          "tmsId",
          "name",
          "email",
          "phone",
          "phoneExtension",
          "preferredContactMode",
          "roles"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Contact name"
          },
          "email": {
            "type": "string",
            "format": "email",
            "description": "Contact email address. Either email or phone is required."
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format (e.g., +13125551234). Either email or phone is required."
          },
          "phoneExtension": {
            "type": "string",
            "description": "Phone extension"
          },
          "tmsId": {
            "type": "string",
            "description": "TMS identifier for matching existing contacts. If provided, the system will match and update the existing contact."
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "ACCOUNTANT",
                "AP_REP",
                "DISPATCHER",
                "AFTER_HOURS_DISPATCHER",
                "WEEKEND_DISPATCHER",
                "BOOKING",
                "TRACKING",
                "DRIVER",
                "OTHER"
              ]
            },
            "description": "Carrier contact roles:\n- `ACCOUNTANT` — Accountant\n- `AP_REP` — manages invoices and payments\n- `DISPATCHER` — Dispatcher\n- `AFTER_HOURS_DISPATCHER` — dispatcher to contact outside of regular business hours\n- `WEEKEND_DISPATCHER` — dispatcher to contact on weekends\n- `BOOKING` — handles load booking\n- `TRACKING` — handles load tracking\n- `DRIVER` — Driver\n- `OTHER` — Other\n"
          },
          "preferredContactMode": {
            "type": "string",
            "enum": [
              "EMAIL",
              "PHONE_CALL",
              "TEXT_MESSAGE",
              "TELEGRAM"
            ],
            "description": "Preferred method of contact"
          }
        }
      },
      "CarrierContactResponse": {
        "type": "object",
        "x-property-order": [
          "id",
          "tmsId",
          "name",
          "email",
          "phone",
          "phoneExtension",
          "preferredContactMode",
          "roles"
        ],
        "properties": {
          "id": {
            "type": "string",
            "description": "Carrier contact ID (ULID)"
          },
          "name": {
            "type": "string",
            "nullable": true,
            "description": "Contact name"
          },
          "tmsId": {
            "type": "string",
            "nullable": true,
            "description": "TMS identifier for the contact"
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "ACCOUNTANT",
                "AP_REP",
                "DISPATCHER",
                "AFTER_HOURS_DISPATCHER",
                "WEEKEND_DISPATCHER",
                "BOOKING",
                "TRACKING",
                "DRIVER",
                "OTHER"
              ]
            },
            "description": "Carrier contact roles:\n- `ACCOUNTANT` — Accountant\n- `AP_REP` — manages invoices and payments\n- `DISPATCHER` — Dispatcher\n- `AFTER_HOURS_DISPATCHER` — dispatcher to contact outside of regular business hours\n- `WEEKEND_DISPATCHER` — dispatcher to contact on weekends\n- `BOOKING` — handles load booking\n- `TRACKING` — handles load tracking\n- `DRIVER` — Driver\n- `OTHER` — Other\n"
          },
          "preferredContactMode": {
            "type": "string",
            "nullable": true,
            "enum": [
              "EMAIL",
              "PHONE_CALL",
              "TEXT_MESSAGE",
              "TELEGRAM"
            ],
            "description": "Preferred method of contact"
          },
          "email": {
            "type": "string",
            "nullable": true,
            "description": "Contact email address"
          },
          "phone": {
            "type": "string",
            "nullable": true,
            "description": "Phone number in E.164 format (e.g., +13125551234)"
          },
          "phoneExtension": {
            "type": "string",
            "nullable": true,
            "description": "Phone extension"
          }
        }
      },
      "BulkUpsertCarriersRequest": {
        "type": "object",
        "required": [
          "carriers"
        ],
        "x-property-order": [
          "carriers"
        ],
        "properties": {
          "carriers": {
            "type": "array",
            "maxItems": 20,
            "description": "Array of carriers to create or update. Maximum 20 carriers per request.",
            "items": {
              "$ref": "#/components/schemas/CarrierRequest"
            }
          }
        }
      },
      "BulkUpsertCarriersResponse": {
        "type": "object",
        "x-property-order": [
          "total",
          "successCount",
          "failureCount",
          "errors"
        ],
        "properties": {
          "total": {
            "type": "integer",
            "description": "Total number of carriers in the request",
            "example": 2
          },
          "successCount": {
            "type": "integer",
            "description": "Number of carriers successfully processed"
          },
          "failureCount": {
            "type": "integer",
            "description": "Number of carriers that failed to process"
          },
          "errors": {
            "type": "array",
            "description": "Details of failures (if any)",
            "items": {
              "type": "object",
              "x-property-order": [
                "index",
                "error"
              ],
              "properties": {
                "index": {
                  "type": "integer",
                  "description": "Index of the carrier in the original request array"
                },
                "error": {
                  "type": "string",
                  "description": "Error message"
                }
              }
            }
          }
        }
      },
      "PublicFacilityAddressRequest": {
        "type": "object",
        "description": "Address as posted. An omitted `country` resolves to US.\n",
        "required": [
          "street1",
          "city",
          "postalCode"
        ],
        "x-property-order": [
          "street1",
          "street2",
          "city",
          "stateOrProvince",
          "postalCode",
          "country"
        ],
        "properties": {
          "street1": {
            "type": "string",
            "example": "1200 W Loop S"
          },
          "street2": {
            "type": "string",
            "nullable": true,
            "example": "Suite 400"
          },
          "city": {
            "type": "string",
            "example": "Houston"
          },
          "stateOrProvince": {
            "type": "string",
            "nullable": true,
            "description": "Uppercased and validated against the country. Required for US addresses.\n",
            "example": "TX"
          },
          "postalCode": {
            "type": "string",
            "example": "77027"
          },
          "country": {
            "type": "string",
            "description": "ISO alpha-2 or alpha-3 code, or a country name. Stored as alpha-2.\n",
            "example": "US"
          }
        }
      },
      "PublicFacilityAddress": {
        "type": "object",
        "description": "Address as stored, with every field resolved.",
        "x-property-order": [
          "street1",
          "street2",
          "city",
          "stateOrProvince",
          "postalCode",
          "country"
        ],
        "properties": {
          "street1": {
            "type": "string"
          },
          "street2": {
            "type": "string",
            "nullable": true
          },
          "city": {
            "type": "string"
          },
          "stateOrProvince": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string"
          },
          "country": {
            "type": "string"
          }
        }
      },
      "PublicFacilityRequest": {
        "type": "object",
        "required": [
          "externalId",
          "name"
        ],
        "x-property-order": [
          "externalId",
          "name",
          "address",
          "email",
          "phone",
          "phoneExtension",
          "notes"
        ],
        "properties": {
          "externalId": {
            "type": "string",
            "maxLength": 255,
            "description": "Your identifier for the facility. Used as the upsert key.",
            "example": "EXP-00142"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "example": "Houston Distribution Center"
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PublicFacilityAddressRequest"
              }
            ],
            "nullable": true
          },
          "email": {
            "type": "string",
            "format": "email",
            "nullable": true,
            "example": "dock@example.com"
          },
          "phone": {
            "type": "string",
            "nullable": true,
            "description": "Normalized to E.164.",
            "example": "+17135550100"
          },
          "phoneExtension": {
            "type": "string",
            "maxLength": 30,
            "nullable": true,
            "example": "204"
          },
          "notes": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "PublicFacilityResponse": {
        "type": "object",
        "x-property-order": [
          "facilityId",
          "externalId",
          "name",
          "address",
          "email",
          "phone",
          "phoneExtension",
          "notes"
        ],
        "properties": {
          "facilityId": {
            "type": "string",
            "description": "Augment's identifier for the facility."
          },
          "externalId": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PublicFacilityAddress"
              }
            ],
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phoneExtension": {
            "type": "string",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "BulkUpsertFacilitiesRequest": {
        "type": "object",
        "required": [
          "facilities"
        ],
        "x-property-order": [
          "facilities"
        ],
        "properties": {
          "facilities": {
            "type": "array",
            "maxItems": 20,
            "description": "Maximum 20 per request.",
            "items": {
              "$ref": "#/components/schemas/PublicFacilityRequest"
            }
          }
        }
      },
      "PublicFacilityResultStatus": {
        "type": "string",
        "enum": [
          "SUCCESS",
          "FAILED"
        ],
        "description": "Whether this record was written."
      },
      "PublicFacilityResult": {
        "type": "object",
        "description": "One entry per input index, in request order.",
        "x-property-order": [
          "index",
          "status",
          "externalId",
          "facilityId",
          "error"
        ],
        "properties": {
          "index": {
            "type": "integer",
            "description": "Position of the facility in the request array.",
            "example": 0
          },
          "status": {
            "$ref": "#/components/schemas/PublicFacilityResultStatus"
          },
          "externalId": {
            "type": "string",
            "nullable": true
          },
          "facilityId": {
            "type": "string",
            "nullable": true,
            "description": "Set when the record was written; null on failure."
          },
          "error": {
            "type": "string",
            "nullable": true,
            "description": "Why this record failed; null on success."
          }
        }
      },
      "BulkUpsertFacilitiesResponse": {
        "type": "object",
        "x-property-order": [
          "total",
          "successCount",
          "failureCount",
          "results"
        ],
        "properties": {
          "total": {
            "type": "integer",
            "description": "Number of facilities in the request.",
            "example": 2
          },
          "successCount": {
            "type": "integer",
            "description": "Number written."
          },
          "failureCount": {
            "type": "integer",
            "description": "Number that failed."
          },
          "results": {
            "type": "array",
            "description": "One result per input index, in request order.",
            "items": {
              "$ref": "#/components/schemas/PublicFacilityResult"
            }
          }
        }
      },
      "LoadFileType": {
        "type": "string",
        "enum": [
          "INVOICE",
          "POD",
          "BOL",
          "RATE_CONFIRMATION"
        ],
        "description": "The category of the document being uploaded"
      },
      "LoadFileSourceType": {
        "type": "string",
        "enum": [
          "CARRIER",
          "BROKER",
          "SHIPPER",
          "CONSIGNEE",
          "DRIVER",
          "OTHER"
        ],
        "description": "The kind of entity that provided the document"
      },
      "LoadFileSourceIdentifierType": {
        "type": "string",
        "enum": [
          "MC_NUMBER",
          "DOT_NUMBER",
          "SCAC",
          "EMAIL",
          "NAME",
          "EXTERNAL_ID"
        ],
        "description": "How the source entity is identified"
      },
      "LoadFileUploadSource": {
        "type": "object",
        "description": "Origin of the uploaded document (e.g. a carrier or driver)",
        "required": [
          "type",
          "identifierType",
          "identifier"
        ],
        "additionalProperties": false,
        "properties": {
          "type": {
            "$ref": "#/components/schemas/LoadFileSourceType",
            "description": "The kind of entity that provided the document"
          },
          "identifierType": {
            "$ref": "#/components/schemas/LoadFileSourceIdentifierType",
            "description": "How the source entity is identified"
          },
          "identifier": {
            "type": "string",
            "description": "The identifier value (e.g. MC number, SCAC code, email address)"
          },
          "name": {
            "type": "string",
            "description": "Optional display name for the source entity"
          }
        }
      },
      "LoadFileUploadReferenceNumbers": {
        "type": "object",
        "properties": {
          "invoiceNumber": {
            "type": "string",
            "description": "Required when fileType is INVOICE"
          }
        }
      },
      "LoadFileUploadRequest": {
        "type": "object",
        "required": [
          "loadNum",
          "filename",
          "fileType",
          "contentType",
          "content",
          "sizeBytes",
          "checksum"
        ],
        "properties": {
          "loadNum": {
            "type": "string",
            "description": "The load's external number in the TMS (brokerageLoadId)"
          },
          "internalLoadReference": {
            "type": "string",
            "description": "Optional internal load identifier from the TMS (brokerageLoadInternalId). Only included when available."
          },
          "filename": {
            "type": "string",
            "description": "Original filename including extension. Supported extensions: `.pdf`, `.jpg`, `.jpeg`, `.png`, `.heic`, `.webp`, `.tiff`, `.tif`",
            "examples": [
              "invoice-1234.pdf"
            ]
          },
          "fileType": {
            "$ref": "#/components/schemas/LoadFileType"
          },
          "contentType": {
            "type": "string",
            "description": "MIME type of the file. Supported values: `application/pdf`, `image/jpeg`, `image/png`, `image/heic`, `image/webp`, `image/tiff`",
            "examples": [
              "application/pdf"
            ]
          },
          "content": {
            "type": "string",
            "description": "Base64-encoded file bytes"
          },
          "sizeBytes": {
            "type": "integer",
            "description": "File size in bytes"
          },
          "checksum": {
            "type": "string",
            "description": "MD5 hex digest of the raw (pre-encoding) file bytes, used for integrity verification"
          },
          "referenceNumbers": {
            "$ref": "#/components/schemas/LoadFileUploadReferenceNumbers"
          },
          "source": {
            "$ref": "#/components/schemas/LoadFileUploadSource",
            "description": "Origin of the document, used by some brokerages for routing (e.g. carrier ID)"
          },
          "createdAt": {
            "type": "string",
            "description": "ISO 8601 timestamp of when the document was collected/created"
          }
        }
      },
      "FileUploadSummary": {
        "type": "object",
        "required": [
          "total",
          "succeeded",
          "failed"
        ],
        "properties": {
          "total": {
            "type": "integer",
            "description": "Total number of files submitted"
          },
          "succeeded": {
            "type": "integer",
            "description": "Number of files successfully uploaded"
          },
          "failed": {
            "type": "integer",
            "description": "Number of files that failed to upload"
          }
        }
      },
      "FileUploadSuccess": {
        "type": "object",
        "required": [
          "filename",
          "success",
          "data"
        ],
        "properties": {
          "filename": {
            "type": "string"
          },
          "success": {
            "type": "boolean",
            "enum": [
              true
            ]
          },
          "data": {
            "type": "object",
            "required": [
              "size",
              "contentType"
            ],
            "properties": {
              "size": {
                "type": "integer",
                "description": "Size of the uploaded file in bytes"
              },
              "contentType": {
                "type": "string",
                "description": "MIME type of the uploaded file"
              },
              "id": {
                "type": "string",
                "description": "ID assigned to the document by the TMS, if available"
              }
            }
          }
        }
      },
      "FileUploadFailure": {
        "type": "object",
        "required": [
          "filename",
          "success",
          "error"
        ],
        "properties": {
          "filename": {
            "type": "string"
          },
          "success": {
            "type": "boolean",
            "enum": [
              false
            ]
          },
          "error": {
            "type": "string",
            "description": "Error message describing why the upload failed"
          }
        }
      },
      "FileUploadResult": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/FileUploadSuccess"
          },
          {
            "$ref": "#/components/schemas/FileUploadFailure"
          }
        ],
        "discriminator": {
          "propertyName": "success"
        }
      },
      "BatchFileUploadResponse": {
        "type": "object",
        "required": [
          "summary",
          "results"
        ],
        "properties": {
          "summary": {
            "$ref": "#/components/schemas/FileUploadSummary"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FileUploadResult"
            }
          }
        }
      },
      "InputDateTimeUtc": {
        "type": "string",
        "format": "date-time",
        "examples": [
          "2025-08-21T12:34:56Z",
          "2025-08-21T04:34:56-08:00"
        ]
      },
      "DateTimeUtc": {
        "type": "string",
        "format": "date-time",
        "description": "The date-time notation is defined by [RFC 3339, section 5.6](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6).",
        "examples": [
          "2025-10-15T20:20:00Z"
        ]
      },
      "LoadV2Response": {
        "type": "object",
        "description": "Enriched load data including tracking events, reference numbers, notes, customers, and shipment information.\n",
        "required": [
          "brokerageLoadId",
          "status",
          "route",
          "referenceNumbers",
          "trackingEvents",
          "notes",
          "accessorials",
          "isPostedToDAT",
          "podCollectionStatus",
          "customers",
          "loadShipments",
          "createdAt",
          "updatedAt"
        ],
        "x-property-order": [
          "brokerageLoadId",
          "brokerageLoadInternalId",
          "status",
          "mode",
          "loadType",
          "route",
          "totalMiles",
          "equipment",
          "equipmentDescription",
          "accessorials",
          "weight",
          "dimensions",
          "minimumTemperature",
          "maximumTemperature",
          "tarpSize",
          "minimumBulkHeadTemperature",
          "maximumBulkHeadTemperature",
          "commodity",
          "commodityItems",
          "service",
          "highValueAmount",
          "targetRate",
          "maxRate",
          "totalRate",
          "totalCarrierRate",
          "bidExpiration",
          "bidCustomValues",
          "isPostedToDAT",
          "isPostedToHighway",
          "customerName",
          "customerId",
          "referenceNumbers",
          "trackingEvents",
          "externalTrackingStatus",
          "notes",
          "customers",
          "loadShipments",
          "podCollectionStatus",
          "lastLocationUpdate",
          "createdAt",
          "updatedAt"
        ],
        "properties": {
          "brokerageLoadId": {
            "type": "string",
            "description": "The load number (brokerage load ID) - this is your load identifier",
            "example": "LOAD-12345"
          },
          "brokerageLoadInternalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Optional internal load ID in the TMS"
          },
          "status": {
            "$ref": "#/components/schemas/LoadStatus"
          },
          "mode": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "DRAYAGE",
              "EXPEDITE",
              "FTL",
              "LTL",
              "PARTIAL",
              null
            ],
            "description": "Load transportation mode"
          },
          "loadType": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "CONTRACT",
              "DEDICATED",
              "PROJECT",
              "SPOT",
              null
            ],
            "description": "Type of load rate"
          },
          "route": {
            "type": "array",
            "description": "Route stops sorted by sequence number ascending",
            "items": {
              "$ref": "#/components/schemas/RouteStop"
            }
          },
          "totalMiles": {
            "type": [
              "number",
              "null"
            ],
            "description": "Total estimated mileage for the entire route"
          },
          "equipment": {
            "type": [
              "string",
              "null"
            ],
            "description": "Equipment type",
            "examples": [
              "REEFER",
              "DRY_VAN",
              "FLATBED"
            ]
          },
          "equipmentDescription": {
            "type": [
              "string",
              "null"
            ],
            "description": "Free-text equipment description"
          },
          "accessorials": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of accessorials for the load"
          },
          "weight": {
            "type": [
              "object",
              "null"
            ],
            "description": "Total weight information",
            "properties": {
              "value": {
                "type": "number"
              },
              "unit": {
                "type": "string",
                "enum": [
                  "LB",
                  "KG"
                ]
              }
            }
          },
          "dimensions": {
            "type": [
              "object",
              "null"
            ],
            "description": "Load dimensions",
            "properties": {
              "lengthInches": {
                "type": "integer"
              },
              "widthInches": {
                "type": "integer"
              },
              "heightInches": {
                "type": "integer"
              }
            }
          },
          "minimumTemperature": {
            "type": [
              "object",
              "null"
            ],
            "description": "Minimum temperature requirement",
            "properties": {
              "value": {
                "type": "number"
              },
              "unit": {
                "type": "string",
                "enum": [
                  "F",
                  "C"
                ]
              }
            }
          },
          "maximumTemperature": {
            "type": [
              "object",
              "null"
            ],
            "description": "Maximum temperature requirement",
            "properties": {
              "value": {
                "type": "number"
              },
              "unit": {
                "type": "string",
                "enum": [
                  "F",
                  "C"
                ]
              }
            }
          },
          "tarpSize": {
            "type": [
              "string",
              "null"
            ],
            "description": "Tarp size requirement"
          },
          "minimumBulkHeadTemperature": {
            "type": [
              "object",
              "null"
            ],
            "description": "Minimum bulkhead temperature requirement",
            "properties": {
              "value": {
                "type": "number"
              },
              "unit": {
                "type": "string"
              }
            }
          },
          "maximumBulkHeadTemperature": {
            "type": [
              "object",
              "null"
            ],
            "description": "Maximum bulkhead temperature requirement",
            "properties": {
              "value": {
                "type": "number"
              },
              "unit": {
                "type": "string"
              }
            }
          },
          "commodity": {
            "type": [
              "string",
              "null"
            ],
            "description": "Commodity description"
          },
          "commodityItems": {
            "type": [
              "array",
              "null"
            ],
            "description": "List of commodity items",
            "items": {
              "$ref": "#/components/schemas/CommodityItem"
            }
          },
          "service": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "HOTSHOT",
              "PARTIAL",
              "STANDARD",
              "TIME_CRITICAL",
              "VOLUME",
              null
            ],
            "description": "Service type for the load"
          },
          "highValueAmount": {
            "type": [
              "number",
              "null"
            ],
            "description": "High value amount in USD"
          },
          "targetRate": {
            "type": [
              "number",
              "null"
            ],
            "description": "Target rate in USD"
          },
          "maxRate": {
            "type": [
              "number",
              "null"
            ],
            "description": "Maximum bid amount in USD"
          },
          "totalRate": {
            "type": [
              "number",
              "null"
            ],
            "description": "Total rate for the load in USD"
          },
          "totalCarrierRate": {
            "type": [
              "number",
              "null"
            ],
            "description": "Total carrier rate in USD"
          },
          "bidExpiration": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Bid expiration time"
          },
          "bidCustomValues": {
            "type": "array",
            "description": "Custom bid values",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "value": {
                  "type": "string"
                }
              }
            }
          },
          "isPostedToDAT": {
            "type": "boolean",
            "description": "Indicates whether the load has been posted to DAT load board. This is required for Augie to search for loads using lane information (pick up and drop off city and state).\n"
          },
          "isPostedToHighway": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Indicates whether the load has been posted to Highway"
          },
          "customerName": {
            "type": [
              "string",
              "null"
            ],
            "description": "Primary customer name"
          },
          "customerId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Primary customer identifier"
          },
          "referenceNumbers": {
            "type": "array",
            "description": "Reference numbers associated with the load",
            "items": {
              "type": "object",
              "required": [
                "name",
                "value"
              ],
              "properties": {
                "name": {
                  "$ref": "#/components/schemas/LoadReferenceNumberName"
                },
                "value": {
                  "type": "string"
                }
              }
            }
          },
          "trackingEvents": {
            "type": "array",
            "description": "Tracking events for the load",
            "items": {
              "$ref": "#/components/schemas/TrackingEvent"
            }
          },
          "externalTrackingStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ExternalTrackingStatus"
              },
              {
                "nullable": true
              }
            ],
            "description": "External tracking status information"
          },
          "notes": {
            "type": "array",
            "description": "Operational notes about the load. Provides context for tracking and operations.\n",
            "items": {
              "type": "object",
              "properties": {
                "timestamp": {
                  "type": "string",
                  "format": "date-time"
                },
                "text": {
                  "type": "string",
                  "description": "Content of the note"
                },
                "author": {
                  "type": "string",
                  "description": "Author of the note"
                }
              }
            }
          },
          "customers": {
            "type": "array",
            "description": "Customers associated with the load",
            "items": {
              "$ref": "#/components/schemas/LoadCustomer"
            }
          },
          "loadShipments": {
            "type": "array",
            "description": "Shipments associated with the load",
            "items": {
              "$ref": "#/components/schemas/LoadShipment"
            }
          },
          "podCollectionStatus": {
            "type": "string",
            "enum": [
              "NOT_STARTED",
              "PENDING",
              "IN_PROGRESS",
              "COMPLETED",
              "FAILED"
            ],
            "description": "POD collection workflow status"
          },
          "lastLocationUpdate": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Timestamp of the last location update"
          },
          "groupExternalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "The external identifier for the group this load belongs to.\n"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the load was created"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the load was last updated"
          }
        }
      },
      "RouteStop": {
        "type": "object",
        "description": "A stop in the load route",
        "required": [
          "sequenceNumber",
          "activityType",
          "address"
        ],
        "properties": {
          "sequenceNumber": {
            "type": "integer",
            "description": "The sequence number of the stop in the route (1-indexed)",
            "example": 1
          },
          "externalId": {
            "type": [
              "string",
              "null"
            ],
            "description": "External ID for the stop (if provided)"
          },
          "activityType": {
            "type": "string",
            "enum": [
              "PICKUP",
              "DELIVERY"
            ],
            "description": "Type of activity at this stop"
          },
          "address": {
            "type": "object",
            "description": "Stop address",
            "properties": {
              "name": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Location name"
              },
              "company": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Company name"
              },
              "street1": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Street address line 1"
              },
              "street2": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Street address line 2"
              },
              "city": {
                "type": "string",
                "description": "City name"
              },
              "stateOrProvince": {
                "type": "string",
                "description": "State or province code"
              },
              "postalCode": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Postal or ZIP code"
              },
              "country": {
                "type": "string",
                "description": "Country code (2-letter ISO)"
              }
            }
          },
          "timezone": {
            "type": [
              "string",
              "null"
            ],
            "description": "IANA timezone for the stop location",
            "example": "America/Los_Angeles"
          },
          "stopNotes": {
            "type": [
              "string",
              "null"
            ],
            "description": "Notes for this stop"
          },
          "facilityCode": {
            "type": [
              "string",
              "null"
            ],
            "description": "Facility code"
          },
          "scheduleTypes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "APPOINTMENT",
                "FIRST_COME_FIRST_SERVE"
              ]
            },
            "description": "Scheduling types for the stop"
          },
          "expectedStopWindowStart": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Expected stop window start time"
          },
          "expectedStopWindowEnd": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Expected stop window end time"
          },
          "expectedDropWindowStart": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Expected drop window start time (for drop trailers)"
          },
          "expectedDropWindowEnd": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Expected drop window end time (for drop trailers)"
          },
          "actualArrivalTime": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Actual arrival time at the stop"
          },
          "actualDepartureTime": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Actual departure time from the stop"
          },
          "mustArriveByDate": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "The date and time by which the carrier must arrive at this stop"
          },
          "customData": {
            "description": "Client-specific metadata for this stop, or `null` when none is stored.\n",
            "oneOf": [
              {
                "$ref": "#/components/schemas/StopCustomData"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "CommodityItem": {
        "type": "object",
        "description": "A commodity item on the load",
        "properties": {
          "quantity": {
            "type": "integer",
            "description": "Number of items"
          },
          "description": {
            "type": [
              "string",
              "null"
            ],
            "description": "Description of the commodity"
          },
          "totalWeightLbs": {
            "type": [
              "number",
              "null"
            ],
            "description": "Total weight in pounds"
          },
          "lengthInches": {
            "type": [
              "integer",
              "null"
            ]
          },
          "widthInches": {
            "type": [
              "integer",
              "null"
            ]
          },
          "heightInches": {
            "type": [
              "integer",
              "null"
            ]
          },
          "freightClass": {
            "type": [
              "string",
              "null"
            ]
          },
          "nmfc": {
            "type": [
              "string",
              "null"
            ]
          },
          "density": {
            "type": [
              "number",
              "null"
            ]
          },
          "pickupSequence": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Sequence number of the pickup stop for this item"
          },
          "deliverySequence": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Sequence number of the delivery stop for this item"
          }
        }
      },
      "LoadCustomer": {
        "type": "object",
        "description": "Customer associated with the load",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Customer name",
            "example": "Acme Corporation"
          },
          "customerId": {
            "type": [
              "string",
              "null"
            ],
            "description": "Customer identifier",
            "example": "ACME-001"
          },
          "customerContact": {
            "type": [
              "string",
              "null"
            ],
            "description": "Customer contact information"
          }
        }
      },
      "LoadDraftPayload": {
        "type": "object",
        "description": "Load draft payload containing all information needed to create a load in the TMS.\n",
        "properties": {
          "referenceNumbers": {
            "type": "object",
            "description": "Customer reference numbers associated with the load.",
            "properties": {
              "shipmentNumber": {
                "type": "string",
                "description": "Shipment number"
              },
              "customerReferenceNumber": {
                "type": "string",
                "description": "Customer reference number"
              },
              "customerLoadNumber": {
                "type": "string",
                "description": "Customer load number"
              },
              "releaseNumber": {
                "type": "string",
                "description": "Release number"
              },
              "bolNumber": {
                "type": "string",
                "description": "Bill of lading number"
              },
              "poNumber": {
                "type": "string",
                "description": "Purchase order number"
              },
              "proNumber": {
                "type": "string",
                "description": "PRO number"
              },
              "driverNumber": {
                "type": "string",
                "description": "Driver number"
              },
              "tractorNumber": {
                "type": "string",
                "description": "Tractor number"
              },
              "trailerNumber": {
                "type": "string",
                "description": "Trailer number"
              },
              "others": {
                "type": "array",
                "description": "Additional reference numbers not covered by named fields",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Reference number type label"
                    },
                    "value": {
                      "type": "string",
                      "description": "Reference number value"
                    }
                  }
                }
              }
            }
          },
          "customerInformation": {
            "type": "object",
            "description": "Shipper and billing information.",
            "properties": {
              "name": {
                "type": "string",
                "description": "Customer name"
              },
              "contact": {
                "type": "object",
                "description": "Customer contact information",
                "properties": {
                  "email": {
                    "type": "string"
                  },
                  "phone": {
                    "type": "string"
                  }
                }
              },
              "address": {
                "type": "object",
                "description": "Customer billing address",
                "properties": {
                  "name": {
                    "type": "string",
                    "description": "Location name"
                  },
                  "streetAddress": {
                    "type": "string"
                  },
                  "city": {
                    "type": "string"
                  },
                  "state": {
                    "type": "string"
                  },
                  "zip": {
                    "type": "string"
                  },
                  "country": {
                    "type": "string",
                    "description": "ISO 3166-1 alpha-2 country code",
                    "example": "US"
                  }
                }
              },
              "notes": {
                "type": "string",
                "description": "Customer-facing notes"
              },
              "internalNotes": {
                "type": "string",
                "description": "Internal operational notes"
              },
              "shipperId": {
                "type": "string",
                "description": "Shipper identifier"
              },
              "divisionTerm": {
                "type": "string",
                "description": "Division or billing term associated with the customer"
              }
            }
          },
          "stops": {
            "type": "array",
            "description": "Ordered list of pickup and delivery stops on the load.",
            "items": {
              "type": "object",
              "properties": {
                "stopNumber": {
                  "type": "integer",
                  "description": "1-based stop sequence number"
                },
                "stopType": {
                  "type": "string",
                  "enum": [
                    "PICKUP",
                    "DELIVERY"
                  ],
                  "description": "Whether the stop is a pickup or delivery"
                },
                "referenceNumber": {
                  "type": "string",
                  "description": "Stop-level reference number"
                },
                "facilityName": {
                  "type": "string",
                  "description": "Name of the facility"
                },
                "facilityCode": {
                  "type": "string",
                  "description": "Facility code, if known"
                },
                "facilityAddress": {
                  "type": "object",
                  "description": "Address of the facility",
                  "properties": {
                    "name": {
                      "type": "string",
                      "description": "Location name"
                    },
                    "streetAddress": {
                      "type": "string"
                    },
                    "city": {
                      "type": "string"
                    },
                    "state": {
                      "type": "string"
                    },
                    "zip": {
                      "type": "string"
                    },
                    "country": {
                      "type": "string",
                      "description": "ISO 3166-1 alpha-2 country code",
                      "example": "US"
                    }
                  }
                },
                "facilityContact": {
                  "type": "object",
                  "description": "Contact information for the facility",
                  "properties": {
                    "email": {
                      "type": "string"
                    },
                    "phone": {
                      "type": "string"
                    }
                  }
                },
                "handlingType": {
                  "type": "string",
                  "enum": [
                    "LIVE",
                    "DROP_TRAILER"
                  ],
                  "description": "Load/unload handling type for the stop"
                },
                "appointmentType": {
                  "type": "string",
                  "enum": [
                    "APPOINTMENT",
                    "FIRST_COME_FIRST_SERVE"
                  ],
                  "description": "Scheduling method for the stop"
                },
                "appointmentTime": {
                  "type": "object",
                  "description": "Scheduled appointment window",
                  "properties": {
                    "start": {
                      "type": "string",
                      "description": "Appointment start (local date-time or date-time with offset)"
                    },
                    "end": {
                      "type": "string",
                      "description": "Appointment end (local date-time or date-time with offset)"
                    },
                    "timezone": {
                      "type": "string",
                      "description": "IANA timezone identifier"
                    }
                  }
                },
                "dropTime": {
                  "type": "object",
                  "description": "Drop time window for drop-trailer stops",
                  "properties": {
                    "start": {
                      "type": "string",
                      "description": "Drop window start (local date-time or date-time with offset)"
                    },
                    "end": {
                      "type": "string",
                      "description": "Drop window end (local date-time or date-time with offset)"
                    },
                    "timezone": {
                      "type": "string",
                      "description": "IANA timezone identifier"
                    }
                  }
                },
                "driverInstructions": {
                  "type": "string",
                  "description": "Special instructions for the driver at this stop"
                },
                "notes": {
                  "type": "string",
                  "description": "Customer-facing notes for the stop"
                },
                "internalNotes": {
                  "type": "string",
                  "description": "Internal operational notes for the stop"
                },
                "shippingHours": {
                  "type": "string",
                  "description": "Shipping hours for the facility"
                },
                "receivingHours": {
                  "type": "string",
                  "description": "Receiving hours for the facility"
                },
                "operatingHours": {
                  "type": "string",
                  "description": "General operating hours for the facility"
                },
                "timezone": {
                  "type": "string",
                  "description": "IANA timezone identifier for the facility's local time"
                }
              }
            }
          },
          "loadDetails": {
            "type": "object",
            "description": "Commodity and cargo details. The fields on this object describe the load as a whole. When the source supplies per-line detail, `cargoItems` carries it and these top-level fields act as the summary for the load. Augment passes both through exactly as supplied and does not derive or reconcile them, so do not assume the summary equals the sum of `cargoItems`.\n",
            "properties": {
              "handlingUnit": {
                "type": "object",
                "description": "Handling unit information (e.g. pallets)",
                "properties": {
                  "unitType": {
                    "type": "string",
                    "enum": [
                      "PALLET",
                      "PIECE",
                      "CARTON",
                      "TOTE",
                      "SKID",
                      "CRATE",
                      "BOX",
                      "DRUM",
                      "CASE",
                      "FLOOR_LOADED",
                      "ROLL",
                      "SHEET"
                    ],
                    "description": "Type of handling unit"
                  },
                  "unitCount": {
                    "type": "string",
                    "description": "Number of handling units"
                  }
                }
              },
              "packagingUnit": {
                "type": "object",
                "description": "Packaging unit information (e.g. cartons inside pallets)",
                "properties": {
                  "unitType": {
                    "type": "string",
                    "enum": [
                      "PALLET",
                      "PIECE",
                      "CARTON",
                      "TOTE",
                      "SKID",
                      "CRATE",
                      "BOX",
                      "DRUM",
                      "CASE",
                      "FLOOR_LOADED",
                      "ROLL",
                      "SHEET"
                    ],
                    "description": "Type of packaging unit"
                  },
                  "unitCount": {
                    "type": "string",
                    "description": "Number of packaging units"
                  }
                }
              },
              "commodity": {
                "type": "string",
                "description": "Commodity description (typically 40 characters or fewer)"
              },
              "description": {
                "type": "string",
                "description": "Extended commodity description"
              },
              "dimensions": {
                "type": "object",
                "description": "Load dimensions",
                "properties": {
                  "length": {
                    "type": "string"
                  },
                  "lengthUnit": {
                    "type": "string",
                    "example": "IN"
                  },
                  "width": {
                    "type": "string"
                  },
                  "widthUnit": {
                    "type": "string",
                    "example": "IN"
                  },
                  "height": {
                    "type": "string"
                  },
                  "heightUnit": {
                    "type": "string",
                    "example": "IN"
                  },
                  "volume": {
                    "type": "string"
                  },
                  "volumeUnit": {
                    "type": "string",
                    "example": "CUFT"
                  }
                }
              },
              "weight": {
                "type": "object",
                "description": "Total load weight",
                "properties": {
                  "value": {
                    "type": "string"
                  },
                  "unit": {
                    "type": "string",
                    "example": "LBS"
                  }
                }
              },
              "valueAmount": {
                "type": "object",
                "description": "Declared value of the load",
                "properties": {
                  "value": {
                    "type": "string"
                  },
                  "unit": {
                    "type": "string",
                    "example": "USD"
                  }
                }
              },
              "cargoCharacteristics": {
                "type": "object",
                "properties": {
                  "stackable": {
                    "type": "boolean",
                    "description": "Whether cargo can be stacked"
                  },
                  "hazmat": {
                    "type": "boolean",
                    "description": "Whether cargo contains hazardous materials"
                  },
                  "perishable": {
                    "type": "boolean",
                    "description": "Whether cargo is perishable or temperature-sensitive"
                  },
                  "hazardousDetails": {
                    "type": "object",
                    "description": "Details of the hazardous material being transported. Populated only when `hazmat` is true.\n",
                    "properties": {
                      "name": {
                        "type": "string",
                        "description": "Hazardous material name"
                      },
                      "nameQualifier": {
                        "type": "string",
                        "description": "Qualifier for the hazardous material name"
                      },
                      "unCode": {
                        "type": "string",
                        "description": "UN/NA identification code"
                      },
                      "contact": {
                        "type": "string",
                        "description": "Emergency contact name"
                      },
                      "number": {
                        "type": "string",
                        "description": "Emergency contact phone number"
                      },
                      "hazardClass": {
                        "type": "string",
                        "description": "Hazard class"
                      },
                      "placardsNeeded": {
                        "type": "string",
                        "description": "Placards required for transport"
                      },
                      "placardNumber": {
                        "type": "string",
                        "description": "Placard number"
                      },
                      "packingGroup": {
                        "type": "string",
                        "description": "Packing group"
                      },
                      "flashpointTemp": {
                        "type": "string",
                        "description": "Flashpoint temperature"
                      },
                      "controlTemp": {
                        "type": "string",
                        "description": "Control temperature"
                      },
                      "emergencyTemp": {
                        "type": "string",
                        "description": "Emergency temperature"
                      },
                      "tempQualifier": {
                        "type": "string",
                        "description": "Unit or qualifier for the temperature values"
                      }
                    }
                  }
                }
              },
              "cargoItems": {
                "type": "array",
                "description": "Per-line cargo detail. Each entry uses the same fields as the summary above and describes a single line. Present only when the source supplied per-line detail — some sources populate the summary fields only, so an absent or empty `cargoItems` does not by itself mean the load carries a single commodity.\n",
                "items": {
                  "type": "object",
                  "properties": {
                    "handlingUnit": {
                      "type": "object",
                      "description": "Handling unit information (e.g. pallets)",
                      "properties": {
                        "unitType": {
                          "type": "string",
                          "enum": [
                            "PALLET",
                            "PIECE",
                            "CARTON",
                            "TOTE",
                            "SKID",
                            "CRATE",
                            "BOX",
                            "DRUM",
                            "CASE",
                            "FLOOR_LOADED",
                            "ROLL",
                            "SHEET"
                          ],
                          "description": "Type of handling unit"
                        },
                        "unitCount": {
                          "type": "string",
                          "description": "Number of handling units"
                        }
                      }
                    },
                    "packagingUnit": {
                      "type": "object",
                      "description": "Packaging unit information (e.g. cartons inside pallets)",
                      "properties": {
                        "unitType": {
                          "type": "string",
                          "enum": [
                            "PALLET",
                            "PIECE",
                            "CARTON",
                            "TOTE",
                            "SKID",
                            "CRATE",
                            "BOX",
                            "DRUM",
                            "CASE",
                            "FLOOR_LOADED",
                            "ROLL",
                            "SHEET"
                          ],
                          "description": "Type of packaging unit"
                        },
                        "unitCount": {
                          "type": "string",
                          "description": "Number of packaging units"
                        }
                      }
                    },
                    "commodity": {
                      "type": "string",
                      "description": "Commodity description (typically 40 characters or fewer)"
                    },
                    "description": {
                      "type": "string",
                      "description": "Extended commodity description"
                    },
                    "dimensions": {
                      "type": "object",
                      "description": "Cargo item dimensions",
                      "properties": {
                        "length": {
                          "type": "string"
                        },
                        "lengthUnit": {
                          "type": "string",
                          "example": "IN"
                        },
                        "width": {
                          "type": "string"
                        },
                        "widthUnit": {
                          "type": "string",
                          "example": "IN"
                        },
                        "height": {
                          "type": "string"
                        },
                        "heightUnit": {
                          "type": "string",
                          "example": "IN"
                        },
                        "volume": {
                          "type": "string"
                        },
                        "volumeUnit": {
                          "type": "string",
                          "example": "CUFT"
                        }
                      }
                    },
                    "weight": {
                      "type": "object",
                      "description": "Weight of this cargo item",
                      "properties": {
                        "value": {
                          "type": "string"
                        },
                        "unit": {
                          "type": "string",
                          "example": "LBS"
                        }
                      }
                    },
                    "valueAmount": {
                      "type": "object",
                      "description": "Declared value of the cargo item",
                      "properties": {
                        "value": {
                          "type": "string"
                        },
                        "unit": {
                          "type": "string",
                          "example": "USD"
                        }
                      }
                    },
                    "cargoCharacteristics": {
                      "type": "object",
                      "properties": {
                        "stackable": {
                          "type": "boolean",
                          "description": "Whether cargo can be stacked"
                        },
                        "hazmat": {
                          "type": "boolean",
                          "description": "Whether cargo contains hazardous materials"
                        },
                        "perishable": {
                          "type": "boolean",
                          "description": "Whether cargo is perishable or temperature-sensitive"
                        },
                        "hazardousDetails": {
                          "type": "object",
                          "description": "Details of the hazardous material being transported. Populated only when `hazmat` is true.\n",
                          "properties": {
                            "name": {
                              "type": "string",
                              "description": "Hazardous material name"
                            },
                            "nameQualifier": {
                              "type": "string",
                              "description": "Qualifier for the hazardous material name"
                            },
                            "unCode": {
                              "type": "string",
                              "description": "UN/NA identification code"
                            },
                            "contact": {
                              "type": "string",
                              "description": "Emergency contact name"
                            },
                            "number": {
                              "type": "string",
                              "description": "Emergency contact phone number"
                            },
                            "hazardClass": {
                              "type": "string",
                              "description": "Hazard class"
                            },
                            "placardsNeeded": {
                              "type": "string",
                              "description": "Placards required for transport"
                            },
                            "placardNumber": {
                              "type": "string",
                              "description": "Placard number"
                            },
                            "packingGroup": {
                              "type": "string",
                              "description": "Packing group"
                            },
                            "flashpointTemp": {
                              "type": "string",
                              "description": "Flashpoint temperature"
                            },
                            "controlTemp": {
                              "type": "string",
                              "description": "Control temperature"
                            },
                            "emergencyTemp": {
                              "type": "string",
                              "description": "Emergency temperature"
                            },
                            "tempQualifier": {
                              "type": "string",
                              "description": "Unit or qualifier for the temperature values"
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "loadRequirements": {
            "type": "object",
            "description": "Equipment and service requirements.",
            "properties": {
              "mode": {
                "type": "string",
                "enum": [
                  "FTL",
                  "LTL",
                  "DRAYAGE"
                ],
                "description": "Transportation mode"
              },
              "loadType": {
                "type": "string",
                "enum": [
                  "SPOT",
                  "CONTRACT",
                  "DEDICATED",
                  "PROJECT"
                ],
                "description": "Rate type / load type"
              },
              "equipment": {
                "type": "object",
                "description": "Equipment requirements",
                "properties": {
                  "equipmentType": {
                    "type": "string",
                    "enum": [
                      "DRY_VAN",
                      "FLATBED",
                      "REEFER",
                      "CONTAINER",
                      "CONESTOGA",
                      "CONTAINERS",
                      "DECKS_SPECIALIZED",
                      "DECKS_STANDARD",
                      "DRY_BULK",
                      "FLATBEDS",
                      "HAZARDOUS_MATERIALS",
                      "OTHER_EQUIPMENT",
                      "REEFERS",
                      "TANKERS",
                      "VANS_SPECIALIZED",
                      "VANS_STANDARD",
                      "AUTO_CARRIER",
                      "B_TRAIN",
                      "CONTAINER_INSULATED",
                      "CONTAINER_REFRIGERATED",
                      "CONVEYOR",
                      "DOUBLE_DROP",
                      "DUMP_TRAILER",
                      "DROP_DECK_LANDOLL",
                      "FLATBED_AIR_RIDE",
                      "FLATBED_CONESTOGA",
                      "FLATBED_DOUBLE",
                      "FLATBED_HAZMAT",
                      "FLATBED_HOTSHOT",
                      "FLATBED_MAXI",
                      "FLATBED_OR_STEP_DECK",
                      "FLATBED_OVERDIMENSION",
                      "FLATBED_VAN_REEFER",
                      "FLATBED_WITH_CHAINS",
                      "FLATBED_WITH_SIDES",
                      "FLATBED_WITH_TARPS",
                      "FLATBED_WITH_TEAM",
                      "HOPPER_BOTTOM",
                      "INSULATED_VAN_OR_REEFER",
                      "LOWBOY",
                      "LOWBOY_OR_REM_GOOSENECK_RGN",
                      "LOWBOY_OVERDIMENSION",
                      "MOVING_VAN",
                      "OTHER",
                      "PNEUMATIC",
                      "POWER_ONLY",
                      "POWER_ONLY_LOAD_OUT",
                      "POWER_ONLY_TOW_AWAY",
                      "REEFER_AIR_RIDE",
                      "REEFER_DOUBLE",
                      "REEFER_HAZMAT",
                      "REEFER_INTERMODAL",
                      "REEFER_LOGISTICS",
                      "REEFER_OR_VENTED_VAN",
                      "REEFER_PALLET_EXCHANGE",
                      "REEFER_WITH_TEAM",
                      "REMOVABLE_GOOSENECK",
                      "SPRINTER_VAN",
                      "SPRINTER_VAN_HAZMAT",
                      "SPRINTER_VAN_TEMP_CONTROLLED",
                      "SPRINTER_VAN_WITH_TEAM",
                      "STEP_DECK",
                      "STEP_DECK_OR_REM_GOOSENECK_RGN",
                      "STEPDECK_CONESTOGA",
                      "STRAIGHT_BOX_TRUCK",
                      "STRAIGHT_BOX_TRUCK_HAZMAT",
                      "STRAIGHT_BOX_TRUCK_REEFER",
                      "STRETCH_TRAILER",
                      "TANKER_ALUMINUM",
                      "TANKER_INTERMODAL",
                      "TANKER_STEEL",
                      "TRUCK_AND_TRAILER",
                      "VAN",
                      "VAN_AIR_RIDE",
                      "VAN_BLANKET_WRAP",
                      "VAN_CONESTOGA",
                      "VAN_DOUBLE",
                      "VAN_HOTSHOT",
                      "VAN_INSULATED",
                      "VAN_INTERMODAL",
                      "VAN_LIFT_GATE",
                      "VAN_LOGISTICS",
                      "VAN_OPEN_TOP",
                      "VAN_OR_FLATBED",
                      "VAN_OR_FLATBED_WITH_TARPS",
                      "VAN_OR_REEFER",
                      "VAN_PALLET_EXCHANGE",
                      "VAN_ROLLER_BED",
                      "VAN_TRIPLE",
                      "VAN_VENTED",
                      "VAN_WITH_CURTAINS",
                      "VAN_WITH_TEAM",
                      "VAN_HAZMAT",
                      "HOTSHOT_FLATBED",
                      "STRAIGHT_TRUCK",
                      "VAN_SPRINTER",
                      "REMOVABLE_GOOSE_NECK",
                      "TANKER",
                      "BOX_TRUCK"
                    ],
                    "description": "Equipment type"
                  },
                  "size": {
                    "type": "string",
                    "description": "Equipment size (e.g. 53)"
                  },
                  "unit": {
                    "type": "string",
                    "description": "Unit of measure for equipment size"
                  }
                }
              },
              "additionalRequiredServices": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Additional services required for the load (e.g. liftgate, team driver)"
              },
              "tarpSize": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Tarp size required, if applicable"
              },
              "temperatureRequirement": {
                "type": [
                  "object",
                  "null"
                ],
                "description": "Temperature control requirements",
                "properties": {
                  "required": {
                    "type": "boolean",
                    "description": "Whether temperature control is required"
                  },
                  "hasBulkhead": {
                    "type": "boolean",
                    "description": "Whether a bulkhead is required"
                  },
                  "zones": {
                    "type": "array",
                    "description": "Temperature zones for multi-zone reefer loads",
                    "items": {
                      "type": "object",
                      "properties": {
                        "zoneId": {
                          "type": "string",
                          "description": "Zone identifier"
                        },
                        "minTemp": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "description": "Minimum temperature",
                          "properties": {
                            "value": {
                              "type": "number"
                            },
                            "unit": {
                              "type": "string",
                              "enum": [
                                "F",
                                "C"
                              ]
                            }
                          }
                        },
                        "maxTemp": {
                          "type": [
                            "object",
                            "null"
                          ],
                          "description": "Maximum temperature",
                          "properties": {
                            "value": {
                              "type": "number"
                            },
                            "unit": {
                              "type": "string",
                              "enum": [
                                "F",
                                "C"
                              ]
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "rates": {
            "type": "object",
            "description": "Pricing information for the load.",
            "properties": {
              "baseRate": {
                "type": "string",
                "description": "Base rate in dollars"
              },
              "lineHaul": {
                "type": "string",
                "description": "Line haul rate in dollars"
              },
              "accessorials": {
                "type": "array",
                "description": "Accessorial charges",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "description": "Accessorial charge type"
                    },
                    "rate": {
                      "type": "string",
                      "description": "Accessorial charge amount in dollars"
                    }
                  }
                }
              },
              "totalRate": {
                "type": "string",
                "description": "Total rate in dollars"
              },
              "collectionMethod": {
                "type": "string",
                "enum": [
                  "PrePaid",
                  "Collect",
                  "ThirdParty",
                  "CollectOnDelivery"
                ],
                "description": "Payment collection method"
              }
            }
          },
          "documentDates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "ISO 8601 date strings associated with documents on the load (e.g. BOL date, delivery date)\n"
          }
        }
      },
      "LoadDraftCreationResponse": {
        "type": "object",
        "description": "Response returned by the TMS after creating a load from a draft. The `loadNum` field must be present.\n",
        "required": [
          "loadNum"
        ],
        "properties": {
          "loadNum": {
            "type": "string",
            "description": "The load number assigned by the TMS to the newly created load. This is the primary identifier used to link the Augment load draft to the TMS load.\n",
            "example": "LOAD-12345"
          },
          "message": {
            "type": "string",
            "description": "Optional success or error message from the TMS describing the result of the load creation.\n",
            "example": "Load created successfully"
          },
          "referenceNumbers": {
            "type": "object",
            "description": "Optional reference numbers returned by the TMS (e.g. load number, customer order number, trace IDs).\n",
            "properties": {
              "shipmentNumber": {
                "type": "string"
              },
              "customerReferenceNumber": {
                "type": "string"
              },
              "customerLoadNumber": {
                "type": "string"
              },
              "releaseNumber": {
                "type": "string"
              },
              "bolNumber": {
                "type": "string"
              },
              "poNumber": {
                "type": "string"
              },
              "proNumber": {
                "type": "string"
              },
              "driverNumber": {
                "type": "string"
              },
              "tractorNumber": {
                "type": "string"
              },
              "trailerNumber": {
                "type": "string"
              },
              "others": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "value": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "x-ext-urls": {}
}