GPA

Provider Information:

Id

gpa

Type

terminal

Trace Type

API

Credentials

user and password and it is customer based

Limits

Maximum number of containers per request is 100

Status

completed

Doc Status

draft

Doc Version

1

URLs:

Type

URL

Environment

Request

gpasftp.gaports.com

DEV/STG/PRD

Sites:

Name

Site Id

Description

name

ern

the description

Important

Gpa is considered a Request/Delayed Retrieve Workflow which means it traces containers through three main processes:

Publishing Requests: Container tracking requests are sent to the provider system, ensuring that the provider is aware of the containers to be tracked, this is done by pushing a file with the containers number into the gpa server.

Scheduled Retrieval: A cron job runs every 30 minutes to check for pending requests, groups them by customer, and then calls the third process which fetches the latest status from the provider system.

Processing Responses: Fetches the latest status of the container info from the server, Retrieved data is normalized and stored. Successfully retrieved containers are marked as successful result, while missing containers are re-published for another attempt in the next cycle.

Publish Request Payload Function Example

{
    "orgId": "3b42ff39-d731-43f6-a8a2-1b257f87469e",
    "svcId": "7cd437c3-f25a-4e22-b221-47b6485f140d",
    "type": "CONTAINER",
    "action": "TRACE_REQUESTED",
    "origin":  "profit-tools-web-services-trace-requested",
    "payload": {
        "providerId": "gpa",
        "siteId": "",
        "containers": [{
            "id": "CONT-123456",
            "normalizedId": "CONT123456"
        }],
        "data": {
            "companyName": "COMPANY"
        }
    }
}

Note

The above request will create a file with the container number and push it to the gpa server, the file will be picked up by the gpa server and the container will be traced and the result will be sent back to the system. Publishing requests above only pushing a file with the container number into the gpa server.

Scheduled retrieval process Function Example

{}

Important

This process is runnning without any required payload attributes.

Note

Scheduled retrieval process runs every configurable amount of time, currently it is configured to run every 30 minutes to check for pending requests, groups them by customer, and fetches the latest status from the provider system by calling the third process to retrieve results.

Processing Response Payload Function Example

{
    "orgId": "3b42ff39-d731-43f6-a8a2-1b257f87469e",
    "svcId": "7cd437c3-f25a-4e22-b221-47b6485f140d",
    "type": "CONTAINER",
    "action": "TRACE_REQUESTED",
    "origin":  "profit-tools-web-services-trace-requested",
    "payload": {
        "providerId": "gpa",
        "siteId": "",
        "containers": [{
            "id": "CONT-123456",
            "normalizedId": "CONT123456"
        }],
        "data": {
            "companyName": "COMPANY"
        }
    }
}

Note

Gpa push a response as a file into the a directoy on thier system “data/out”, the file will be picked up by the our function and the result will be from the file will be normalized to be sent to the tms application later.

Responses

Grounded Response

TTGP1000005,N,,,40/DR/96,C,N,RELEASED,RELEASED,,142353692555,N,20-JAN-2024 07:00,,,EVE,,GCT-EVER FORE

Hold Response

TTGP0000007,N,,,40/DR/96,V,N,HOLD,HOLD,HOLD,142353692555,N,,,,EVE,,GCT-EVER FORE

Outgated Response

TTGP4000008,N,,,40/DR/96,V,N,RELEASED,RELEASED,,142353692555,N,,,19-FEB-2024 07:00,EVE,,GCT-EVER FORE

Not found /Not traced containers Response

TTGP1000009,Y,,,40/DR/96,V,N,RELEASED,RELEASED,,142353692555,N,,25-FEB-2024 07:00,,EVE,,GCT-EVER FORE
TTGP4000007,N,,,40/DR/96,V,N,RELEASED,RELEASED,,142353692555,N,,,19-FEB-2024 07:00,EVE,,GCT-EVER FORE
Data Mapping:

Property

Source Property

Description

containerNumber

row[0]

The container reference number

length

row[4]

The container length

carrier.steamshipLine

row[15]

Carrier scac.

carrier.vessel

row[17]

Represents the carrier vessel

carrier.voyage

TRCVOYAGE

Carrier voyage number

event[n].code

row[5]

Grounded event is created if row[5] == ‘C’

event[n].code

row[7], row[8], row[9]

Outgated event is created if row[7] and row[8] == ‘RELEASED’ and row[9] is empty

event[n].data.holdType

row[7]

Hold event is created with hold type as Line Hold if it has value

event[n].data.holdType

row[8]

Hold event is created with hold type as Customs Hold if it has value

event[n].data.holdType

row[9]

Hold event is created with hold type as USDA Hold if it has value

event[n].date

row[14]

Represents the date of the event

event[n].location.type

Default

Default value is Terminal.