# Report TONU Report Truck Ordered Not Used (TONU). ## What happens - LoadCarrier status changes to TONU - TONU costs are recorded if provided - Optionally creates a replacement load ## When to use Use TONU when: - Carrier was dispatched but load was cancelled - Carrier arrived but freight wasn't ready - Carrier was turned away at shipper TONU typically involves some payment to the carrier. Endpoint: POST /loads/{loadId}/carriers/{carrierId}/tonu Version: 1.0.0 Security: BearerAuth ## Path parameters: - `loadId` (string, required) - `carrierId` (string, required) ## Request fields (application/json): - `reason` (string) Reason for TONU - `costs` (array) TONU costs to record - `costs.chargeCode` (any, required) - `costs.description` (string) - `costs.amount` (number, required) - `createReplacementLoad` (boolean) Whether to create a replacement load ## Response 200 fields (application/json): - `loadCarrier` (object) - `loadCarrier.id` (string) - `loadCarrier.carrier` (object) Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key. Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level. - `loadCarrier.carrier.id` (string, required) Carrier UUID Example: "550e8400-e29b-41d4-a716-446655440000" - `loadCarrier.carrier.key` (string,null) Client-defined reference ID if set Example: "ERP-CARRIER-SWIFT" - `loadCarrier.carrier.name` (string, required) Carrier company name Example: "Swift Transportation" - `loadCarrier.carrier.phoneNumber` (string,null) Primary phone number Example: "+1-555-987-6543" - `loadCarrier.carrier.email` (string,null) Primary email address Example: "dispatch@swifttrans.com" - `loadCarrier.carrier.createdAt` (string, required) When the carrier was created Example: "2025-01-15T10:00:00Z" - `loadCarrier.carrier.updatedAt` (string, required) When the carrier was last updated Example: "2025-01-15T14:30:00Z" - `loadCarrier.carrier.deletedAt` (string,null) When the carrier was soft deleted (null if active) - `loadCarrier.contact` (object) - `loadCarrier.contact.name` (string) - `loadCarrier.contact.phone` (string,null) - `loadCarrier.contact.email` (string,null) - `loadCarrier.status` (string) Status of the carrier assignment. - ACTIVE: Carrier is actively assigned - TONU: Truck Ordered Not Used (carrier dispatched but cancelled) - BOUNCED: Carrier bounced/rejected load Enum: "ACTIVE", "TONU", "BOUNCED" - `loadCarrier.billingStatus` (string) Billing status for the load (AP side). - AWAITING_INVOICE: Waiting for carrier invoice - INVOICE_IN_REVIEW: Invoice received, under review - APPROVED_TO_PAY: Approved for payment - PAID: Paid to carrier Enum: "AWAITING_INVOICE", "INVOICE_IN_REVIEW", "APPROVED_TO_PAY", "PAID" - `loadCarrier.bookedAt` (string,null) - `loadCarrier.dispatchedAt` (string,null) - `loadCarrier.charges` (array) Flattened charges array - `loadCarrier.charges.chargeCode` (object) Reference to another resource (returned in responses) - `loadCarrier.charges.chargeCode.id` (string, required) Resource UUID - `loadCarrier.charges.description` (string,null) - `loadCarrier.charges.amount` (number) - `loadCarrier.charges.quantity` (number) - `loadCarrier.totalCost` (number,null) Sum of all charges - `loadCarrier.driverName` (string,null) - `loadCarrier.driverPhone` (string,null) - `loadCarrier.truckNumber` (string,null) - `loadCarrier.trailerNumber` (string,null) - `loadCarrier.createdAt` (string) - `loadCarrier.updatedAt` (string,null) - `replacementLoadId` (string,null) New load ID if replacement was requested ## Response 400 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message ## Response 401 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message ## Response 404 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message ## Response 409 fields (application/problem+json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message