---
title: "Retrieve Waybill - Retrieve current active waybill/bill of lading information for a given equipment."
method: GET
path: "/v1/waybill"
tags: ["Requests"]
---

# Retrieve Waybill - Retrieve current active waybill/bill of lading information for a given equipment.

`GET /v1/waybill`

## Request

- Base URL: `https://api.bnsf.com:6443`
- URL: `https://api.bnsf.com:6443/v1/waybill`
- Auth: none declared
- TypeScript: <https://skmtc.dev/bnsf/apis/bnsf-waybill-api/docs/v1/waybill/get.ts> (a function with typed inputs; its response is checked against the schema)

<b>Changelog</b>
<ul>
<li>November 17, 2021: Added customerWaybillReferenceNumbers array.</li>
</ul>

## Query parameters

- `equipmentInitial` string, required
- `equipmentNumber` string, required

## Response `200`

**OK**

The request has succeeded.

- WaybillDetails
  - `customerWaybillDetails` object
    - `equipmentInitial` string, required: Equipment Initial is the prefix or alphabetic part of an equipment units identifying number.
    - `equipmentNumber` string, required: Equipment Number is the sequencing or serial part of an equipment units identifying number.
    - `loadEmptyCode` string: Code which indicates the load status of a piece of equipment. Valid values are: L = Loaded, E = Empty, B = Both
    - `equipmentGrossScaleWeightPounds` string: The gross scale weight of a piece of equipment as measured in pounds.
    - `equipmentTareWeightPounds` string: The weight of an empty vehicle or container, as measured in pounds, without cargo. Sometimes referred to as Unladen Weight.
    - `shipmentNetScaleWeightPounds` string: The net scale weight of a shipment, as measured in pounds.
    - `carKindCode` string: Code that identifies the physical characteristics for equipment as defined by BNSF Railway itself. Value is used when car characteristics are required for business decision making.
    - `billOfLadingId` string: Is a unique identifier for an instance of an internal or external customer request for the Bill of Lading via rail.
    - `waybillNumber` string: Waybill Number is the carrier accounting number of a waybill.
    - `waybillVersionNumber` string: Number added to a specific Waybill to allow for versioning of the Waybill over time.
    - `shippingManifestId` string: Identifier of a Shipping Manifest which is a list of all goods loaded onto a transport vessel. A manifest usually documents the items, quantity, weight, and the destination information for where the cargo is to go.
    - `waybillDate` string: Waybill Date is the day, month, and year specified on a waybill, expressed as CCYYMMDD where CC represents the first two digits of the calendar year. Can not be in the future.
    - `waybillEdiCode` string: Code which defines if the Waybill has an EDI code.
    - `waybillStatusCode` string: BNSF defined code values to track the operational lifecycle state of a Waybill's execution from initialization to close. Valid Values Include: A=ACTIVATED, C=CLOSED CYCLE, O=OFFLINE, S=SUSPENDED, V=VOIDED
    - `waybillParties` object[]: Information on interested or responsible parties associated with a Waybill.
      - `waybillPartyRoleName` string: Description of the Waybill Party Role Code value which provides the full name associated with the role.
      - `waybillPartyFullName` string: Full name of a Party (business or individual) that plays a part within a Waybill.
    - `waybillDetails` object: Details relating to a Waybill.
      - `originStationName` string: The fully spelled out name of an origin station.
      - `originStateCode` string: The code, as assigned by a national body such as the US Postal Service, for a state, province, or territory for a given origin.
      - `destinationStationName` string: The fully spelled out name of an destination station.
      - `destinationStateCode` string: The code, as assigned by a national body such as the US Postal Service, for a state, province, or territory for a given destination.
      - `stcc` string: STCC (Standard Transportation Commodity Code) number identifying a Commodity.
      - `commodityDescription` string: Text value which describes a Commodity.
      - `contractFreightRateQuoteNumber` string: Number assigned to identify a quote generated for a Contract Freight Rate.
      - `aarRule11Indicator` string: Indicates if AAR (Association of American Railroads) Rule 11 applies to the shipment. This rule identifies the proper billing procedure that must be followed by each party in scenarios in which through waybilling of shipments require more than one carrier to collect.
      - `shipmentUnitCount` string: Number of pieces of equipment that are being moved in a shipment.
    - `waybillRoutes` object[]
      - `waybillRouteScac` string
      - `aarRule260JunctionAbbreviation` string: The AAR Rule 260 junction abbreviation associated with a segment of the route for a Waybill where two rail carriers will exchange shipments.
      - `waybillRouteSequenceNumber` string: A value that defines the sequence within a full Waybill route the associated portion of a route pertains.
    - `waybillDiversions` object[]: Diversions allow a customer to update a waybill to divert a shipment to a different destination or to update the consignee.
      - `consigneeFullName` string: The full name of a customer that is filling the role of Consignee. A Consignee, also referred to as the "Receiver", is the company or individual receiving a shipment at a destination.
      - `waybillDiversionAuthorizedByName` string: The full name of the person who authorized the Waybill Diversion.
      - `waybillDiversionRequesterPhoneNumber` string: Phone number of the person who requested the Waybill Diversion.
      - `waybillDiversionDate` string: Full calendar date when the Waybill Diversion occurred.
      - `waybillDiversionTime` string: Time when the Waybill Diversion occurred. Formatted as HHMMSS.
      - `waybillDiversionComments` object[]: Any comments related to the diversion(s) made to the original Waybill.
        - `waybillDiversionComment` string: Comments entered related to any diversions made to a Waybill. Diversions allow a customer to update a waybill to divert a shipment to a different destination or to update the consignee.
    - `waybillHazardousCommodities` object[]: Details about any hazardous commodities/materials being hauled under the associated Waybill.
      - `unNorthAmericanHazardousCommodityNumber` string: UN (United Nations) or North American Hazardous Commodity Number (BOE 6000).
      - `hazardousCommodityTechnicalName` string: The technical name for a Hazardous Commodity.
      - `hazardousCommodityProperShippingName` string: The full name of a Proper Shipping name assigned to a Hazardous Commodities as required by US, Canadian, and International Regulations.
      - `hazardousSubstanceChemicalComponent` string: The chemical component(s) identified for a given Hazardous Commodity.
      - `hazardousCommodityClassificationCode` string: Code indicating the classification applied to a hazardous commodity. May include Canadian, United States, and international codes depending on the data storage file and the type of shipments.
      - `canadianHazardousCommoditySubsidiaryClassification1` string: The first, primary, Canadian Hazardous Commodity Subsidiary Classification associated with a given material being shipped.
      - `canadianHazardousCommoditySubsidiaryClassification2` string: The second, secondary, Canadian Hazardous Commodity Subsidiary Classification associated with a given material being shipped.
      - `packagingGroupCode` string: Code which designates the Canadian or International Packaging Group assigned to a shipment.
      - `stcc` string: STCC (Standard Transportation Commodity Code) number identifying a Commodity.
      - `commodityAdditionalDescriptiveInformation` string: Additional descriptive information recorded for a Commodity, tariff, or other relevant data.
      - `hazardousMaterialShipmentWeightPounds` string: The weight, as measured in pounds, of a Hazardous Material shipment.
      - `reportableHazardousMaterialQuantityIndicator` string: Indicates if the quantity of a hazardous commodity must be reported to the US or State DOT (Department of Transportation) agency.
      - `customerNotificationPhoneNumber` string: Telephone number to be used to notify a Customer of any important information.
      - `waybillHazardousMaterialComment` string: A comment entered about hazardous materials found on a Waybill.
    - `waybillVessels` object[]: Information on any sailing vessel(s) associated with freight movement under the associated Waybill.
      - `sailingDate` string: The date a sailing vessel is to depart (formatted as YYYY-MM-DD).
      - `sailingTime` string: The time a sailing vessel is to depart (formatted as HH:MM).
      - `vesselInboundOutboundCode` string: Code which defines the high level movement of a vessel, inbound or outbound.
      - `vesselName` string: Name of a sailing vessel as documented in "Lloyd's Register of Ships".
      - `vesselVoyageNumber` string: Number associated with a vessel's voyage that identifies the voyage cargo is shipped under.
      - `vesselTerminalName` string: Name of a terminal, within a given port, a sailing vessel may begin or end a voyage from.
      - `vesselPortName` string: Name of a port, a maritime facility, from which a sailing vessel may begin or end a voyage from.
      - `pierName` string: Name of a pier a sailing vessel may begin or end a voyage from
      - `vesselBookingNumber` string: The number, assigned by a carrier, for the reservation of space aboard a shipping vessel.
      - `vesselBookingDate` string: The date a sailing vessel has been booked, space has been reserved, by a Carrier (formatted as YYYY-MM-DD).
      - `scheduledUnitAvailabilityDate` string: Date a given unit is scheduled to be available (formatted as YYYY-MM-DD).
      - `scheduledUnitAvailabilityTime` string: Time a given unit is scheduled to be available (formatted as HH:SS).
    - `integratedServiceDetails` object
      - `requestedUnitAvailabilityDate` string: Date a given unit is requested to be made available to the Customer (formatted as YYYY-MM-DD).
      - `requestedUnitAvailabilityTime` string: Time a given unit is requested to be made available to the Customer (formatted as HH:MM).
      - `plannedUnitAvailabilityDate` string: Date a given unit is planned to be made available to the Customer (formatted as YYYY-MM-DD).
      - `plannedUnitAvailabilityTime` string: Time a given unit is planned to be made available to the Customer (formatted as HH:MM).
    - `waybillErrors` object[]
      - `waybillErrorDescription` string: Full description of an error generated when Waybill information was entered.
    - `waybillSpecialInstructions` object[]
      - `waybillSpecialInstructions` string: Any special instructions to be communicated or followed during the execution of a Waybill.
    - `waybillSpecialConditions` object[]
      - `waybillSpecialConditionCode` string: Code that defines a special condition to be considered during the execution of a Waybill.
      - `waybillSpecialConditionName` string: Descriptive name, assigned to a special condition code, that defines a special condition to be considered during the execution of a Waybill.
    - `waybillAdditionalUnits` object[]
      - `equipmentInitial` string: Equipment Initial is the prefix or alphabetic part of an equipment units identifying number.
      - `equipmentNumber` string: Equipment Number is the sequencing or serial part of an equipment units identifying number.
      - `totalLadingWeightPounds` string: Total chargeable weight (lading weight) for a specific Railcar as measured in pounds.
    - `customerWaybillReferenceNumbers` object[]
      - `waybillReferenceNumberTypeCode` string: A code defining the type of reference number or identifier associated with a Waybill.
      - `waybillReferenceNumberTypeName` string: A short, free-form description of a code defining the type of reference number or identifier associated with a Waybill.
      - `waybillReferenceNumber` string: A reference number or identifier associated with a Waybill.

## Other responses

- `400`: **Bad Request** The request could not be understood by the server due to incorrect syntax. Do not repeat the request without modifications.
- `403`: Unauthorized request. Here are the most common causes: * You are getting 403 Access Denied. * It takes a few days for us to get you set up after you register. When set up is complete, you will receive an email letting you know. If you have not received the email, please wait up to five business days. Let us know via API Support if you still have not received the email after five business days. * You can also get this error if your certificate is not configured properly on your side. Please review the Mutual Authentication in the Getting Started section of our documentation. * You are getting 403 "message": "Insufficient privileges" when accessing a restricted service for which you do not have permission. You can use our Registration form to request access. Be sure to explain the situation in the "Please explain how you intend to use the API" field.
- `404`: **Not Found** The server cannot find the requested resource (URI). That is, the address of the endpoint in your request does not exist. Please consult the documentation.
- `405`: **Method Not Allowed** The request HTTP method is known by the server but has been disabled and cannot be used for that resource. For example, you may be using GET when POST is required. Please consult the documentation.
- `429`: **Too Many Requests** The BNSF API Gateway enforces rate limits to maintain application security and performance. Current rate limits are set as follows: * 1 API Request Per Second, Per Partner, Per Service * 15 API Requests Per Minute, Per Partner, Per Service * 100 API Request Per Minute, Per Service When requests exceed these limits the API Gateway will return a **429 Too Many Requests** error response. Upon receiving such exceptions, you can resubmit failed requests in a rate-limited manner, complying with the API Gateway throttle limits.
- `500`: **Internal Server Error** The server encountered an unexpected condition which prevented it from fulfilling the request. This is always a problem on the server side. Our internal support systems will be made aware.
- `504`: **Gateway Timeout** The server is acting as a gateway and cannot get a response in time for a request. Wait about one minute then try again.

---

[API](https://skmtc.dev/bnsf/apis/bnsf-waybill-api.md) - [All operations](https://skmtc.dev/bnsf/apis/bnsf-waybill-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bnsf/apis/bnsf-waybill-api/revisions/a046723f5b3d?raw)
