Class: Terminal49Client
Server-side TypeScript client for the Terminal49 JSON:API. Use this client to create tracking requests, list and fetch shipments and containers, retrieve transport events, and work with core Terminal49 tracking data from Node.js applications.Constructors
Constructor
new Terminal49Client(config):Terminal49Client
Parameters
| Parameter | Type |
|---|---|
config | Terminal49ClientConfig |
Returns
Terminal49Client
Properties
| Property | Modifier | Type |
|---|---|---|
containers | public | ContainerManager |
shipments | public | ShipmentManager |
shippingLines | public | ShippingLineManager |
trackingRequests | public | TrackingRequestManager |
Methods
createTrackingRequest()
createTrackingRequest(Create a tracking request with an explicit number type and carrier SCAC.params):Promise<any>
Parameters
| Parameter | Type |
|---|---|
params | { refNumbers?: string[]; requestNumber: string; requestType: TrackingRequestType; scac?: string; shipmentTags?: string[]; } |
params.refNumbers? | string[] |
params.requestNumber | string |
params.requestType | TrackingRequestType |
params.scac? | string |
params.shipmentTags? | string[] |
Returns
Promise<any>
createTrackingRequestFromInfer()
createTrackingRequestFromInfer(Infer carrier/number type, then create a tracking request from the result.number,options?):Promise<{infer:any;trackingRequest:any; }>
Parameters
| Parameter | Type |
|---|---|
number | string |
options | CreateTrackingRequestFromInferOptions |
Returns
Promise<{ infer: any; trackingRequest: any; }>
deserialize()
deserialize<Deserialize a JSON:API document into plain objects. Useful when you want a simplified shape instead of JSON:API.T>(document):T
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
document | unknown |
Returns
T
Remarks
The cast is unchecked at runtime — the caller is responsible for verifying the returned shape matchesT.
getContainer()
getContainer(Fetch a container by ID with optional included relationships.id,include?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
include | IncludeParam<ContainerInclude> |
options? | CallOptions |
Returns
Promise<any>
getContainerRawEvents()
getContainerRawEvents(Fetch raw carrier/terminal events for a container.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
getContainerRoute()
getContainerRoute(Fetch routing details for a container. This may require a paid Terminal49 feature.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
getContainerTransportEvents()
getContainerTransportEvents(Fetch normalized transport events for a container.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
getDemurrage()
getDemurrage(Return a demurrage-focused subset of container fields.containerId):Promise<any>
Parameters
| Parameter | Type |
|---|---|
containerId | string |
Returns
Promise<any>
getRailMilestones()
getRailMilestones(Return rail milestone fields and rail transport events for a container.containerId):Promise<any>
Parameters
| Parameter | Type |
|---|---|
containerId | string |
Returns
Promise<any>
getShipment()
getShipment(Fetch a shipment by ID, optionally including related containers.id,includeContainers?,options?):Promise<any>
Parameters
| Parameter | Type | Default value |
|---|---|---|
id | string | undefined |
includeContainers | boolean | true |
options? | CallOptions & object | undefined |
Returns
Promise<any>
getTrackingRequest()
getTrackingRequest(Fetch a tracking request by ID.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions & object |
Returns
Promise<any>
inferTrackingNumber()
inferTrackingNumber(Infer a tracking number’s type and likely carrier candidates.number):Promise<any>
Parameters
| Parameter | Type |
|---|---|
number | string |
Returns
Promise<any>
listContainers()
listContainers(List containers with optional filters and pagination.filters?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
filters | { carrier?: string; include?: IncludeParam<ContainerInclude>; port?: string; status?: string; updatedAfter?: string; } |
filters.carrier? | string |
filters.include? | IncludeParam<ContainerInclude> |
filters.port? | string |
filters.status? | string |
filters.updatedAfter? | string |
options? | ListOptions |
Returns
Promise<any>
listShipments()
listShipments(List shipments with optional filters and pagination.filters?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
filters | { carrier?: string; include?: IncludeParam<ShipmentInclude>; includeContainers?: boolean; port?: string; status?: string; updatedAfter?: string; } |
filters.carrier? | string |
filters.include? | IncludeParam<ShipmentInclude> |
filters.includeContainers? | boolean |
filters.port? | string |
filters.status? | string |
filters.updatedAfter? | string |
options? | ListOptions |
Returns
Promise<any>
listShippingLines()
listShippingLines(List supported shipping lines, optionally filtered by search text.search?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
search? | string |
options? | CallOptions |
Returns
Promise<any>
listTrackingRequests()
listTrackingRequests(List tracking requests with optional filters and pagination.filters?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
filters | TrackingRequestListFilters |
options? | ListOptions |
Returns
Promise<any>
listTrackRequests()
listTrackRequests(Alias for listTrackingRequests.filters?,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
filters | TrackingRequestListFilters |
options? | ListOptions |
Returns
Promise<any>
refreshContainer()
refreshContainer(Request an immediate refresh for a container. This may require a paid Terminal49 feature.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
resumeTrackingShipment()
resumeTrackingShipment(Resume tracking a previously stopped shipment.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
search()
search(Search across shipments and containers by number, reference, or keyword.query):Promise<any>
Parameters
| Parameter | Type |
|---|---|
query | string |
Returns
Promise<any>
stopTrackingShipment()
stopTrackingShipment(Stop tracking a shipment and its containers.id,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
options? | CallOptions |
Returns
Promise<any>
trackContainer()
trackContainer(Convenience helper for creating a tracking request from a container or booking number.params):Promise<any>
Parameters
| Parameter | Type |
|---|---|
params | { bookingNumber?: string; containerNumber?: string; refNumbers?: string[]; scac?: string; } |
params.bookingNumber? | string |
params.containerNumber? | string |
params.refNumbers? | string[] |
params.scac? | string |
Returns
Promise<any>
updateShipment()
updateShipment(Update shipment attributes such as reference numbers or tags.id,attrs,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
attrs | Record<string, any> |
options? | CallOptions |
Returns
Promise<any>
updateTrackingRequest()
updateTrackingRequest(Update tracking request attributes.id,attrs,options?):Promise<any>
Parameters
| Parameter | Type |
|---|---|
id | string |
attrs | Record<string, any> |
options? | CallOptions |
Returns
Promise<any>