Trapac
- Provider Information:
 
Id  | 
trapac  | 
Type  | 
terminal  | 
Trace Type  | 
API  | 
Credentials  | 
No credentials, Requires only whitelist IP  | 
Limits  | 
Maximum number of containers per request is 10  | 
Status  | 
draft  | 
Doc Status  | 
draft  | 
Doc Version  | 
1  | 
- URLs:
 
Type  | 
URL  | 
Environment  | 
|---|---|---|
Request  | 
PRD  | 
|
Request  | 
DEV/STG  | 
- Sites:
 
Name  | 
Site Id  | 
Description  | 
|---|---|---|
name  | 
ern  | 
the description  | 
Request
Query Containers Request
Query containers using the following request by adding the LocationCode and container numbers in the request url as following.
GET https://ws.trapac.com/TrapacAPI/api/Availabilities?terminal={locationCode}&list={ContainerNumbers}
Note
Trapac API supports 2 terminals, in order to query data related to one of them, the locationCode has to be provided ContainerNumbers in the request should be separated with commas.
Terminal Name  | 
Location Code  | 
|---|---|
B136 Los Angeles  | 
LAX  | 
B30 Oakland  | 
OAK  | 
Responses
Query Containers Response
Next response is for three containers CAIU7668800, HDMU6510889 and GAOU6554952.
[
    {
        "availabilityType": "Container",
        "number": "CAIU7668800",
        "line": "TF",
        "holdsLine": "Released",
        "holdsCustoms": "Released",
        "holdsUSDA": "Released",
        "terminalHold": ["VESSEL WORKING AREA"],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "NO",
        "yardDescription": "Delivered 03/16/2022 01:40",
        "yardStatus": "",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "ZFJ",
        "voyage": "003E",
        "demurrageStatus": "No demurrage to display. Cargo has been delivered",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    },
    {
        "availabilityType": "Container",
        "number": "HDMU6510889",
        "line": "ED",
        "holdsLine": "HELD",
        "holdsCustoms": "HELD",
        "holdsUSDA": "HELD",
        "terminalHold": ["PIERPASS TMF HOLD"],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "N/A",
        "yardDescription": "In Yard (#B011 row) Grounded",
        "yardStatus": "Grounded",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "CET",
        "voyage": "080E",
        "demurrageStatus": "No demurrage to display. Cargo has been delivered",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    },
    {
        "availabilityType": null,
        "number": "GAOU6554952",
        "line": "",
        "holdsLine": "N/A",
        "holdsCustoms": "N/A",
        "holdsUSDA": "N/A",
        "terminalHold": null,
        "lfd": null,
        "amount": 0.0,
        "hold": null,
        "yardDescription": "N/A",
        "yardStatus": "N/A",
        "size": 0,
        "cargoType": null,
        "height": 0,
        "vessel": "",
        "voyage": "",
        "demurrageStatus": "N/A (please check by individual container number)",
        "demurrageSchedule": null,
        "errorCode": 1,
        "errorDescription": "No result found for the reference number: GAOU6554952"
    }
]
Not found containers Response
If containers GAOU6554952 is given as not found container then API returns the next response.
[
    {
        "availabilityType": null,
        "number": "GAOU6554952",
        "line": "",
        "holdsLine": "N/A",
        "holdsCustoms": "N/A",
        "holdsUSDA": "N/A",
        "terminalHold": null,
        "lfd": null,
        "amount": 0.0,
        "hold": null,
        "yardDescription": "N/A",
        "yardStatus": "N/A",
        "size": 0,
        "cargoType": null,
        "height": 0,
        "vessel": "",
        "voyage": "",
        "demurrageStatus": "N/A (please check by individual container number)",
        "demurrageSchedule": null,
        "errorCode": 1,
        "errorDescription": "No result found for the reference number: GAOU6554952"
    }
]
- Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
container_number  | 
containers[n].number  | 
The container reference number  | 
carrier.steamshipLine  | 
containers[n].line  | 
Carrier scac.  | 
carrier.vessel  | 
containers[n].vessel  | 
Carrier vessel number  | 
carrier.voyage  | 
containers[n].voyage  | 
Carrier voyage number  | 
destination.name  | 
locationCode  | 
Name of the location given in query request  | 
destination.type 
 | 
Default 
 | 
This is a static value represents where the 
event happens and it is set to ‘terminal’. 
 | 
event[n].code  | 
yard_description  | 
Eta event is created if estimated in yard_description  | 
event[n].code  | 
containers[n].yard_status  | 
Arrived event is created if grounded in yard_status  | 
event[n].code  | 
containers[n].yard_status  | 
Grounded event is created if grounded in yard_status  | 
event[n].code  | 
containers[n].lfd  | 
Lfd event is created if lfd has a date  | 
event[n].code  | 
containers[n].yard_description  | 
Outgated event is created if delivered in yard_description  | 
event[n].data.holdType  | 
containers[n].holds_line  | 
Hold event is created with hold type as Line Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].hold  | 
Hold event is created with hold type as Customs Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].holds_usda  | 
Hold event is created with hold type as USDA Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].terminal_hold  | 
Hold event is created with hold type as TMF Hold if it has ‘PierPass TMF Hold’  | 
event[n].data.holdType  | 
containers[n].terminal_hold  | 
Hold event is created with hold type as CTF Hold if it has ‘Clean Trucks Fee’  | 
event[n].data.holdType  | 
containers[n].amount  | 
Hold event is created with hold type as Demurage Hold if it has value not equal to 0  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
locationCode  | 
Name of the location given in query request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
Eta Event Response
[
    {
        "availabilityType": "Container",
        "number": "TTRL0000004",
        "line": "TF",
        "holdsLine": "Released",
        "holdsCustoms": "Released",
        "holdsUSDA": "Released",
        "terminalHold": [
            "None"
        ],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "N/A",
        "yardDescription": "On-Board Vessel 05/16/2022 2nd Shift (Estimated)",
        "yardStatus": "On-Board Vessel",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "ZFJ",
        "voyage": "003E",
        "demurrageStatus": "No Demurrage to Calculate<br>Last Free Date unknown. Vessel has not arrived",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Eta event is created if estimated in yardDescription like the one in the previous response.
- ETA Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to arrived  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.Eta  | 
containers[n].yardDescription  | 
Date of the Eta event.  | 
Arrived Event Response
[
    {
        "availabilityType": "Container",
        "number": "TTRA1000004",
        "line": "ED",
        "holdsLine": "HELD",
        "holdsCustoms": "HELD",
        "holdsUSDA": "HELD",
        "terminalHold": [
            "PIERPASS TMF HOLD"
        ],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "N/A",
        "yardDescription": "In Yard (#B011 row) Grounded",
        "yardStatus": "Grounded",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "CET",
        "voyage": "080E",
        "demurrageStatus": "No demurrage to display. Cargo has been delivered",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Arrived event is created if grounded in yardDescription like the one in the previous response.
- Arrived Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to arrived  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.arrived  | 
Default  | 
Today date is a default date  | 
Grounded Event Response
[
    {
        "availabilityType": "Container",
        "number": "TTRA1000004",
        "line": "ED",
        "holdsLine": "HELD",
        "holdsCustoms": "HELD",
        "holdsUSDA": "HELD",
        "terminalHold": [
            "PIERPASS TMF HOLD"
        ],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "N/A",
        "yardDescription": "In Yard (#B011 row) Grounded",
        "yardStatus": "Grounded",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "CET",
        "voyage": "080E",
        "demurrageStatus": "No demurrage to display. Cargo has been delivered",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Grounded event is created if grounded in yardDescription like the one in the previous response.
- Grounded Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to grounded  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.grounded  | 
Default  | 
Today date is a default date  | 
Lfd Event Response
[
    {
        "availabilityType": "Container",
        "number": "UACU5547929",
        "line": "HL",
        "holdsLine": "Released",
        "holdsCustoms": "Released",
        "holdsUSDA": "Released",
        "terminalHold": [
            "None"
        ],
        "lfd": "2022-05-19",
        "amount": 0.0000,
        "hold": "No",
        "yardDescription": "In Yard (#B008 row) Grounded",
        "yardStatus": "Grounded",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "YUQ",
        "voyage": "053E",
        "demurrageStatus": null,
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Lfd event is created if lfd has a date
- Lfd Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to lfd  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.lfd  | 
containers[n].lfd  | 
Last free date for container  | 
Released Event Response
[
    {
        "availabilityType": "Container",
        "number": "UACU5547929",
        "line": "HL",
        "holdsLine": "Released",
        "holdsCustoms": "Released",
        "holdsUSDA": "Released",
        "terminalHold": [
            "None"
        ],
        "lfd": "2022-05-19",
        "amount": 0.0000,
        "hold": "No",
        "yardDescription": "In Yard (#B008 row) Grounded",
        "yardStatus": "Grounded",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "YUQ",
        "voyage": "053E",
        "demurrageStatus": null,
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Released event is created if lfd has a date
- Released Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to released  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.released  | 
Default  | 
Date is defaulted to oday date  | 
Outgated Event Response
[
    {
        "availabilityType": "Container",
        "number": "TTRA0000004",
        "line": "TF",
        "holdsLine": "Released",
        "holdsCustoms": "Released",
        "holdsUSDA": "Released",
        "terminalHold": [
            "VESSEL WORKING AREA"
        ],
        "lfd": "N/A",
        "amount": 0.0000,
        "hold": "NO",
        "yardDescription": "Delivered 03/16/2022 01:40",
        "yardStatus": "",
        "size": 40,
        "cargoType": "SD",
        "height": 96,
        "vessel": "ZFJ",
        "voyage": "003E",
        "demurrageStatus": "No demurrage to display. Cargo has been delivered",
        "demurrageSchedule": null,
        "errorCode": 0,
        "errorDescription": null
    }
]
Note
Outgated event is created if Delivered in yardDescription like the one in the previous response.
- Outgated Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Value is defaulted to outgated  | 
event[n].date  | 
Default  | 
Today date is a default date  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.outgated  | 
containers[n].yardDescription  | 
Date of the outgated event.  | 
event[n].data.outgate_confirmed 
 | 
Default 
 | 
Value is set to True as it is 
and indicator for event as 
outgated or not 
 | 
- Hold Event Data Mapping:
 
Property  | 
Source Property  | 
Description  | 
|---|---|---|
event[n].code  | 
Default  | 
Hold is the default value for the event  | 
event[n].date  | 
Default  | 
Today date is the default date value  | 
event[n].location.name  | 
LocationCode  | 
Location used on request  | 
event[n].location.type  | 
Default  | 
Default value is Terminal.  | 
event[n].data.holdType  | 
containers[n].holds_line  | 
Hold event is created with hold type as Line Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].hold  | 
Hold event is created with hold type as Customs Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].holds_usda  | 
Hold event is created with hold type as USDA Hold if it has HELD  | 
event[n].data.holdType  | 
containers[n].terminal_hold  | 
Hold event is created with hold type as TMF Hold if it has ‘PierPass TMF Hold’  | 
event[n].data.holdType  | 
containers[n].terminal_hold  | 
Hold event is created with hold type as CTF Hold if it has ‘Clean Trucks Fee’  | 
event[n].data.holdType  | 
containers[n].amount  | 
Hold event is created with hold type as Demurage Hold if it has value not equal to 0  | 
event[n].data.code  | 
Default  | 
Code is defaulted to Hold  |