{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/trimble/json-schema/trimble-intermodal-schema.json",
  "title": "intermodal",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/trimble-truckmate-openapi.yml#/components/schemas/intermodal",
  "type": "object",
  "properties": {
    "containerCode": {
      "type": "string",
      "maxLength": 10
    },
    "containerNumber": {
      "type": "string",
      "maxLength": 15
    },
    "containerSize": {
      "type": "string",
      "maxLength": 10
    },
    "containerType": {
      "type": "string",
      "maxLength": 10
    },
    "containerOwner": {
      "type": "string",
      "maxLength": 10
    },
    "movementType": {
      "type": "string",
      "enum": [
        "Import",
        "Export",
        "Dom IB",
        "Dom OB",
        "Empty Repo",
        "Other",
        "IMC",
        ""
      ]
    },
    "containerIso": {
      "type": "string",
      "maxLength": 10
    },
    "pickup": {
      "type": "string",
      "maxLength": 10
    },
    "delivery": {
      "type": "string",
      "maxLength": 10
    },
    "billToCode": {
      "type": "string",
      "maxLength": 10
    },
    "chassisTermination": {
      "type": "string",
      "maxLength": 10
    },
    "chassisPickup": {
      "type": "string",
      "maxLength": 10
    },
    "emptyDisposition": {
      "type": "string",
      "maxLength": 10
    },
    "emptyOrigin": {
      "type": "string",
      "maxLength": 10
    },
    "cardNumber": {
      "type": "string",
      "maxLength": 40
    },
    "sealNumber": {
      "type": "string",
      "maxLength": 40
    },
    "vessel": {
      "type": "string",
      "maxLength": 40
    },
    "voyage": {
      "type": "string",
      "maxLength": 40
    },
    "bookingNumber": {
      "type": "string",
      "maxLength": 40
    },
    "exportDestination": {
      "type": "string",
      "maxLength": 10
    },
    "emptyNotifyDate": {
      "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))?$"
        }
      ]
    },
    "loadedDate": {
      "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))?$"
        }
      ]
    },
    "checkDigit": {
      "type": "string",
      "maxLength": 2
    },
    "userDateTime1": {
      "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))?$"
        }
      ]
    },
    "userDateTime2": {
      "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))?$"
        }
      ]
    },
    "userDateTime3": {
      "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))?$"
        }
      ]
    },
    "userDateTime4": {
      "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))?$"
        }
      ]
    },
    "userDateTime5": {
      "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))?$"
        }
      ]
    },
    "userString1": {
      "type": "string",
      "maxLength": 40
    },
    "userString2": {
      "type": "string",
      "maxLength": 40
    },
    "userString3": {
      "type": "string",
      "maxLength": 40
    },
    "userString4": {
      "type": "string",
      "maxLength": 40
    },
    "userString5": {
      "type": "string",
      "maxLength": 40
    },
    "userString6": {
      "type": "string",
      "maxLength": 40
    },
    "userString7": {
      "type": "string",
      "maxLength": 40
    },
    "userString8": {
      "type": "string",
      "maxLength": 40
    },
    "userString9": {
      "type": "string",
      "maxLength": 40
    },
    "userString10": {
      "type": "string",
      "maxLength": 40
    },
    "userInt1": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userInt2": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userInt3": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userInt4": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userInt5": {
      "type": [
        "integer",
        "null"
      ]
    },
    "userDouble1": {
      "type": [
        "number",
        "null"
      ]
    },
    "userDouble2": {
      "type": [
        "number",
        "null"
      ]
    },
    "userDouble3": {
      "type": [
        "number",
        "null"
      ]
    },
    "userDouble4": {
      "type": [
        "number",
        "null"
      ]
    },
    "userDouble5": {
      "type": [
        "number",
        "null"
      ]
    },
    "userTrace1": {
      "type": "string",
      "maxLength": 40
    },
    "userTrace2": {
      "type": "string",
      "maxLength": 40
    },
    "vesselAta": {
      "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))?$"
        }
      ]
    },
    "chassisBillingDeliveryDate": {
      "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))?$"
        }
      ]
    },
    "chassisBillingDispatchDate": {
      "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))?$"
        }
      ]
    },
    "chassisBillingEndDate": {
      "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))?$"
        }
      ]
    },
    "chassisBillingFBPickupDate": {
      "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))?$"
        }
      ]
    },
    "chassisBillingStartDate": {
      "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))?$"
        }
      ]
    },
    "chassisBillingTripDate": {
      "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))?$"
        }
      ]
    },
    "exportVesselCutoff": {
      "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))?$"
        }
      ]
    },
    "deliveryOrderDate": {
      "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))?$"
        }
      ]
    },
    "vesselEta": {
      "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))?$"
        }
      ]
    },
    "containerlastFreeDate": {
      "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))?$"
        }
      ]
    },
    "containerAvailableDate": {
      "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))?$"
        }
      ]
    },
    "railEta": {
      "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))?$"
        }
      ]
    },
    "containerReturnDate": {
      "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))?$"
        }
      ]
    },
    "jobNumber": {
      "type": "string",
      "maxLength": 40
    },
    "shipmentNumber": {
      "type": "string",
      "maxLength": 40
    },
    "supplier": {
      "type": "string",
      "maxLength": 10
    },
    "woReference": {
      "type": "string",
      "maxLength": 40
    },
    "bol": {
      "type": "string",
      "maxLength": 40
    },
    "customerOrder": {
      "type": "string",
      "maxLength": 10
    },
    "deramp": {
      "type": "string",
      "maxLength": 40
    },
    "pickupNumber": {
      "type": "string",
      "maxLength": 40
    },
    "portOfExit": {
      "type": "string",
      "maxLength": 10
    },
    "inBond": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "oblHold": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "agricultureHold": {
      "type": "string",
      "enum": [
        "False",
        "True",
        ""
      ]
    },
    "containerPoolClient": {
      "type": "string",
      "maxLength": 10
    }
  }
}