Bill Of Lading

The R+L Carrier's Bill of Lading API allows you to instantly create, print, or edit Bill of Ladings. Using this API will help you save time and costly errors.
DigitalCouncilBOL
Request Parameters
Name Type Cardinality Required Description
bol object One Required
Properties
requestedPickupDate string One Required example: 2022-11-20T00:00:00.000
The intended Ship Date. NOTE this does not serve as a Pickup Request

Valid Formats:

YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
function string One Optional example: Create
The intent for the submitted request.

Valid Values:

Create - Used for initial creation
isTest string One Optional example: true
Indicates whether or not the submitted request is intended to be a test or not.
requestorRole string One Optional example: Third Party
Identifies the party making the request.
specialInstructions string One Optional example: Gate code 123 to enter complex
Special delivery instructions that need to be followed for the shipment's delivery.
version string One Optional example: 2.1.0
Indicates which minor version of the Digital LTL Council Bill of Lading spec you are consuming

Valid values: 2.0.0, 2.0.1, 2.1.0
Properties
PickupInformation object One Required
Properties
PickupDate string One Required The date of the pickup. Date cannot be in the past. We do not pickup on weekends or company holidays. We do not pickup Freezable shipments on Friday. Format: MM/dd/yyyy.
ReadyTime string One Required Time of day the pickup will be ready. Format: hh:mm tt
CloseTime string One Required The time of day the shipper business closes. Format: hh:mm tt
AdditionalInstructions string Zero or One Optional Additional Instructions
LoadAttributes array Zero or One Optional Load attributes for the pickup
Properties
LoadAttribute string Optional Accepted values: Food, Freezable, Hazmat, Poison
SendEmailConfirmation boolean One Optional Indicates whether you would like to receive the pickup confirmation email
images object One Optional
Properties
includeBol boolean One Optional example: true
Indicates whether or not you want an image of the populated BOL returned in the response.

Default is false.
includeShippingLabels boolean One Optional example: true
Indicates whether or not you want image(s) of the shipping labels returned in the response.

Default is false.
shippingLabels object Zero or One Optional
Properties
format string One Optional example: Avery
Specifies the printer format type for the labels. Required when images.includeShippingLabels is true.
quantity integer One Optional example: 5
Specifies the quantity of pages desired.

Required when images.includeShippingLabels is true.
position integer One Optional example: 2
Specifies the starting position for the shipping labels.

Required when images.shippingLabel is Avery.

Valid Values:

1 - 10
email object Zero or One Optional
Properties
addresses array Zero or More Optional example: List [ "dispatch@shipper.com" ]
Provide one or more email addresses to receive the bol and/or shipping labels PDF
includeBOL boolean One Optional example: true
Used to request the bill of lading PDF to be sent to one or more email addresses
includeShippingLabels boolean One Optional example: true
Used to request the shipping labels PDF to be sent to one or more email addresses
notifications array Zero or More Optional include if you want notifications of shipment movements by text message or email
Properties
email string One Optional example: dispatch@consignee.com
Email address of contact for updates about shipment movements
phoneNumber string One Optional example: 8881234567
Phone number of contact for updates about shipment movements
referenceNumbers object Zero or One Optional
Properties
pro string One Optional example: 123456-7
Shipper's pre-assigned PRO number for the requested carrier. If one was not provided in the request, one will be auto assigned by the carrier. The PRO number value should include the check digit when applicable.
quoteId string One Optional example: E556724
Quote (estimate) number provided by the carrier after submitting a rate quote request.
shipmentId string One Optional example: SID9743985
Shipment Id (SID) number for the shipment.
masterBol string One Optional example: MBL98472587
Master Bill of Lading number for the shipment.
bol array One Optional example: List [ "BL19498432", "BL99744565" ]
po array Zero or More Optional
Properties
number string One Optional example: 554238
The Purchase Order number.
pieces integer One Optional example: 5
Total pieces associated with the Purchase Order
weight integer One Optional example: 150
Total weight associated with the Purchase Order
palletized boolean One Optional example: true
Indicates whether or not the pieces associated with the purchase order are on a pallet/slip/skid or not.
additionalShipperInfo string One Optional example: Freight must always stay upright
Additional information from shipper per line item
additionalReferences array Zero or More Optional
Properties
name string One Optional example: Customer Reference Id
Indicates the name of the reference number being provided.
value string One Optional example: CRID3452-01
Additional reference number that correlates to the additional reference name.
payment object One Optional
Properties
terms string One Optional example: Prepaid
Freight Billing Terms for the shipment
commodities object One Required
Properties
handlingUnits array One Required
Properties
count integer One Optional example: 2
Number of handling units being described
dimensionsUnit string One Optional example: Inches
The unit of measurement for dimensions. Defaults to Inches (Imperial) if not passed.

Valid Values: Inches or Centimeters
height integer One Optional example: 48
The height of the handling units being described.
lineItems array One or More Required
Properties
classification string One Optional example: 55
Classification of the line item being described.
description string One Optional example: Small frameless mirrors
Description of the freight being described.
hazardous boolean One Required example: true
Identifies whether or not the freight being described contains hazardous materials.
hazardousDescription string One Optional example: UN 1090, Acetone, 3, PG II
Conditionally required when 'hazardous' is 'true'. Provides a detailed description of the hazardous item.
hazardousDetails object Zero or One Optional
Properties
Class string One Optional example: 3
Class that the hazardous material is catogorized by.
contractNumber string One Optional example: 54321
The contract number with the hazardous materials contact
packingGroup string One Optional example: 2
Hazmat Packing Group number. Not all hazmat items have a packing group
propertName string One Optional example: Anhydrous ammonia
Proper shipping name for the hazardous material.

From DOT regulations 172.101
technicalName string One Optional example: NH3
Technical name for the hazardous material. Not all hazardous items will have a technical name. From DOT regulations 172.101
unnaNumber string One Optional example: UN1234
Proper Identification Number (UN or NA) corresponding to the Proper Shipping Name
weight integer One Optional example: 45
Total weight of hazardous material coveraged by one description.
nmfc string One Optional example: 86900
NMFC code of the freight being described.
nmfcSub string One Optional example: 3
The Sub value for the NMFC of the freight being described.
packagingType string One Required example: BOX
Packaging type for the individual pieces of the line item being described.
pieces integer One Required example: 3
Number of individual pieces for the line item being described.
weight integer One Required example: 1500
Total weight for the specified lineItem.
weightUnit string One Optional example: Pounds
The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed.

Valid Values: Pounds or Kilograms
length integer One Optional example: 48
The length of the handling units being described.
id string One Optional
stackable string One Optional example: false
Identifies whether or not the freight being described can be stacked on one another.

Default is false.
tareWeight integer One Optional example: 5
Weight of the skids/pallets/slips used in the shipment.
type string One Optional example: SKD
Type of the handling units being described
weight integer One Optional example: 1500
Total weight for the specified handling units.
weightUnit string One Optional example: Pounds
The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed.

Valid Values: Pounds or Kilograms
width integer One Optional example: 48
The width of the handling units being described.
lineItemLayout string One Optional example: Nested
Valid values: Nested or Stacked

Nested: Indicates if the Handling Unit/Line Item relationship is known. If this value is used, each Line Item associated to a Handling Unit is conditionally required to be passed within that Handling Unit's object.

Stacked: Indicates if the Handling Unit/Line Item relationship is not known. If this value is used, Line Items may passed within any Handling Unit object.
shipmentTotals object One Optional
Properties
cube integer One Optional example: 128
Cubic volume of the entire shipment (total length X total width X total height).
cubeDimensionsUnit string One Optional example: Feet
The unit of measurement for cubic dimensions. Defaults to Feet (Imperial) if not passed.

Valid Values: Feet or Meters
currency string One Optional example: USD
Optional attribute to indicate currency of declaredValue. Defaults to USD.
declaredValue integer One Optional example: 7
Total monetary value of the shipment in USD (sometimes needed for cross-border moves).
dimensionsUnit string One Optional example: Inches
The unit of measurement for dimensions. Defaults to Inches (Imperial) if not passed.

Valid Values: Inches or Centimeters
grossWeight integer One Optional example: 2000
Total weight of the entire shipment, including handling units (tare weight).
handlingUnits integer One Optional example: 2
Handling unit count for the entire shipment
linearLength integer One Optional example: 96
Linear length for the entire shipment
netWeight integer One Optional example: 1993
Total weight of the entire shipment, not including handling units (tare weight).
weightUnit string One Optional example: Pounds
The unit of measurement for weight. Defaults to Pounds (Imperial) if not passed.

Valid Values: Pounds or Kilograms
accessorials object One Optional
Properties
codes array Zero or More Optional example: List [ "IDL", "LFTP" ]
An array to hold the list of services requested for the shipment
hazardousDetails object Zero or One Optional Required if accessorial codes list contains HAZ and/or if any commodity line item's hazardous flag is set to true.
Properties
emergencyContact object Zero or More Optional
Properties
name string One Optional example: Manny Delgato
Full name of who should be contacted in the case of a hazardous materials-related issue.
phone string One Optional example: 7775558899
Phone number of who should be contacted in the case of a hazardous materials-related issue.

Valid Formats:

########## (10 digits - Area code + phone)
cod object Zero or One Optional Required when accessorial code COD is present in the accessorial.codes list.
Properties
amount string One Optional example: 56.71
Amount to be received for the COD.

Valid Formats:

##.## (2 decimal places only)
terms string One Optional string
example: Collect
Payment terms associated with the COD.

Valid Values:

Prepaid
Collect
customerCheckAcceptable boolean One Optional example: true
Indicates whether or not a customer check or cash is acceptable.
remitTo object Zero or One Optional
Properties
name string One Optional example: Dog Beds by Stella
Name of the remit to company.
address1 string One Optional example: 121 S. Cliffwood Ave.
Primary Address line of the remit to company.
address2 string One Optional example: Suite 55
Secondary Address of the remit to company.
city string One Optional example: Los Angeles
City Name of the remit to company.
stateProvince string One Optional example: CA
Two letter state/province code of the remit to company.
postalCode string One Optional example: 90001
The 5-digit + 4 or 5-digit for the United States, 5-digit for Mexico, or 6-character for Canada, postal code for the remit to company location.

Valid formats:

12345-1234 (5 digits + 4 - USA)
12345 (5 digits - USA/MEX)
A1A1A1 (6 characters - CAN)
A1A1A (5 characters - CAN)
country string One Optional example: USA
Three letter country code of the remit to company.
InformationMessage string One Optional
currency string One Optional example: USD
Optional attribute to indicate currency of COD. Defaults to USD.
sortAndSegregateDetails object One Optional Required when accessorial code SRT is present in the accessorial.codes list.
Properties
pieces integer One Optional example: 25
Number of pieces in a shipment to be sorted/segregated
fullValueCoverageDetails object One Optional Required when accessorial code FVC is present in the accessorial.codes list.
Properties
monetaryValue string One Optional example: 100.00
Value of the cargo.

Valid Formats:

##.## (2 decimal places only)
currency string One Optional example: USD
Optional attribute to indicate currency of monetaryValue. Defaults to USD.
markDetails object One Optional Required when accessorial code MARK is present in the accessorial.codes list.
Properties
pieces integer One Optional example: 25
Number of pieces in a shipment requiring marking or tagging
limitedAccessType object One Optional
Optional attribute to indicate the limited access type when accessorial code LTDAP or LTDAD is present in the accessorial.codes list.
Properties
origin string One Optional example: Church
Optional attribute to indicate the limited access type when accessorial code LTDAP is present in the accessorial.codes list.
destination string One Optional example: Secure
Optional attribute to indicate the limited access type when accessorial code LTDAD is present in the accessorial.codes list.
timeCriticalDetails object One Optional
Properties
type string One Optional example: Delivery Window
Type of delivery required for the requested Time Critical Service.

Required when accessorials.code list include TCS.
date object One Optional
Properties
start string One Optional example: 2021-05-20T00:00:00.000
The date (with or without time) the shipment is requested to be delivered.

Required when timeCriticalDetails.type is populated with any valid value.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
end string One Optional example: 2021-05-22T00:00:00.000
The end date (with or without time) of the requested delivery window.

Required when the timeCriticalDetails.type is Delivery Window.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
appointmentDetails object One Optional
Properties
pickup object One Optional
Properties
start string One Optional example: 2021-05-20T00:00:00.000
Starting appointment date (with or without time) the shipment is requested to be picked up.

Required when accessorials.code list include APTP.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
end string One Optional example: 2021-05-22T00:00:00.000
Ending appointment date (with or without time) the shipment is requested to be picked up.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
delivery object One Optional
Properties
start string One Optional example: 2021-05-20T00:00:00.000
Starting appointment date (with or without time) the shipment is requested to be delivered.

Required when accessorials.code list include APTD.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
end string One Optional example: 2021-05-22T00:00:00.000
Ending appointment date (with or without time) the shipment is requested to be delivered.

Valid Formats: * YYYY-MM-DDTHH:mm:ss.sss (ISO 8601)
origin object One Required
Properties
account string One Optional example: 12345
Company's account number/id for the origin.
locationId string One Optional example: 808
Company's location id for the origin
name string One Required example: Closets Closets Closets
Company name associated with the origin location.
address1 string One Required example: 12 S. Closets Place
Primary Address line for the origin location
address2 string One Optional example: ste 3
Secondary Address line for the origin location
city string One Required example: Los Angeles
City Name for the origin location
stateProvince string One Required example: CA
Two letter state/province code for the origin location.
postalCode string One Required example: 90001
The 5-digit + 4 or 5-digit for the United States, 5-digit for Mexico, or 6-character for Canada, postal code for the origin location.

Valid formats:

12345-1234 (5 digits + 4 - USA)
12345 (5 digits - USA/MEX)
A1A1A1 (6 characters - CAN)
A1A1A (5 characters - CAN)
country string One Required example: USA
Three letter country code for the origin location.
contact object One Optional Object containing contact details for the shipper.
Properties
phone string One Optional example: 5552226666
Ten digit phone number, without country code and/or dashes, for the origin location's contact person.

Valid Formats: * ########## (10 digits - Area code + phone)
phoneExt string One Optional example: 99
Phone extensionfor the origin location's contact person.
name string One Optional example: Jay Pritchett
Name of the origin location's contact person.
email string One Optional example: jpritchett@closets.com
Email address of the origin location's contact person.
InformationMessage string One Optional
destination object One Required
Properties
account string One Optional example: 12345
Company's account number/id for the destination.
locationId string One Optional example: 808
Company's location id for the destination
name string One Required example: Closets Closets Closets
Company name associated with the destination location.
address1 string One Required example: 12 S. Closets Place
Primary Address line for the destination location
address2 string One Optional example: ste 3
Secondary Address line for the destination location
city string One Required example: Los Angeles
City Name for the destination location
stateProvince string One Required example: CA
Two letter state/province code for the destination location.
postalCode string One Required example: 90001
The 5-digit + 4 or 5-digit for the United States, 5-digit for Mexico, or 6-character for Canada, postal code for the destination location.

Valid formats:

12345-1234 (5 digits + 4 - USA)
12345 (5 digits - USA/MEX)
A1A1A1 (6 characters - CAN)
A1A1A (5 characters - CAN)
country string One Required example: USA
Three letter country code for the destination location.
contact object One Optional Object containing contact details for the destination.
Properties
phone string One Optional example: 5552226666
Ten digit phone number, without country code and/or dashes, for the destination location's contact person.

Valid Formats: * ########## (10 digits - Area code + phone)
phoneExt string One Optional example: 99
Phone extensionfor the destination location's contact person.
name string One Optional example: Jay Pritchett
Name of the destination location's contact person.
email string One Optional example: jpritchett@closets.com
Email address of the destination location's contact person.
InformationMessage string One
billTo object Zero or One Optional
Properties
account string One Optional example: 12345
Company's account number/id for the billTo.
name string One Required example: Closets Closets Closets
Company name associated with the billTo location.
address1 string One Required example: 12 S. Closets Place
Primary Address line for the billTo location
address2 string One Optional example: ste 3
Secondary Address line for the billTo location
city string One Required example: Los Angeles
City Name for the billTo location
locationId string One Optional example: 808
Company's location id for the billTo.
stateProvince string One Required example: CA
Two letter state/province code for the billTo location.
postalCode string One Required example: 90001
The 5-digit + 4 or 5-digit for the United States, 5-digit for Mexico, or 6-character for Canada, postal code for the billTo location.

Valid formats:

12345-1234 (5 digits + 4 - USA)
12345 (5 digits - USA/MEX)
A1A1A1 (6 characters - CAN)
A1A1A (5 characters - CAN)
country string One Required example: USA
Three letter country code for the billTo location.
contact object One Optional Object containing contact details for the billTo.
Properties
phone string One Optional example: 5552226666
Ten digit phone number, without country code and/or dashes, for the billTo location's contact person.

Valid Formats: * ########## (10 digits - Area code + phone)
phoneExt string One Optional example: 99
Phone extensionfor the billTo location's contact person.
name string One Optional example: Jay Pritchett
Name of the billTo location's contact person.
email string One Optional example: jpritchett@closets.com
Email address of the billTo location's contact person.
InformationMessage string One Optional
customsBroker object Zero or One Optional
Properties
name string One Required example: Closets Closets Closets
Company name associated with the customsBroker location.
address1 string One Required example: 12 S. Closets Place
Primary Address line for the customsBroker location
address2 string One Optional example: ste 3
Secondary Address line for the customsBroker location
city string One Required example: Los Angeles
City Name for the customsBroker location
stateProvince string One Required example: CA
Two letter state/province code for the customsBroker location.
postalCode string One Required example: 90001
The 5-digit + 4 or 5-digit for the United States, 5-digit for Mexico, or 6-character for Canada, postal code for the customsBroker location.

Valid formats:

12345-1234 (5 digits + 4 - USA)
12345 (5 digits - USA/MEX)
A1A1A1 (6 characters - CAN)
A1A1A (5 characters - CAN)
country string One Required example: USA
Three letter country code for the customsBroker location.
contact object One Optional Object containing contact details for the customsBroker.
Properties
phone string One Optional example: 5552226666
Ten digit phone number, without country code and/or dashes, for the customsBroker location's contact person.

Valid Formats: * ########## (10 digits - Area code + phone)
phoneExt string One Optional example: 99
Phone extensionfor the customsBroker location's contact person.
name string One Optional example: Jay Pritchett
Name of the customsBroker location's contact person.
email string One Optional example: jpritchett@closets.com
Email address of the customsBroker location's contact person.
InformationMessage string One Optional
type string One Optional example: Import
Used to identify a customs broker that is involved in a cross-border freight move.

Valid Values: Import or Export

Import: customs broker handling the destination-side of the cross-border freight move
Export: customs broker handling the origin-side of the cross-border freight move
type string Zero or One Optional
Response Parameters
Name Type Cardinality Description
images object One
Properties
bol string One example: JVBERi0xLjcKCjQgMCBvYmoKPDwKL0JpdHNQZXJDb21wb25lbnQgOAovQ29sb3JTcGFjZSAvRGV2a......
Base 64 encoded PDF of the populated Bill Of Lading. Any bar code within the image(s) should include the check digit when applicable.
shippingLabels string One example: JVBERi0xLjcKCjQgMCBvYmoKPDwKL0JpdHNQZXJDb21wb25lbnQgOAovQ29sb3JTcGFjZSAvRGV2a......
Base 64 encoded PDF of the populated shipping Labels. Any bar code within the image(s) should include the check digit when applicable.
referenceNumbers object One
Properties
pro string One example: PRO1234
Shipper's pre-assigned PRO number for the requested carrier. If one was not provided in the request, one will be auto assigned by the carrier.
shipmentConfirmationNumber string One example: SCN1234
Number provided by the carrier to acknowledge they accepted the BOL.
messageStatus object One
Properties
code string One example: 10000000
Indicates response detail code.
status string One example: PASS
Indicates the status of the request.

PASS - Request is successful with no exceptions.
FAIL - Request is unsuccessful due to some exception.
WARNING - Request is successful with some exception.
message string One example: Transaction was successful.
Provides information pertaining to the response code.
resolution string One example:
Provides guidance pertaining to the response code.
info array Zero or More
Properties
type string One
message string One
traceId string
Create Bill Of Lading
POST /BillOfLading
Request Parameters
Name Type Cardinality Required Description
BillOfLading object One Required Bill of lading object
Properties
BolDate string Zero or One Optional We will default to today's date if not passed in. Cannot be in the past. Format: MM/dd/yyyy.
Shipper object One Required Shipper Object
Properties
CompanyName string One Required Shipper company name
AddressLine1 string One Required Shipper Address line 1
AddressLine2 string Zero or One Optional Shipper Address line 2
City string One Required Shipper City
StateOrProvince string One Required Shipper state. Optional for countries without states.
ZipOrPostalCode string One Required Shipper Zip Code. Optional for countries without zipcodes.
CountryCode string One Required Shipper ISO3 Country Code.
PhoneNumber string One Required Shipper Phone Number.
PhoneExtension string Zero or One Optional Shipper Phone Extension.
EmailAddress string Zero or One Optional Shipper Email Address
Consignee object One Required Consignee Object
Properties
CompanyName string One Required Consignee company name
AddressLine1 string One Required Consignee Address Line 1
AddressLine2 string Zero or One Optional Consignee Address Line 2
City string One Required Consignee City
StateOrProvince string One Required Consignee State. Optional for countries that do not have states.
ZipOrPostalCode string One Required Consignee Zip Code . Optional for countries that do not have zip codes.
CountryCode string Consignee ISO3 Country Code
Attention string Zero or One Optional Consignee Attention
PhoneNumber string Zero or One Optional Consignee Phone Number
PhoneExtension string Zero or One Optional Consignee Phone Extension
EmailAddress string Zero or One Optional Consignee Email Address
BillTo object Zero or One Optional Bill To Object. (Who the shipment should be billed to).
Properties
CompanyName string One Required BillTo Company Name
AddressLine1 string One Required BillTo Address Line 1
AddressLine2 string Zero or One Optional BillTo Address Line 2
City string One Required BillTo City
StateOrProvince string One Required BillTo State. Optional for Countries without states.
ZipOrPostalCode string One Required BillTo Zip Code. Optional for countries without zip codes.
CountryCode string One Required BillTo ISO3 Country Code
PhoneNumber string Zero or One Optional BillTo Phone Number
PhoneExtension string Zero or One Optional BillTo Phone Extension
EmailAddress string Zero or One Optional BillTo Email Address
Broker object Zero or One Optional Broker Object
Properties
CompanyName string One Required Broker Company Name
AddressLine1 string One Required Broker Address Line 1
AddressLine2 string Zero or One Optional Broker Address Line 2
City string One Required Broker City
StateOrProvince string One Required Broker State. Optional for countries without states.
ZipOrPostalCode string One Required Broker Zip Code. Optional for countries without zip codes
CountryCode string One Required Broker ISO3 Country Code
PhoneNumber string Zero or One Optional Broker Phone Number
PhoneExtension string Zero or One Optional Broker Phone Extension
EmailAddress string Zero or One Optional Broker Email Address
RemitCOD object Zero or One Optional Remit COD object
Properties
CompanyName string One Required Remit COD Company Name
AddressLine1 string One Required Remit COD Address Line 1
AddressLine2 string Zero or One Optional Remit COD Address Line 2
City string One Required Remit COD City
StateOrProvince string One Required Remit COD State. Optional for countries without states.
ZipOrPostalCode string One Required Remit COD Zip Code. Optional for countries without zip codes.
CountryCode string One Required Remit COD ISO3 Country Code.
PhoneNumber string Zero or One Optional Remit COD Phone Number
PhoneExtension string Zero or One Optional Remit COD Phone Extension
EmailAddress string Zero or One Optional Remit COD Email Address
CODAmount decimal One Required Collect On Delivery Amount.
CheckType string One Required Company or Certified.
FeeType string One Required Prepaid or Collect.
AdditionalServices array Zero or One Optional List of additional services
Properties
AdditionalService string Zero or More Optional Valid Values: OriginLiftgate, DestinationLiftgate, InsidePickup, InsideDelivery, LimitedAccessPickup, LimitedAccessDelivery, Freezable, DeliveryAppointment
Items array One Required List of items
Properties
Item object One or More Required Item Object
Properties
IsHazmat boolean Zero or One Optional Indicates if an item is classified as hazardous.
Will default to false if not passed in.
Pieces integer One Required
PackageType string Zero or One Optional List of accepted values:
BAG, BAR, BIN, BNDL, BOX, BSKT, BULK, CARBOY, COIL, CPT, CRT, CTN, CYL, DAC, DRM, GAY, IBC, JER, LSE, MLBG, NSTD, PAIL, PIG, PLT, RACK, REEL, ROLL, SKD, STK, TL, TANK, TOTE, UNIT
NMFCItemNumber string Zero or One Optional NMFC Item Number
NMFCSubNumber string Zero or One Optional Required if NMFCItemNumber is passed.
Class string One Required Accepted class values:
50.0
55.0
60.0
65.0
70.0
77.5
85.0
92.5
100.0
110.0
125.0
150.0
175.0
200.0
250.0
300.0
400.0
500.0
Weight integer One Required Item Weight
Description string One Required Required if IsHazmat is TRUE.
HazmatInformation object Zero or One Optional Required if any items are HAZMAT
Properties
EmergencyPhoneNumber string One Required Hazmat Emergency Phone Number
EmergencyPhoneExtension string Zero or One Optional Hazmat Phone Extension
ContractNumber string Zero or One Optional Hazmat Contract Number
ContractHolder string Zero or One Optional Offerer / Contract Holder
DeclaredValue object Zero or One Optional By adding a declared value, the shipment will be subject to an additional charge if it exceeds our limitations of liability which is determined by freight class or NMFC item number. If you have questions, please call 800-535-1983
Properties
Amount decimal One Required
Per string One Required
SpecialInstructions string Zero or One Optional Special Instructions
ReferenceNumbers object Zero or One Optional Reference number object
Properties
ShipperNumber string Zero or One Optional Shipper Pickup / Reference Number
RateQuoteNumber string Zero or One Optional R+L Rate Quote Number
PONumber string Zero or One Optional Purchase Order Number
FreightChargePaymentMethod string One Required Prepaid or Collect.
If the BillTo object is not supplied: if Prepaid, we will bill the Shipper, if Collect, we will bill the Consignee.
ServiceLevel string Zero or One Optional Will default to standard service if not passed. Valid values: Standard, Guaranteed, GuaranteedByNoon, GuaranteedHourlyWindow, Expedited
HourlyWindow object Zero or One Optional Required if ServiceLevel is GuaranteedHourlyWindow.
Properties
Start string One Required Hourly window start time. Format: hh:mm tt
End string One Required Hourly window end time. Format: hh:mm tt
ExpeditedQuoteNumber string Zero or One Optional Required if ServiceLevel is Expedited.
PickupRequest object Zero or One Optional Fill this out if you would like to schedule a Pickup at the same time as creating the BOL.
Properties
PickupInformation object One Required
Properties
PickupDate string One Required The date of the pickup. Date cannot be in the past. We do not pickup on weekends or company holidays. We do not pickup Freezable shipments on Friday. Format: MM/dd/yyyy.
ReadyTime string One Required Time of day the pickup will be ready. Format: hh:mm tt
CloseTime string One Required The time of day the shipper business closes. Format: hh:mm tt
AdditionalInstructions string Zero or One Optional Additional Instructions
LoadAttributes array Zero or One Optional Load attributes for the pickup
Properties
LoadAttribute string Optional Accepted values: Food, Freezable, Hazmat, Poison
SendEmailConfirmation boolean One Optional Indicates whether you would like to receive the pickup confirmation email
GenerateUniversalPro boolean Zero or One Optional Pass in true to get a universal pro that will not be re-stickered by the driver on pickup (this requires you to sticker the freight). Pass in false to receive a web pro that the driver will sticker with a pro. Note: Web Pros will still work for shipment tracking and document retrieval.
Response Parameters
Name Type Cardinality Description
ProNumber string One Either the web pro or a pre-assigned pro for the BOL. Web Pros start with 'W'.
PickupRequestNumber string Zero or One Will be present if pickup request is scheduled with the creation of the BOL.
Example Request

require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{baseurl}/BillOfLading');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'apiKey' => 'Your API Key',
'Content-Type' => 'application/json'
));
$request->setBody('{
\n "BillOfLading": {
\n "BOLDate": "08/17/2020",
\n "Shipper": {
\n "CompanyName": "Shipper Test",
\n "AddressLine1": "123 ship test",
\n "PhoneNumber": "6145558888",
\n "City": "Ocala",
\n "StateOrProvince": "FL",
\n "ZipOrPostalCode": "34471",
\n "CountryCode": "USA"
\n },
\n "Consignee": {
\n "CompanyName": "Consignee Test",
\n "AddressLine1": "123 consignee test",
\n "City": "Wilmington",
\n "StateOrProvince": "OH",
\n "ZipOrPostalCode": "45177",
\n "CountryCode": "USA"
\n },
\n "Items": [
\n {
\n "Class": "70",
\n "Pieces": 1,
\n "Weight": 110,
\n "PackageType": "BAG",
\n "Description": "Test description"
\n }
\n ],
\n "SpecialInstructions": "Test special instructions",
\n "FreightChargePaymentMethod": "Prepaid",
\n "ServiceLevel": "Standard"
\n },
\n "GenerateUniversalPro": true
\n}');
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
using CallAPI.DataContracts.BillOfLading;
using CallAPI.DataContracts.BillOfLading.Request;
using CallAPI.DataContracts.BillOfLading.Response;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;

namespace CallAPI
{
class BillOfLadingSample
{
string apiKey = "Your API Key";

public BolResponse CreateBOL()
{
var request = PopulateBOLData();

var response = new BolResponse();

var url = "{baseurl}/BillOfLading";

using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("apiKey", apiKey);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var apiResponse = client.PostAsJsonAsync(url, request).Result;

response = apiResponse.Content.ReadAsAsync().Result;
}

return response;
}

private CreateBolRequest PopulateBOLData()
{
var shipper = new DataContracts.Party()
{
CompanyName = "Shipper Test",
AddressLine1 = "123 ship test",
ZipOrPostalCode = "34471",
City = "Ocala",
StateOrProvince = "FL",
CountryCode = "USA",
PhoneNumber = "6145558888"
};

var consignee = new Consignee()
{
CompanyName = "Consignee Test",
AddressLine1 = "123 consignee test",
ZipOrPostalCode = "45177",
City = "Wilmington",
StateOrProvince = "OH",
CountryCode = "USA"
};

var item = new Item()
{
Class = "70",
Pieces = 1,
Weight = 110,
PackageType = "BAG",
Description = "Test Description"
};

var bolInfo = new BillOfLading()
{
BOLDate = DateTime.Now.ToShortDateString(),
Shipper = shipper,
Consignee = consignee,
Items = new List() { item },
SpecialInstructions = "Test Special Instructions",
FreightChargePaymentMethod = "Prepaid",
ServiceLevel = "Standard"
};

var bolData = new CreateBolRequest()
{
BillOfLading = bolInfo,
PickupRequest = null,
GenerateUniversalPro = true
};

return bolData;
}
}
}
package Samples;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;

import com.fasterxml.jackson.databind.ObjectMapper;

import DataContracts.Party;
import DataContracts.BillOfLading.BillOfLading;
import DataContracts.BillOfLading.Consignee;
import DataContracts.BillOfLading.Item;
import DataContracts.BillOfLading.Request.CreateBolRequest;
import DataContracts.BillOfLading.Response.BolResponse;

public class BillOfLadingSample {
String apiKey = "Your API Key";
ObjectMapper mapper = new ObjectMapper();

public BolResponse CreateBOL() throws Exception{
BolResponse response = new BolResponse();

CreateBolRequest request = PopulateBOLData();
String requestJSON = mapper.writeValueAsString(request);

String url = "{baseurl}/BillOfLading";
HttpClient httpClient = HttpClientBuilder.create().build();
HttpPost httpRequest = new HttpPost(url);
StringEntity params =new StringEntity(requestJSON);
httpRequest.addHeader("content-type", "application/json");
httpRequest.addHeader("apiKey", apiKey);
httpRequest.setEntity(params);
HttpResponse httpResponse = httpClient.execute(httpRequest);

BufferedReader rd = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

StringBuffer result = new StringBuffer();
String line = "";
while ((line = rd.readLine()) != null) {
result.append(line);
}

response = mapper.readValue(result.toString(), BolResponse.class);

return response;
}

private CreateBolRequest PopulateBOLData()
{
Party shipper = new Party();
shipper.CompanyName = "Shipper Test";
shipper.AddressLine1 = "123 ship test";
shipper.ZipOrPostalCode = "34471";
shipper.City = "Ocala";
shipper.StateOrProvince = "FL";
shipper.CountryCode = "USA";
shipper.PhoneNumber = "6145558888";

Consignee consignee = new Consignee();
consignee.CompanyName = "Consignee Test";
consignee.AddressLine1 = "123 consignee test";
consignee.ZipOrPostalCode = "45177";
consignee.City = "Wilmington";
consignee.StateOrProvince = "OH";
consignee.CountryCode = "USA";

Item item = new Item();
item.Class = "70";
item.Pieces = 1;
item.Weight = 110;
item.PackageType = "BAG";
item.Description = "Test Description";

List items = new ArrayList();
items.add(item);

BillOfLading bolInfo = new BillOfLading();
bolInfo.BOLDate = LocalDate.now().format(DateTimeFormatter.ofPattern("MM/dd/yyyy"));
bolInfo.Shipper = shipper;
bolInfo.Consignee = consignee;
bolInfo. Items = items;
bolInfo.SpecialInstructions = "Test Special Instructions";
bolInfo.FreightChargePaymentMethod = "Prepaid";
bolInfo.ServiceLevel = "Standard";

CreateBolRequest bolData = new CreateBolRequest();
bolData.BillOfLading = bolInfo;
bolData.PickupRequest = null;
bolData.GenerateUniversalPro = true;

return bolData;
}
}
Get Bill Of Lading
HTTP Method: GET
URL: /BillOfLading
Request Parameters
Name Type Cardinality Required Description
ProNumber string One Required ProNumber for the BOL you want to retrieve.
Response Parameters
Name Type Cardinality Description
ProNumber string One Pro Number
PickupRequestId string Zero or One This will be present if you scheduled a Pickup Request with your BOL.
BillOfLading object One
Properties
BolDate string One BOL Date
Shipper object One
Consignee object One
BillTo object Zero or One
Broker object Zero or One
RemitCOD object Zero or One
AdditionalServices array Zero or One
Items array One
HazmatInformation object Zero or One
DeclaredValue object One
SpecialInstructions string Zero or One
ReferenceNumbers string Zero or One
FreightChargePaymentMethod string One Prepaid or Collect.
ServiceLevel string One Standard, Guaranteed, GuaranteedByNoon, GuaranteedHourlyWindow, Expedited
HourlyWindow object Zero or One
ExpeditedQuoteNumber string Zero or One
Code integer One HTTP Status Code
Errors array One List of Errors
Properties
Error object Zero or More
Properties
Property string One
ErrorMessage string One
ExceptionMessage string One
Messages array One
Properties
Message string Zero or More
Example Request

require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{baseurl}/BillOfLading?ProNumber=I111111111');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'apiKey' => 'Your API Key'
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
using CallAPI.DataContracts.BillOfLading;
using CallAPI.DataContracts.BillOfLading.Request;
using CallAPI.DataContracts.BillOfLading.Response;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;

namespace CallAPI
{
class BillOfLadingSample
{
string apiKey = "Your API Key";

//GET
public GetBolResponse GetBOL()
{
var proNumber = "I111111111";

var url = string.Format("{baseurl}/BillOfLading?ProNumber={0}", proNumber);

var response = new GetBolResponse();
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("apiKey", apiKey);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var apiResponse = client.GetAsync(url).Result;
response = apiResponse.Content.ReadAsAsync().Result;
}

return response;
}
}
}
package Samples;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;

import com.fasterxml.jackson.databind.ObjectMapper;

import DataContracts.Party;
import DataContracts.BillOfLading.BillOfLading;
import DataContracts.BillOfLading.Consignee;
import DataContracts.BillOfLading.Item;
import DataContracts.BillOfLading.Request.CreateBolRequest;
import DataContracts.BillOfLading.Response.BolResponse;
import DataContracts.BillOfLading.Response.GetBolResponse;

public class BillOfLadingSample {
String apiKey = "Your API Key";
ObjectMapper mapper = new ObjectMapper();

public GetBolResponse GetBOL() throws Exception {
GetBolResponse response = new GetBolResponse();

String url = "{baseurl}/BillOfLading";

String proNumber = "I111111111";

url += "?ProNumber=" + proNumber;

HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet httprequest = new HttpGet(url);
httprequest.setHeader("apiKey", apiKey);

HttpResponse httpResponse = httpClient.execute(httprequest);

BufferedReader in = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

String inputLine;
StringBuffer result = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
result.append(inputLine);
}
in.close();

response = mapper.readValue(result.toString(), GetBolResponse.class);

return response;
}
}
Print BOL
HTTP Method: GET
URL: /BillOfLading/PrintBOL
Request Parameters
Name Type Cardinality Required Description
ProNumber string One Required The Pro Number for the BOL to retrieve a PDF image of.
Response Parameters
Name Type Cardinality Description
BolDocument string One Base64 encoded string of a pdf bol document
Code integer One HTTP Status Code
Errors array One
Properties
Error object Zero or More
Properties
Property string One
ErrorMessage string One
ExceptionMessage string One
Messages array One
Properties
Message string Zero or More
Example Request

require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{baseurl}/BillOfLading/PrintBOL?ProNumber=I111111111');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'apiKey' => 'Your API Key'
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
using CallAPI.DataContracts.BillOfLading;
using CallAPI.DataContracts.BillOfLading.Request;
using CallAPI.DataContracts.BillOfLading.Response;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;

namespace CallAPI
{
class BillOfLadingSample
{
string apiKey = "Your API Key";

//GET
public PrintBOLResponse PrintBOL()
{
var proNumber = "I111111111";

var url = string.Format("{baseurl}/BillOfLading/PrintBOL?ProNumber={0}", proNumber);

var response = new PrintBOLResponse();
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("apiKey", apiKey);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var apiResponse = client.GetAsync(url).Result;
response = apiResponse.Content.ReadAsAsync().Result;
}

return response;
}
}
}
package Samples;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;

import com.fasterxml.jackson.databind.ObjectMapper;

import DataContracts.Party;
import DataContracts.BillOfLading.BillOfLading;
import DataContracts.BillOfLading.Consignee;
import DataContracts.BillOfLading.Item;
import DataContracts.BillOfLading.Request.CreateBolRequest;
import DataContracts.BillOfLading.Response.BolResponse;
import DataContracts.BillOfLading.Response.GetBolResponse;
import DataContracts.BillOfLading.Response.PrintBOLResponse;
import DataContracts.BillOfLading.Response.PrintShippingLabelsResponse;

public class BillOfLadingSample {
String apiKey = "Your API Key";
ObjectMapper mapper = new ObjectMapper();

public PrintBOLResponse PrintBOL() throws Exception {
PrintBOLResponse response = new PrintBOLResponse();

String url = "{baseurl}/BillOfLading/PrintBOL";

String proNumber = "I111111111";

url += "?ProNumber=" + proNumber;

HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet httprequest = new HttpGet(url);
httprequest.setHeader("apiKey", apiKey);

HttpResponse httpResponse = httpClient.execute(httprequest);

BufferedReader in = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

String inputLine;
StringBuffer result = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
result.append(inputLine);
}
in.close();

response = mapper.readValue(result.toString(), PrintBOLResponse.class);

return response;
}
}
Print Shipping Labels
HTTP Method: GET
URL: /BillOfLading/PrintShippingLabels
Request Parameters
Name Type Cardinality Required Description
ProNumber string One Required The Pro Number for the Bol you want to get labels for.
Style integer One Required Between 1 and 13. See this document for descriptions of the different styles here.
StartPosition integer Zero or One Optional Will default to 1. Between 1 and 10.
NumberOfLabels integer One Required The number of labels to print. Between 1 and 100.
Response Parameters
Name Type Cardinality Description
ShippingLabelsFile string One Base64 encoded string of a pdf with your labels.
Properties
UnnaNumber string One UNNA Number
UnnaDescription string One Description of the UNNA number
IsNOS boolean One Indicates whether an UNNA Number is NOS (not otherwise specified)
Code integer One HTTP Status Code
Errors array One
Properties
Error object Zero or More
Properties
Property string One
ErrorMessage string One
ExceptionMessage string
Messages array One
Properties
Message string Zero or More
Example Request

require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{baseurl}/BillOfLading/PrintShippingLabels?ProNumber=I111111111&Style=1&StartPosition=1&NumberOfLabels=1');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'apiKey' => 'Your API Key'
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
using CallAPI.DataContracts.BillOfLading;
using CallAPI.DataContracts.BillOfLading.Request;
using CallAPI.DataContracts.BillOfLading.Response;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;

namespace CallAPI
{
class BillOfLadingSample
{
string apiKey = "Your API Key";

//GET
public PrintShippingLabelsResponse PrintShippingLabels()
{
var proNumber = "I111111111";
var style = 1;
var startPosition = 1;
var numberOfLabels = 1;

var url = string.Format("{baseurl}/BillOfLading/PrintShippingLabels?ProNumber={0}&Style={1}&StartPosition={2}&NumberOfLabels={3}",
proNumber, style, startPosition, numberOfLabels);

var response = new PrintShippingLabelsResponse();
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("apiKey", apiKey);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var apiResponse = client.GetAsync(url).Result;
response = apiResponse.Content.ReadAsAsync().Result;
}

return response;
}
}
}
package Samples;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;

import com.fasterxml.jackson.databind.ObjectMapper;

import DataContracts.Party;
import DataContracts.BillOfLading.BillOfLading;
import DataContracts.BillOfLading.Consignee;
import DataContracts.BillOfLading.Item;
import DataContracts.BillOfLading.Request.CreateBolRequest;
import DataContracts.BillOfLading.Response.BolResponse;
import DataContracts.BillOfLading.Response.GetBolResponse;
import DataContracts.BillOfLading.Response.PrintBOLResponse;
import DataContracts.BillOfLading.Response.PrintShippingLabelsResponse;

public class BillOfLadingSample {
String apiKey = "Your API Key";
ObjectMapper mapper = new ObjectMapper();

public PrintShippingLabelsResponse PrintShippingLabels() throws Exception {
PrintShippingLabelsResponse response = new PrintShippingLabelsResponse();

String url = "{baseurl}/BillOfLading/PrintShippingLabels";

String proNumber = "I111111111";
int style = 1;
int startPosition = 1;
int numberOfLabels = 1;

url += "?ProNumber=" + proNumber + "&Style=" + style + "&StartPosition=" + startPosition + "&NumberOfLabels=" + numberOfLabels;

HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet httprequest = new HttpGet(url);
httprequest.setHeader("apiKey", apiKey);

HttpResponse httpResponse = httpClient.execute(httprequest);

BufferedReader in = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

String inputLine;
StringBuffer result = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
result.append(inputLine);
}
in.close();

response = mapper.readValue(result.toString(), PrintShippingLabelsResponse.class);

return response;
}
}
Get Hazmat Description
HTTP Method: GET
URL: /BillOfLading/GetHazmatDescription
Request Parameters
Name Type Cardinality Required Description
uNNANumber string One Required UNNA Number - supported format is UN1234
Response Parameters
Name Type Cardinality Description
UNNAList array
Properties
UnnaNumber string One UNNA Number
UnnaDescription string One Description of the UNNA number
IsNOS boolean One Indicates whether an UNNA Number is NOS (not otherwise specified)
Example Request

require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('{baseurl}/BillOfLading/GetHazmatDescription?request.uNNANumber=UN1971');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'apiKey' => 'Your API Key'
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
using CallAPI.DataContracts.BillOfLading;
using CallAPI.DataContracts.BillOfLading.Request;
using CallAPI.DataContracts.BillOfLading.Response;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;

namespace CallAPI
{
class BillOfLadingSample
{
string apiKey = "Your API Key";

//GET
public GetHazmatDescriptionResponse GetHazmatDescription()
{
var uNNANumber= "UN1971";

var url = string.Format("{baseurl}/BillOfLading/GetHazmatDescription?uNNANumber={0}",
uNNANumber);

var response = new GetHazmatDescriptionResponse();
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("apiKey", apiKey);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var apiResponse = client.GetAsync(url).Result;
response = apiResponse.Content.ReadAsAsync().Result;
}

return response;
}
}
}
package Samples;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClientBuilder;

import com.fasterxml.jackson.databind.ObjectMapper;

import DataContracts.Party;
import DataContracts.BillOfLading.BillOfLading;
import DataContracts.BillOfLading.Consignee;
import DataContracts.BillOfLading.Item;
import DataContracts.BillOfLading.Request.CreateBolRequest;
import DataContracts.BillOfLading.Response.BolResponse;
import DataContracts.BillOfLading.Response.GetBolResponse;
import DataContracts.BillOfLading.Response.GetHazmatDescriptionResponse;

public class BillOfLadingSample {
String apiKey = "Your API Key";
ObjectMapper mapper = new ObjectMapper();

public GetHazmatDescriptionResponse GetHazmatDescriptionResponse() throws Exception {
GetHazmatDescriptionResponse response = new GetHazmatDescriptionResponse();

String url = "{baseurl}/BillOfLading/GetHazmatDescription";

String uNNANumber= "UN1971";


url += "?uNNANumber=" + uNNANumber;

HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet httprequest = new HttpGet(url);
httprequest.setHeader("apiKey", apiKey);

HttpResponse httpResponse = httpClient.execute(httprequest);

BufferedReader in = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

String inputLine;
StringBuffer result = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
result.append(inputLine);
}
in.close();

response = mapper.readValue(result.toString(), GetHazmatDescriptionResponse.class);

return response;
}
}