Domestic Rail Visibility

Get OpenTrack's industry-leading rail visibility on shipments moving on domestic rail waybills.

📘

Domestic Rail Visibility is an add-on to OpenTrack. If you do not already have it enabled, please contact [email protected] to modify your subscription.

How It Works

Domestic Rail Visibility has simplified tracking requirements:

  1. You provide the equipment number only (container or railcar)
  2. OpenTrack automatically discovers the waybill number and railroad
  3. We fetch data directly from the relevant Class 1 railroad, or from traditional rail data aggregators for Class 2 and 3 carriers

No waybill or additional identifiers are required, just the equipment number.


Tracking via API

To track domestic rail equipment via API, use the /containers endpoint with only the equipment number.

POST https://api.opentrack.co/v1/containers/{containerId}

Replace {containerId} with your equipment number, for example EMHU1234567.

Here's an example request in cURL (replace EMHU1234567 in the url with your equipment number):

curl --request POST \
     --url https://api.opentrack.co/v1/containers/EMHU1234567 \
     --header 'accept: application/json' \
     --header 'content-type: application/json'

The request body is optional, but you can add one if you want to include custom fields to be stored on the equipment level in OpenTrack for later use.

Here's an example request that includes custom fields (replace EMHU1234567 in the url with your equipment number):

curl --request POST \
     --url https://api.opentrack.co/v1/containers/EMHU1234567 \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "customFields": {
    "customer": "Your Value"
  }
}
'
👀Click here to access the full API Reference for the /containers endpoint and build your request interactively, in your programming language of choice.

The equipment number in the path accepts both intermodal containers and non-containerized railcar equipment numbers. OpenTrack will automatically identify the equipment type and discover the active waybill, then automatically retrieve its data from the rail line.

Unlike international intermodal tracking, you do not need to provide a waybill number, carrier SCAC, or booking reference. Equipment number is all that's required.


Data Included

FieldDescription
railCarrierRailroad transporting the equipment to final rail facility
finalRailStationRail station at final destination (includes name, fsac, unlocode, firmsCode)
lastFreeDayAtRailStationDate by which equipment should be picked up to avoid demurrage fees
detentionLastFreeDayDate by which equipment should be returned to avoid detention per diem fees
etaAtDestinationETA to final rail facility
demurrageOwedAtRailStationAmount of demurrage currently owed at the final rail station
demurrageIncurredAtRailStationTotal amount of demurrage incurred at the final rail station
chassisNumberIdentifier of the chassis used to pull the container from the rail facility
containerSizeSize of the equipment (TWENTY_FT, FORTY_FT, FORTY_FT_HC, FORTY_FIVE_FT_HC)
containerTypeType of the equipment (DRY, FLAT_RACK, OPEN, REEFER, TANK, VENTILATED)
grossWeightGross weight of the container in kilograms

Milestones Included

Status Value

Description

FULL_INGATED_TO_RAIL_FACILITY

Container ingated to departure ramp facility.
Also maps Release From Industry for non-containerized railcars.

LOADED_ON_RAIL

Equipment placed on rail car to destination

DEPARTED_ON_RAIL

Equipment departed on rail to final destination

ARRIVED_AT_RAIL_FACILITY

Equipment arrival at final rail facility

UNLOADED_FROM_RAIL

Equipment deramped from rail

AVAILABLE_AT_RAIL_FACILITY

Equipment was placed for release
Also maps Constructive Placement.

ACTUAL_PLACEMENT

Equipment is ready for pickup (non-containerized railcars only)

FULL_OUTGATED_FROM_RAIL_FACILITY
EMPTY_OUTGATED_FROM_RAIL_FACILITY

Equipment outgated from final rail facility

EMPTY_RETURNED

Equipment was returned empty to carrier


Full and empty voyages

Full and empty voyages are both supported with the same milestone visibility. Contact support to enable empty voyage tracking in your account.

Continuous tracking for long-term leased or owned equipment

Continuous, long-term equipment tracking is available for owned or leased equipment. OpenTrack automatically detects the end of each voyage and restarts tracking on the new waybill.

How to start continuous tracking

First things first: Make sure you've contacted support to enable continuous tracking in your account.

To enable continuous tracking on a container, set the "leased" custom field to "true".

You can tag containers via API, bulk upload, or manually.

To stop continuous tracking on a container, you can also pass "leased": "false" in a similar way.

Via bulk upload or manually

Here's the guide to updating custom fields on containers via bulk upload and manually in-app.

Via API

Here's a sample POST container tracking request that shows how to set the "leased" flag on a container:

curl --location 'https://api.opentrack.co/v1/containers/NAHX123456' \
--header 'Content-Type: application/json' \
--header 'Opentrack-API-Key: ***' \
--data '
{
     "customFields": {
          "leased": "true"
     }
}
'