Dokumentacja techniczna API na stronę baltichub.com

Technical documentation – API Baltic Hub

Change History

VersionRelease dateAuthorChange description
1.02025-07-24IT BHCTFirst release
1.12025-08-24IT BHCTAdded the ability to send multiple containers (up to 500) in a single request (applies to the UNITS endpoint).
1.22025-10-17IT BHCTAdded information about three endpoints: Train Operator Units & Update Seals Train Operator & Self Assign Train Operator
1.32026-01-20IT BHCTAdded information about endpoint: Self Assign Agent One
1.42026-05-27IT BHCTAdded information:
1. new endpoint: Self Assign One Booking
2. added new fields to Unit endpoint: DSK Number and Loaded

2. Available Endpoints

  1. GET: Information about the container (UNIT)
  2. GET: Information about train visit (TRAIN_VISITS)
  3. GET: Information about vessel visit (VESSEL)
  4. GET: Information about the rail discharge and load lists (TRAIN_DISCHARGE_LIST & TRAIN_LOAD_LIST)
  5. GET: Information about the container with assigned Train Operator (TRAIN_OPERATOR_UNITS)
  6. POST: Information about seal assign to the container (UPDATE_SEALS_TRAIN_OPERATOR)
  7. POST: Sending information (SELF_ASSIGN_TRAIN_OPERATOR)
  8. POST: Self assign via PIN number (SELF_ASSIGN_AGENT_ONE)
  9. POST: Self assign via Booking number (SELF_ASSIGN_ONE_BOOKING)

3. Authentication

Authorization Method: OAuth 2.0

4. Access to API

Access to the API is only possible from specified IP addresses (from the whitelist).

For API access, please contact our customer service at customerservice@baltichub.com or submit API Application Form available here: API.

5. Rate limiting for requests

200 requests / 60 seconds

6. Swagger 2.0

Title: Baltic Hub API Azure

Description: BalticHub API. Access from whitelisted addresses only. Authorization method – BEARER Token.

Version: 1.4.0

Host: api2.baltichub.com   Base Path: /V1

7. Endpoints


GET /TRAIN_DISCHARGE_LIST

Summary: Train discharge list

Description: Get list of containers scheduled/onboard/incoming on Train Visit.

API address with example:
https://api2.baltichub.com/V1/TRAIN_DISCHARGE_LIST?TRAIN_VISIT_ID=TUX2W31-25_EXP

NameInTypeDescriptionRequired
TRAIN_VISIT_IDquerystring(Required) BalticHub terminal system Train Visit ID.Yes

Example:

Columns
<columns>
  <column>Unit Nbr</column>
  <column>T-State</column>
  <column>V-State</column>
  <column>Category</column>
  <column>Line Op</column>
  <column>Type ISO</column>
  <column>Frght Kind</column>
  <column>I/B Actual Service Name</column>
  <column>Planned Position</column>
  <column>Position</column>
</columns>
Rows
<rows>
  <row primary-key="9669222089">
    <field>MNBU4126562</field>
    <field>Yard</field>
    <field>Active</field>
    <field>Storage</field>
    <field>MAE</field>
    <field>45R1</field>
    <field>Empty</field>
    <field>LOCONI - Szczecin</field>
    <field />
    <field>Y-CY1-I05.008.4.3</field>
  </row>
  <row primary-key="9669232792">
    <field>MNBU3159052</field>
    <field>Yard</field>
    <field>Active</field>
    <field>Storage</field>
    <field>MAE</field>
    <field>45R1</field>
    <field>Empty</field>
    <field>LOCONI - Szczecin</field>
    <field />
    <field>Y-CY1-I05.008.4.2</field>
  </row>
</rows>

GET /TRAIN_LOAD_LIST

Summary: Train load list

Description: Get list of containers scheduled/loaded/departed on Train Visit.

API address with example:
https://api2.baltichub.com/V1/TRAIN_LOAD_LIST?TRAIN_VISIT_ID=TUX3W31-25_IMP

NameInTypeDescriptionRequired
TRAIN_VISIT_IDquerystring(Required) BalticHub terminal system Train Visit ID.Yes

Example:

Columns
<columns>
  <column>Unit Nbr</column>
  <column>T-State</column>
  <column>V-State</column>
  <column>Category</column>
  <column>Line Op</column>
  <column>Type ISO</column>
  <column>Frght Kind</column>
  <column>I/B Actual Service Name</column>
  <column>Planned Position</column>
  <column>Position</column>
</columns>
Rows
<rows>
  <row primary-key="9628689976">
    <field>CMAU5668810</field>
    <field>Departed</field>
    <field>Departed</field>
    <field>Import</field>
    <field>CMA</field>
    <field>45G1</field>
    <field>FCL</field>
    <field>OCEAN Alliance (AEU1)</field>
    <field />
    <field>R-335449805019-1B2</field>
  </row>
  <row primary-key="9629435816">
    <field>CMAU4193221</field>
    <field>Departed</field>
    <field>Departed</field>
    <field>Import</field>
    <field>CMA</field>
    <field>45G1</field>
    <field>FCL</field>
    <field>OCEAN Alliance (AEU1)</field>
    <field />
    <field>R-378449501246-1B1</field>
  </row>
</rows>

GET /TRAIN_VISITS

Summary: Train visits

Description: Get Train Visits.

API address with example:
https://api2.baltichub.com/V1/TRAIN_VISITS?VISIT_PHASE=10CREATED&ETA_AFTER=2025-10-08 12:00&ETA_BEFORE=2025-10-12 15:30

NameInTypeDescriptionRequired
VISIT_PHASEquerystring(Optional). Multiple values allowed – use comma as separator. Possible Values: 10CREATED, 20INBOUND, 30ARRIVED, 40WORKING, 50COMPLETE, 60DEPARTED, 70CLOSED, 80CANCELED, 90ARCHIVEDNo
ETA_AFTERquerystring(Required) Mandatory. Start date of time range. Date/Time format yyyy-mm-dd hh:mmYes
ETA_BEFOREquerystring(Required) Mandatory. End date of time range. Date/Time format yyyy-mm-dd hh:mmYes

Example:

Columns
<columns>
  <column>Visit</column>
  <column>Phase</column>
  <column>ETA</column>
  <column>ETD</column>
  <column>ATA</column>
  <column>ATD</column>
  <column>Direction</column>
  <column>Service Name</column>
</columns>
Rows
<rows>
  <row primary-key="9723456969">
    <field>ZZZZZW33-25_EXP</field>
    <field>Complete</field>
    <field>2025-08-14 06:00</field>
    <field>2025-08-14 12:00</field>
    <field>2025-08-14 02:54</field>
    <field />
    <field>Inbound Only Train</field>
    <field>Service Name</field>
  </row>
  <row primary-key="9723454856">
    <field>YYYYY33-25_IMP</field>
    <field>Complete</field>
    <field>2025-08-14 06:00</field>
    <field>2025-08-14 12:00</field>
    <field>2025-08-14 02:54</field>
    <field />
    <field>Outbound Only Train</field>
    <field>Service name</field>
  </row>
</rows>

GET /VESSEL

Summary: Vessel

Description: Vessel – Get Vessel Visit details.

API address with example:
https://api2.baltichub.com/V1/VESSEL?VISIT_REF=25BERA523

NameInTypeDescriptionRequired
VISIT_REFquerystring(Required) BalticHub terminal system Vessel Visit ID.Yes

Example:

Columns
<columns>
  <column>Visit</column>
  <column>Vessel Name</column>
  <column>I/B Vyg</column>
  <column>O/B Vyg</column>
  <column>Line</column>
  <column>Phase</column>
  <column>ETA</column>
  <column>ETD</column>
  <column>ATA</column>
  <column>ATD</column>
  <column>Begin Receive</column>
  <column>DryCutoff</column>
</columns>
Rows
<rows>
  <row primary-key="9530124090">
    <field>25BERA523</field>
    <field>MSC BERANGERE</field>
    <field>GA523W</field>
    <field>GA533E</field>
    <field>MSC</field>
    <field>Working</field>
    <field>2025-08-10 22:00</field>
    <field>2025-08-14 13:00</field>
    <field>2025-08-11 01:20</field>
    <field />
    <field>2025-08-03 04:00</field>
    <field>2025-08-10 10:00</field>
  </row>
</rows>

GET /UNIT

Summary: Unit

Description: Get Unit (container) details. The ability to send multiple containers (up to 500) in a single request, separated by commas.

API address with example:
https://api2.baltichub.com/V1/unit?UNIT_NBR=SUDU1234567,SUDU7654321,MSKU1234567

NameInTypeDescriptionRequired
UNIT_NBRquerystring(Required)Yes
VISIT_STATEquerystring(Optional) Multiple values allowed – use comma as separator. Possible values: 1ACTIVE, 2ADVISED, 3DEPARTED, 4RETIREDNo
TRANSIT_STATEquerystring(Optional) Multiple values allowed – use comma as separator. Possible values: S10_ADVISED, S20_INBOUND, S30_ECIN, S40_YARD, S60_LOADED, S70_DEPARTED, S99_RETIREDNo

Example:

Columns
<columns>
  <column>Unit Nbr</column>
  <column>T-State</column>
  <column>V-State</column>
  <column>Category</column>
  <column>Line Op</column>
  <column>Type ISO</column>
  <column>Frght Kind</column>
  <column>I/B Actual Visit</column>
  <column>O/B Actual Visit</column>
  <column>Time In</column>
  <column>Time Out</column>
  <column>Unit Impediments</column>
  <column>CEN Number</column>
  <column>Cmdy</column>
  <column>VGM Weight</column>
  <column>Cargo Wt (kg)</column>
  <column>Tare Wt</column>
  <column>Weight (kg)</column>
  <column>Seal Nbr1</column>
  <column>Seal Nbr2</column>
  <column>Seal Nbr3</column>
  <column>Seal Nbr4</column>
  <column>DSK Number</column>
  <column>Loaded</column>
</columns>
Rows
<rows>
  <row primary-key="8971657315">
    <field>SUDU1234567</field>
    <field>Departed</field>
    <field>Departed</field>
    <field>Import</field>
    <field>MAE</field>
    <field>45G1</field>
    <field>FCL</field>
    <field>25XXX510</field>
    <field>XXXX5656</field>
    <field>2025-03-08 01:16</field>
    <field>2025-03-12 14:48</field>
    <field>!TECHNICAL_FULL_CONTAINER</field>
    <field>CustmosNumber</field>
    <field>YYYYYYYYYY</field>
    <field>14442.0</field>
    <field>10442.0</field>
    <field>4000.0</field>
    <field>14442.0</field>
    <field />
    <field />
    <field>ML-XXXXXX</field>
    <field />
    <field>DSK Number</field>
    <field>2025-03-12 14:48</field>
  </row>
</rows>

GET /TRAIN_OPERATOR_UNITS

Summary: TRAIN OPERATOR UNITS. Endpoint only for train operators.

Description: Get Unit (container) details with an assigned train operator. The train operator can only see their own containers.

API address with example:
https://api2.baltichub.com/V1/TRAIN_OPERATOR_UNITS?UNIT_NBR=SUDU1234567

NameInTypeDescriptionRequired
UNIT_NBRquerystring(Required)Yes

Example:

Columns
<columns>
  <column>Unit Nbr</column>
  <column>Type ISO</column>
  <column>Category</column>
  <column>T-State</column>
  <column>V-State</column>
  <column>Line Op</column>
  <column>Frght Kind</column>
  <column>Train Operator</column>
</columns>
Rows
<rows>
  <row primary-key="8971657315">
    <field>SUDU1234567</field>
    <field>45G1</field>
    <field>Import</field>
    <field>Departed</field>
    <field>Departed</field>
    <field>MAE</field>
    <field>FCL</field>
    <field>Loconi</field>
  </row>
</rows>

POST /UPDATE_SEALS_TRAIN_OPERATOR

Summary: Endpoint only for train operators.

Description: Update container seal numbers in the Navis system.

Address with example:
https://api2.baltichub.com/V1/UPDATE_SEALS_TRAIN_OPERATOR

NameInTypeDescriptionRequired
Ufv_Gkeyquerystring(Required). Unique Unit (container visit) key in the terminal system. Refers to primary-key available in 'Unit' endpoint response.Yes
UnitSeal1, UnitSeal2, UnitSeal3, UnitSeal4querystring(Required) Space for entering subsequent seal numbers for a given container.Yes

Example:

XML Body
<custom class="WS_CUSTOM_HANDLER_UPDATE_SEALS" type="extension">
  <item>
    <Ufv_Gkey>8836072559</Ufv_Gkey>
    <UnitSeal1>testseal123</UnitSeal1>
    <UnitSeal2>testseal1666623</UnitSeal2>
    <UnitSeal3>testseal123</UnitSeal3>
    <UnitSeal4>testseal123</UnitSeal4>
  </item>
</custom>

POST /SELF_ASSIGN_TRAIN_OPERATOR

Summary: Endpoint only for train operators.

Description: Assigning Train Operator to a container using a PIN code in the Navis system.

Address with example:
https://api2.baltichub.com/V1/SELF_ASSIGN_TRAIN_OPERATOR

NameInTypeDescriptionRequired
Ufv_Gkeyquerystring(Required). Unique Unit (container visit) key in the terminal system. Refers to primary-key available in 'Unit' endpoint response.Yes
UnitPINquerystring(Required). Unit PIN. The PIN must match the Unit PIN in the terminal system.Yes

Example:

XML Body
<items>
  <item>
    <Ufv_Gkey>8781457138</Ufv_Gkey>
    <UnitPIN>XYZ123XYZ</UnitPIN>
  </item>
</items>

POST /SELF_ASSIGN_AGENT_ONE

Summary: Endpoint only for Agents One.

Description: Assigning Agent One to a container using a PIN code in the Navis system.

Address with example:
https://api2.baltichub.com/V1/SELF_ASSIGN_AGENT_ONE

NameInTypeDescriptionRequired
Ufv_Gkeyquerystring(Required). Unique Unit (container visit) key in the terminal system. Refers to primary-key available in 'Unit' endpoint response.Yes
UnitPINquerystring(Required). Unit PIN. The PIN must match the Unit PIN in the terminal system.Yes

Example:

XML Body
<items>
  <item>
    <Ufv_Gkey>10017457249</Ufv_Gkey>
    <UnitPIN>123123</UnitPIN>
  </item>
</items>

POST /SELF_ASSIGN_ONE_BOOKING

Summary: Endpoint only for Agents One.

Description: Assigning Agent One to a container using a Booking number in the Navis system.

Address with example:
https://api2.baltichub.com/V1/SELF_ASSIGN_AGENT_ONE_BOOKING

NameInTypeDescriptionRequired
Ufv_Gkeyquerystring(Required). Unique Unit (container visit) key in the terminal system. Refers to primary-key available in 'Unit' endpoint response.Yes
UnitBookingquerystring(Required). Unit Booking Number. The Booking Number must match the Booking Number in the terminal system.Yes

Example:

XML Body
<items>
  <item>
    <Ufv_Gkey>9100461217</Ufv_Gkey>
    <UnitBooking>EBKG15952147</UnitBooking>
  </item>
</items>