"/VSM/FreeOnBoardCloseout": {
"post": {
"operationId": "submitFreeOnBoardCloseout",
"summary": "Submit FOB Closeout Request",
"description": "Transaction for Destination Contract vendors to update a shipment with additional needed information. Updateable fields are: Vendor Reference Number (vendorReferenceNumber), Standard Carrier Alpha Code (SCAC), and Tracking Number (trackingNumber)",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FOBCloseoutRequest"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FOBCloseoutResponse"
}
}
}
},
"4XX": {
"description": "Error Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FOBCommonErrorResponse"
}
}
}
},
"default": {
"description": "Error Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FOBCommonErrorResponse"
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"mTLS": {
"type": "mutualTLS",
"description": "Mutual TLS authentication via X.509 based certificates"
}
},
"schemas": {
"FOBShipmentRequest": {
"title": "FOBShipmentRequest",
"type": "object",
"properties": {
"CAGECode": {
"type": "string",
"minLength": 5,
"maxLength": 5,
"description": "A unique five-character alphanumeric identifier assigned to a company."
},
"FOBCode": {
"type": "string",
"minLength": 2,
"maxLength": 2,
"enum": [
"DS",
"OG"
],
"description": "The code used to identify the contract as Origin (OG) or Destination (DS)."
},
"SCAC": {
"type": "string",
"maxLength": 4,
"description": "A code that is used to identify transportation companies."
},
"carrierRemarksLine1": {
"type": "string",
"maxLength": 70,
"description": "Any additional information for the carrier."
},
"carrierRemarksLine2": {
"type": "string",
"maxLength": 70,
"description": "Any additional information for the carrier."
},
"pickupDate": {
"type": "string",
"minLength": 8,
"maxLength": 8,
"description": "The Date the materiel/cargo is available to be picked up."
},
"shippingLocationID": {
"type": "string",
"minLength": 10,
"maxLength": 10,
"description": "The ID associated to your shipping location, this will be a specifically formatted Suppliers Cage, not the typical CAGE format. The format required will be provided during training."
},
"trackingNumber": {
"type": "string",
"maxLength": 30,
"description": "The tracking number assigned to the shipment."
},
"typeEquipmentIndicator": {
"type": "string",
"maxLength": 3,
"description": "The type of vehicle/trailer used for the shipment."
},
"vendorReferenceNumber": {
"type": "string",
"maxLength": 30,
"description": "A vendor supplied reference number."
},
"containers": {
"type": "array",
"minItems": 1,
"items": {
"title": "container",
"type": "object",
"properties": {
"containerType": {
"type": "string",
"maxLength": 2,
"description": "The abbreviation of the type of container for this shipment."
},
"weight": {
"type": "number",
"minimum": 0.01,
"maximum": 999999.99,
"description": "The weight of this container (in pounds)."
},
"length": {
"type": "integer",
"minimum": 1,
"maximum": 9999,
"description": "The length of this container (in inches)."
},
"width": {
"type": "integer",
"minimum": 1,
"maximum": 9999,
"description": "The width of this container (in inches)."
},
"height": {
"type": "integer",
"minimum": 1,
"maximum": 9999,
"description": "The height of this container (in inches)."
},
"piecesPerPallet": {
"type": "integer",
"maximum": 9999,
"description": "The number of Pieces of Materiel or packages on a given Pallet/Container."
},
"typePackPerPallet": {
"type": "string",
"maxLength": 2,
"description": "The type of packaging used on the Pallet."
},
"FOBPurchaseOrders": {
"type": "array",
"minItems": 1,
"items": {
"title": "FOBPurchaseOrder",
"type": "object",
"properties": {
"requisitionNumber": {
"type": "string",
"maxLength": 15,
"description": "The reference to the customer order that is being fulfilled."
},
"quantity": {
"type": "integer",
"minimum": 0,
"maximum": 99999,
"description": "Quantity of goods being shipped."
},
"usesVariance": {
"type": "string",
"maxLength": 5,
"description": "Indicates if the contract allows for under or over shipment quantities."
},
"hazUNIDNumber": {
"type": "string",
"maxLength": 6,
"description": "A four-digit number that identifies hazardous materials, and articles (such as explosives, flammable liquids, oxidizers, toxic liquids, etc.) in the framework of international trade and transport."
},
"hazUNClassCode": {
"type": "string",
"maxLength": 5,
"description": "One of 9 different classes, based on the dangerous properties of the goods or substance."
},
"hazFlashPoint": {
"type": "string",
"maxLength": 20,
"description": "A measure of the risk of formation of explosive or ignitable mixtures when the liquid escapes from its packing."
},
"hazMSDSNumber": {
"type": "string",
"maxLength": 7
},
"hazPackingGroup": {
"type": "string",
"maxLength": 3,
"description": "The value that represents the danger level of the Dangerous Goods."
},
"hazReportableQtyInd": {
"type": "string",
"maxLength": 3,
"description": "The quantity at which the listed chemical could become a hazardous substance."
},
"hazLimitedQtyInd": {
"type": "string",
"maxLength": 3,
"description": "The maximum quantity per inner packaging or article for transporting dangerous goods."
},
"hazMarinePollutantInd": {
"type": "string",
"maxLength": 3,
"description": "Indicator that identify shipments containing chemicals that are hazardous to the environment and aquatic life."
},
"hazPackerName": {
"type": "string",
"maxLength": 35,
"description": "The individual(s) responsible for the packing of the hazardous materials."
},
"hazPackingInstructions": {
"type": "string",
"maxLength": 15,
"description": "The detailed guidelines on how to properly package hazardous materials for safe transport."
},
"hazPrimaryPackingQuantity": {
"type": "string",
"maxLength": 5,
"description": "The maximum quantity of dangerous goods allowed in the primary receptacle (inner packaging)."
},
"hazPrimaryContainer": {
"type": "string",
"maxLength": 30,
"description": "The primary receptacle (inner packaging) for dangerous goods."
},
"hazPrimaryDangerGoodsQuantity": {
"type": "string",
"maxLength": 18,
"description": "The quantity of the dangerous goods in the primary receptacle."
},
"hazPrimaryDangerGoodsUnitMeasure": {
"type": "string",
"maxLength": 4,
"description": "The standard measurement unit of the primary dangerous goods."
},
"hazProperShippingName": {
"type": "string",
"maxLength": 100,
"description": "A standard, technical name used on shipping documents, notifications, and package markings to describe the hazardous material."
},
"hazSecondaryContainer": {
"type": "string",
"maxLength": 3,
"description": "A container that holds a hazardous chemical that has been transferred from its original, primary container."
},
"hazSecondaryPackingQuantity": {
"type": "string",
"maxLength": 5,
"description": "The quantity of the dangerous goods in the secondary receptacle."
},
"hazSubRisk1": {
"type": "string",
"maxLength": 3,
"description": "The first subsidiary risk (also known as a 'secondary hazard' or 'sub-risk') in the context of dangerous goods refers to additional hazards a substance might pose beyond its primary classification."
},
"hazSubRisk2": {
"type": "string",
"maxLength": 3,
"description": "The second subsidiary risk (also known as a 'secondary hazard' or 'sub-risk') in the context of dangerous goods refers to additional hazards a substance might pose beyond its primary classification."
},
"hazSubRisk3": {
"type": "string",
"maxLength": 3,
"description": "The third subsidiary risk (also known as a 'secondary hazard' or 'sub-risk') in the context of dangerous goods refers to additional hazards a substance might pose beyond its primary classification."
},
"hazTechnicalName": {
"type": "string",
"maxLength": 125,
"description": "The scientifically recognized chemical name of the substance."
},
"hazTitleAuthOfficial": {
"type": "string",
"maxLength": 35,
"description": "An authorized official responsible for matters concerning hazardous materials."
},
"hazZone": {
"type": "string",
"maxLength": 1,
"enum": [
"A",
"B",
"C",
"D"
],
"description": "The level of risk is represented by classifying the hazardous area as 0, 1, or 2"
},
"hazPassengerCargoNotification": {
"type": "string",
"maxLength": 1,
"description": "The indication if passengers need to be notified of hazardous materials onboard a flight."
}
},
"required": [
"quantity"
],
"additionalProperties": false
}
}
},
"required": [
"weight",
"length",
"width",
"height",
"FOBPurchaseOrders"
],
"additionalProperties": false
}
}
},
"required": [
"CAGECode",
"FOBCode",
"pickupDate",
"shippingLocationID",
"containers"
],
"additionalProperties": false
},
"FOBCommonErrorResponse": {
"title": "FOBCommonErrorResponse",
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"logID": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"additionalProperties": false
},
"FOBShipmentResponse": {
"title": "FOBShipmentResponse",
"type": "object",
"properties": {
"TCN": {
"type": "string",
"minLength": 17,
"maxLength": 17
},
"messages": {
"title": "FOBShipmentResponseMessages",
"type": "object",
"properties": {
"message": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200
}
}
},
"additionalProperties": false
},
"requestNumber": {
"type": "string",
"minLength": 10,
"maxLength": 10
}
},
"required": [
"messages"
],
"additionalProperties": false
},
"FOBRequestNumber": {
"minLength": 10,
"maxLength": 10,
"type": "string",
"description": "Unique identifer returned from a successful Shipment Request.",
"example": "4000005153"
},
"CAGECode": {
"type": "string",
"minLength": 5,
"maxLength": 5,
"description": "A unique five-character alphanumeric identifier assigned to a company.",
"example": "BADRI"
},
"FOBStatusResponse": {
"title": "FOBStatusResponse",
"type": "object",
"properties": {
"requestNumber": {
"type": "string",
"minLength": 10,
"maxLength": 10,
"description": "Unique identifer returned from a successful Shipment Request."
},
"message": {
"type": "object",
"properties": {
"messageCode": {
"type": "string",
"minLength": 2,
"maxLength": 2,
"description": "A numeric value for the status of the shipment request."
},
"messageValue": {
"type": "string",
"maxLength": 40,
"description": "A short message about the status of the shipment request."
},
"messageStatus": {
"type": "string",
"maxLength": 200,
"description": "A detailed message about the status of the shipment request."
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"FOBAddressResponse": {
"title": "FOBAddressResponse",
"type": "object",
"properties": {
"requestNumber": {
"minLength": 10,
"maxLength": 10,
"type": "string",
"description": "Unique identifer returned from a successful Shipment Request."
},
"SCAC": {
"minLength": 4,
"maxLength": 4,
"type": "string",
"description": "A code that is used to identify transportation companies."
},
"trackingNumber": {
"type": "array",
"minItems": 1,
"items": {
"type": "string",
"maxLength": 22
},
"description": "The tracking number(s) assigned to the shipment."
},
"shipToDODAAC": {
"minLength": 6,
"maxLength": 6,
"type": "string",
"description": "The 6 digit DODAAC for the Ship To location."
},
"issuePriorityGroup ": {
"minLength": 1,
"maxLength": 1,
"type": "string",
"description": "Issue Priority Group"
},
"shipToAddressLine1": {
"maxLength": 35,
"type": "string",
"description": "The first line of the Ship To location's address."
},
"shipToAddressLine2": {
"maxLength": 35,
"type": "string",
"description": "The second line of the Ship To location's address."
},
"shipToAddressLine3": {
"maxLength": 35,
"type": "string",
"description": "The third line of the Ship To location's address."
},
"shipToAddressLine4": {
"maxLength": 35,
"type": "string",
"description": "The fourth line of the Ship To location's address."
},
"shipToAddressLine5": {
"maxLength": 35,
"type": "string",
"description": "The fifth line of the Ship To location's address."
},
"ultimateConsigneeDODAAC": {
"minLength": 6,
"maxLength": 6,
"type": "string",
"description": "The 6 digit DODAAC for the Ultimate Consignee location."
},
"ultimateConsigneeAddressLine1": {
"maxLength": 35,
"type": "string",
"description": "The first line of the Ultimate Consignee location's address."
},
"ultimateConsigneeAddressLine2": {
"maxLength": 35,
"type": "string",
"description": "The second line of the Ultimate Consignee location's address."
},
"ultimateConsigneeAddressLine3": {
"maxLength": 35,
"type": "string",
"description": "The third line of the Ultimate Consignee location's address."
},
"ultimateConsigneeAddressLine4": {
"maxLength": 35,
"type": "string",
"description": "The fourth line of the Ultimate Consignee location's address."
},
"ultimateConsigneeAddressLine5": {
"maxLength": 35,
"type": "string",
"description": "The fifth line of the Ultimate Consignee location's address."
},
"message": {
"maxLength": 200,
"type": "string",
"description": "Address Response Text Message"
}
},
"additionalProperties": false
},
"FOBDocumentRequest": {
"title": "FOBAddressRequest",
"description": "Please note that requestNumber, CAGECode and documentType are get Parameters",
"type": "object",
"properties": {
"requestNumber": {
"$ref": "#/components/schemas/FOBRequestNumber"
},
"CAGECode": {
"$ref": "#/components/schemas/CAGECode"
},
"documentType": {
"type": "string",
"minLength": 3,
"maxLength": 3,
"enum": [
"ALL",
"CBL",
"GBL",
"INV",
"MSL",
"PKL",
"SNT",
"SPL",
"TCM"
],
"description": "A unique 3-character alphanumeric identifier for type of document requested. ALL - All documents, CBL - Commercial Bill of Lading, GBL - Government Bill of Lading, TCM - Transportation Control Movement Document, SNT - Signature Tally, SPL - Small Parcel Label, MSL - Military Shipping Label, PKL - Packing List"
}
},
"additionalProperties": false,
"required": [
"requestNumber",
"CAGECode",
"documentType"
]
},
"FOBDocumentResponse": {
"title": "FOBDocumentResponse",
"type": "object",
"description": "A successful response mainly contains a binary attachment object. Otherwise, a json error response message",
"properties": {
"mainDocument": {
"type": "object",
"properties": {
"message": {
"maxLength": 200,
"type": "string"
}
}
},
"fileAttachment": {
"format": "binary",
"type": "string",
"description": "For the given request number, the attachment can be either a zip file containing ALL documents or a specific document depending on what is requested."
}
},
"additionalProperties": false
},
"FOBCloseoutRequest": {
"title": "FOBCloseoutRequest",
"description": "Please note that requestNumber and CAGECode are get Parameters",
"type": "object",
"properties": {
"requestNumber": {
"type": "string",
"minLength": 10,
"maxLength": 10,
"description": "Unique identifer returned from a successful Shipment Request."
},
"CAGECode": {
"type": "string",
"minLength": 5,
"maxLength": 5,
"description": "A unique five-character alphanumeric identifier assigned to a company."
},
"vendorReferenceNumber": {
"type": "string",
"maxLength": 30,
"description": "A vendor supplied reference number."
},
"SCAC": {
"type": "string",
"maxLength": 4,
"description": "A code that is used to identify transportation companies."
},
"trackingNumber": {
"type": "string",
"maxLength": 30,
"description": "The tracking number assigned to the shipment."
}
},
"required": [
"requestNumber",
"CAGECode"
],
"additionalProperties": false,
"example": {
"requestNumber": "4000005006",
"CAGECode": "79343",
"vendorReferenceNumber": "TEST",
"SCAC": "UPSN",
"trackingNumber": "123456"
}
},
"FOBCloseoutResponse": {
"title": "FOBCloseoutResponse",
"type": "object",
"properties": {
"message": {
"type": "string",
"maxLength": 200
}
},
"required": [
"message"
],
"additionalProperties": false
}
}
}
}