EmptyContainer JSON Schema - CubeMaster API V2

The JSON represents an empty container configuration for a shipping container, such as a 53-foot intermodal SeaVan, used in the CubeMaster API V2. This API provides a RESTful interface for building and managing truck, trailer, pallet, ULD, and box loadings (as per the CubeMaster API documentation). The EmptyContainer schema defines the physical properties, constraints, and visual attributes of an empty container, typically embedded as the emptyContainer field in a larger cargo loading JSON structure returned by endpoints like POST /Loads.

Context in CubeMaster API V2

The EmptyContainer schema is part of the response from the POST /Loads endpoint, which builds a new load and saves it to the loads database. It can also be retrieved or managed via endpoints like GET /Database/Containers/{type} and POST /Database/Containers/{type}. The schema supports parameters like containerDetailLoadedFromDatabase (boolean, default: false), which, if true, loads container details from the containers database based on the container name, otherwise requiring full details in the request body.

Key API parameters affecting the container include:

  • UOM (string, query): Specifies the unit of measure (e.g., UnitMetric, UnitEnglish, UnitHighMetric). The provided JSON uses UnitMetric (cm for dimensions, kg for weight).
  • graphicsCreated (boolean, query): If true, generates images for the container in the Graphics.images member.
  • spacesCreated (boolean, query): If true, includes the Spaces member with build steps.
Structure
  • containerType (string): Type of container (e.g., "SeaVan"). Matches ContainerTypeEnum (e.g., Carton, Pallet, SeaVan).
  • vehicleType (string): Vehicle category (e.g., "Dry"). Matches VehicleTypeEnum (e.g., Dry, Refrigerated).
  • palletType (string): Pallet type (e.g., "Wood2WaysDoube"). Matches PalletTypeEnum.
  • cartonType (string): Carton type (e.g., "Tuck"). Matches CartonTypeEnum.
  • qty (integer): Number of containers (often 0 for a single definition).
  • length (integer): Container length in cm (e.g., 631).
  • width (integer): Container width in cm (e.g., 100).
  • height (integer): Container height in cm (e.g., 111).
  • emptyWeight (integer): Weight of the empty container in kg (e.g., 0).
  • maxLength (integer): Maximum cargo length (0 if unrestricted).
  • maxWidth (integer): Maximum cargo width (0 if unrestricted).
  • maxHeight (integer): Maximum cargo height (e.g., 111).
  • maxWeight (integer): Maximum weight capacity in kg (e.g., 63000).
  • palletThickness (integer): Pallet thickness in cm (e.g., 0).
  • maxVolPercent (integer): Maximum volume utilization percentage (0 if unrestricted).
  • name (string): Container identifier (e.g., "53FT-Intermodal").
  • description (string): Optional description (often empty).
  • priority (integer): Priority for container selection (e.g., 0).
  • maxCargoTypes (integer): Maximum number of cargo types (0 if unrestricted).
  • color (integer): Numeric color code for visualization (e.g., 65535).
  • colorHexaCode (string): Hex color code (empty if not specified).
  • colorKnownName (string): Human-readable color name (empty if not specified).
  • palletOverhang (boolean): Whether pallet overhang is allowed (e.g., false).
  • palletOverhangLength (integer): Overhang length in cm (e.g., 0).
  • palletOverhangWidth (integer): Overhang width in cm (e.g., 0).
  • palletUnderhang (boolean): Whether pallet underhang is allowed (e.g., false).
  • palletUnderhangLength (integer): Underhang length in cm (e.g., 0).
  • palletUnderhangWidth (integer): Underhang width in cm (e.g., 0).
  • price (integer): Container cost (e.g., 0).
  • maxPrice (integer): Maximum allowable cost (e.g., 0).
  • zones (null): Zoning information (null if not used).
  • vehicleDropDeckRearSize (null): Rear drop deck size (null if not applicable).
  • vehicleDropDeckFrontSize (null): Front drop deck size (null if not applicable).
Data Types
  • Strings: Identifiers, types, descriptions, color codes (e.g., containerType, colorHexaCode).
  • Integers: Dimensions, weights, quantities, priorities, colors (e.g., length, color).
  • Booleans: Flags like palletOverhang, palletUnderhang.
  • Null: Unused fields like zones, vehicleDropDeckRearSize.
Purpose

The EmptyContainer schema defines the properties and constraints of an empty shipping container for logistics planning and cargo optimization within the CubeMaster API V2. It is used to initialize a container before loading cargoes, supporting endpoints for creating, retrieving, and managing container data in the containers database.

Below is a JSON sample representing an empty 53-foot intermodal container, adhering to the EmptyContainer schema in the CubeMaster API V2.


{
    "containerType": "SeaVan",
    "vehicleType": "Dry",
    "palletType": "Wood2WaysDoube",
    "cartonType": "Tuck",
    "qty": 0,
    "length": 631,
    "width": 100,
    "height": 111,
    "emptyWeight": 0,
    "maxLength": 0,
    "maxWidth": 0,
    "maxHeight": 111,
    "maxWeight": 63000,
    "palletThickness": 0,
    "maxVolPercent": 0,
    "name": "53FT-Intermodal",
    "description": "",
    "priority": 0,
    "maxCargoTypes": 0,
    "color": 65535,
    "colorHexaCode": "",
    "colorKnownName": "",
    "palletOverhang": false,
    "palletOverhangLength": 0,
    "palletOverhangWidth": 0,
    "palletUnderhang": false,
    "palletUnderhangLength": 0,
    "palletUnderhangWidth": 0,
    "price": 0,
    "maxPrice": 0,
    "zones": null,
    "vehicleDropDeckRearSize": null,
    "vehicleDropDeckFrontSize": null
}
                            

Notes: Represents an empty 53-foot intermodal SeaVan with dimensions 631 cm (length), 100 cm (width), and 111 cm (height), and a maximum weight capacity of 63,000 kg. It uses UnitMetric for measurements, with no cargo loaded and no specific color or zoning defined. This JSON can be used in API calls like POST /Loads or managed via /Database/Containers endpoints.