{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/trimble/json-schema/trimble-detail-schema.json",
  "title": "detail",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/trimble-truckmate-openapi.yml#/components/schemas/detail",
  "type": "object",
  "properties": {
    "orderId": {
      "type": "integer",
      "readOnly": true
    },
    "orderDetailId": {
      "type": "integer",
      "readOnly": true
    },
    "commodity": {
      "type": "string",
      "maxLength": 10
    },
    "description": {
      "type": "string",
      "maxLength": 80
    },
    "pallets": {
      "type": [
        "number",
        "null"
      ]
    },
    "palletUnits": {
      "type": "string",
      "maxLength": 3
    },
    "pieces": {
      "type": [
        "integer",
        "null"
      ]
    },
    "piecesUnits": {
      "type": "string",
      "maxLength": 3
    },
    "weight": {
      "type": [
        "number",
        "null"
      ]
    },
    "weightUnits": {
      "type": "string",
      "maxLength": 3
    },
    "cube": {
      "type": [
        "number",
        "null"
      ]
    },
    "cubeUnits": {
      "type": "string",
      "maxLength": 3
    },
    "length": {
      "type": [
        "number",
        "null"
      ]
    },
    "lengthUnits": {
      "type": "string",
      "maxLength": 3
    },
    "height": {
      "type": [
        "number",
        "null"
      ]
    },
    "heightUnits": {
      "type": "string",
      "maxLength": 3
    },
    "width": {
      "type": [
        "number",
        "null"
      ]
    },
    "widthUnits": {
      "type": "string",
      "maxLength": 3
    },
    "items": {
      "type": [
        "integer",
        "null"
      ]
    },
    "unId": {
      "type": [
        "integer",
        "null"
      ]
    },
    "unNumber": {
      "type": "string",
      "maxLength": 7
    },
    "temperatureControlled": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "requestedEquipment": {
      "type": "string",
      "maxLength": 20
    },
    "dangerousGoods": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "area": {
      "type": [
        "number",
        "null"
      ]
    },
    "areaUnits": {
      "type": "string",
      "maxLength": 3
    },
    "cost": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "dimWeight": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "dimWeightUnits": {
      "type": "string",
      "maxLength": 3,
      "readOnly": true
    },
    "discount": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "discountRate": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "distance": {
      "type": [
        "number",
        "null"
      ]
    },
    "distanceUnits": {
      "type": "string",
      "maxLength": 3
    },
    "field1": {
      "type": "string",
      "maxLength": 40
    },
    "field2": {
      "type": "string",
      "maxLength": 40
    },
    "field3": {
      "type": "string",
      "maxLength": 40
    },
    "field4": {
      "type": "string",
      "maxLength": 40
    },
    "field5": {
      "type": "string",
      "maxLength": 40
    },
    "field6": {
      "type": "string",
      "maxLength": 40
    },
    "field7": {
      "type": "string",
      "maxLength": 40
    },
    "field8": {
      "type": "string",
      "maxLength": 40
    },
    "field9": {
      "type": "string",
      "maxLength": 40
    },
    "field10": {
      "type": "string",
      "maxLength": 40
    },
    "field11": {
      "type": [
        "number",
        "null"
      ]
    },
    "field12": {
      "type": [
        "number",
        "null"
      ]
    },
    "field13": {
      "type": [
        "number",
        "null"
      ]
    },
    "field14": {
      "type": [
        "number",
        "null"
      ]
    },
    "field15": {
      "type": [
        "number",
        "null"
      ]
    },
    "field16": {
      "type": [
        "number",
        "null"
      ]
    },
    "field17": {
      "type": [
        "number",
        "null"
      ]
    },
    "field18": {
      "type": [
        "number",
        "null"
      ]
    },
    "field19": {
      "type": [
        "number",
        "null"
      ]
    },
    "field20": {
      "type": [
        "number",
        "null"
      ]
    },
    "field21": {
      "type": [
        "string",
        "null"
      ],
      "oneOf": [
        {
          "enum": [
            ""
          ]
        },
        {
          "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
        }
      ]
    },
    "field22": {
      "type": [
        "string",
        "null"
      ],
      "oneOf": [
        {
          "enum": [
            ""
          ]
        },
        {
          "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
        }
      ]
    },
    "field23": {
      "type": [
        "string",
        "null"
      ],
      "oneOf": [
        {
          "enum": [
            ""
          ]
        },
        {
          "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
        }
      ]
    },
    "field24": {
      "type": [
        "string",
        "null"
      ],
      "oneOf": [
        {
          "enum": [
            ""
          ]
        },
        {
          "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
        }
      ]
    },
    "field25": {
      "type": [
        "string",
        "null"
      ],
      "oneOf": [
        {
          "enum": [
            ""
          ]
        },
        {
          "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
        }
      ]
    },
    "osdId": {
      "type": "integer"
    },
    "rate": {
      "type": [
        "number",
        "null"
      ]
    },
    "rateFromZone": {
      "type": "string",
      "maxLength": 10,
      "readOnly": true
    },
    "ratePer": {
      "type": [
        "number",
        "null"
      ]
    },
    "rateToZone": {
      "type": "string",
      "maxLength": 10,
      "readOnly": true
    },
    "rateUnits": {
      "type": "string",
      "maxLength": 3
    },
    "subCost": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "temperature": {
      "type": [
        "number",
        "null"
      ]
    },
    "temperatureUnits": {
      "type": "string",
      "maxLength": 3
    },
    "time": {
      "type": [
        "number",
        "null"
      ]
    },
    "timeUnits": {
      "type": "string",
      "maxLength": 3
    },
    "volume": {
      "type": [
        "number",
        "null"
      ]
    },
    "volumeUnits": {
      "type": "string",
      "maxLength": 3
    },
    "highValue": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "regionalRestrictions": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "manuallyRated": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "userFieldInt1": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userFieldInt2": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userFieldInt3": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userFieldInt4": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userFieldInt5": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userFieldInt6": {
      "type": [
        "integer",
        "null"
      ]
    },
    "estimatedCube": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedHeight": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedLength": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedPallets": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedPieces": {
      "type": [
        "integer",
        "null"
      ]
    },
    "estimatedWeight": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedWidth": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedVolume": {
      "type": [
        "number",
        "null"
      ]
    },
    "itemCube": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "itemPallets": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "itemPieces": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "itemTemperature": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "itemWeight": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "itemVolume": {
      "type": [
        "number",
        "null"
      ],
      "readOnly": true
    },
    "cubePolicyValue": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedCubePolicyValue": {
      "type": [
        "number",
        "null"
      ]
    },
    "perishable": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "asRate": {
      "type": [
        "number",
        "null"
      ]
    },
    "asBreak": {
      "type": [
        "number",
        "null"
      ]
    },
    "mpSeq": {
      "type": [
        "integer",
        "null"
      ]
    },
    "ratesheetCurrencyRates": {
      "$ref": "#/$defs/ratesheetcurrencyrates"
    },
    "barcodes": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/barcode"
      }
    }
  },
  "$defs": {
    "barcode": {
      "type": "object",
      "properties": {
        "barcode": {
          "type": "string",
          "maxLength": 50,
          "description": "System-generated scannable barcode for the handling unit."
        },
        "altBarcode1": {
          "type": "string",
          "maxLength": 50,
          "description": "An alternate scannable barcode for the handling unit."
        },
        "altBarcode2": {
          "type": "string",
          "maxLength": 50,
          "description": "A second alternate scannable barcode for the handling unit."
        },
        "cube": {
          "type": [
            "number",
            "null"
          ],
          "description": "Cubic dimensional value of the handling unit."
        },
        "cubeUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the cube property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "height": {
          "type": [
            "number",
            "null"
          ],
          "description": "Height of the handling unit."
        },
        "heightUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the height property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "length": {
          "type": [
            "number",
            "null"
          ],
          "description": "Length of the handling unit."
        },
        "lengthUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the length property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "location": {
          "type": "string",
          "maxLength": 12,
          "description": "Identifier for the last known location of the handling unit."
        },
        "locationTerminalId": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Numeric ID for the terminal where the handling unit is currently or was last located."
        },
        "locationTerminalZone": {
          "type": "string",
          "maxLength": 10,
          "description": "Zone code for the terminal where the handling unit is currently or was last located."
        },
        "locationTimestamp": {
          "type": [
            "string",
            "null"
          ],
          "description": "Timestamp for the last known location information.",
          "oneOf": [
            {
              "enum": [
                ""
              ]
            },
            {
              "pattern": "^\\d{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12]\\d)((T| )([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d))?$"
            }
          ]
        },
        "locationTypeDesc": {
          "type": "string",
          "maxLength": 15,
          "description": "Description of location referred to by the location property."
        },
        "locationType": {
          "type": "string",
          "maxLength": 1,
          "description": "Type of location referred to by the location property."
        },
        "pallets": {
          "type": [
            "number",
            "null"
          ],
          "description": "Pallets that make up the handling unit."
        },
        "palletUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the pallets property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "pieces": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Pieces that make up the handling unit."
        },
        "pieceUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the pieces property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "temperature": {
          "type": [
            "number",
            "null"
          ],
          "description": "Temperature of the handling unit."
        },
        "temperatureUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the temperature property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "status": {
          "type": "string",
          "maxLength": 10,
          "description": "Current location status of this specific handling unit."
        },
        "statusComment": {
          "type": "string",
          "maxLength": 120,
          "description": "Additional human-readable comments clarifying the last known status of the freight."
        },
        "volume": {
          "type": [
            "number",
            "null"
          ],
          "description": "Volume of the handling unit."
        },
        "volumeUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the volume property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "weight": {
          "type": [
            "number",
            "null"
          ],
          "description": "Weight of the handling unit."
        },
        "weightUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the weight property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "width": {
          "type": [
            "number",
            "null"
          ],
          "description": "Width of the handling unit."
        },
        "widthUnits": {
          "type": "string",
          "maxLength": 3,
          "description": "Unit of measure for the width property. Note that unit types are configurable and may vary per TruckMate instance."
        },
        "sequence": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Barcode sequence"
        },
        "barcodeId": {
          "type": "integer",
          "description": "Barcode ID, automatically generated"
        },
        "cubePolicyId": {
          "type": "integer",
          "description": "ID of cube policy if used"
        },
        "cubePolicyValue": {
          "type": [
            "number",
            "null"
          ],
          "description": "Value of cube policy if used"
        },
        "doorNumber": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Terminal door number"
        },
        "handlingNotes": {
          "type": "string",
          "maxLength": 40,
          "description": "Free-form notes that can be entered by pickup/delivery driver"
        },
        "intact": {
          "type": "string",
          "enum": [
            "False",
            "True",
            ""
          ],
          "description": "Describes the pieces/pallet state"
        },
        "isVerified": {
          "type": "string",
          "enum": [
            "False",
            "True",
            ""
          ],
          "description": "Order is verified"
        },
        "lifts": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Number of sets of stairs at location"
        },
        "orderId": {
          "type": "integer",
          "description": "Detail line ID of order"
        },
        "orderDetailId": {
          "type": "integer",
          "description": "Sequence of order"
        },
        "mobileScanned": {
          "type": "string",
          "enum": [
            "False",
            "True",
            ""
          ],
          "description": "Has been scanned by handheld device"
        },
        "palletGroupId": {
          "type": "string",
          "maxLength": 50,
          "description": "Pallet group ID"
        },
        "pieceCubing": {
          "type": "string",
          "enum": [
            "False",
            "True",
            ""
          ],
          "description": "Piece cubing"
        },
        "printStatus": {
          "type": "string",
          "maxLength": 10,
          "description": "Printing status"
        },
        "tripNumber": {
          "type": "integer",
          "description": "Trip number"
        },
        "user1": {
          "type": "string",
          "maxLength": 80,
          "description": "Expansion field #1 for any additional user-provided information"
        },
        "user2": {
          "type": "string",
          "maxLength": 80,
          "description": "Expansion field #2 for any additional user-provided information"
        },
        "user3": {
          "type": "string",
          "maxLength": 80,
          "description": "Expansion field #3 for any additional user-provided information"
        },
        "user4": {
          "type": "string",
          "maxLength": 80,
          "description": "Expansion field #4 for any additional user-provided information"
        },
        "user5": {
          "type": "string",
          "maxLength": 80,
          "description": "Expansion field #5 for any additional user-provided information"
        }
      }
    },
    "ratesheetcurrencyrates": {
      "type": "object",
      "properties": {
        "rate": {
          "type": [
            "number",
            "null"
          ]
        },
        "asRate": {
          "type": [
            "number",
            "null"
          ]
        },
        "discountRate": {
          "type": [
            "number",
            "null"
          ]
        },
        "discountAmount": {
          "type": [
            "number",
            "null"
          ]
        },
        "subCost": {
          "type": [
            "number",
            "null"
          ]
        },
        "cost": {
          "type": [
            "number",
            "null"
          ]
        },
        "currency": {
          "type": "string",
          "maxLength": 3
        },
        "foreignExchangeRate": {
          "type": [
            "number",
            "null"
          ]
        }
      }
    }
  }
}