Skip to content

GetWO

Returns one work order by its ID: its header, its services, its events and data fields with their values, its KPIs and its assets. Use it to read the work orders that CreateJob created, or those that GetWOListByUpdated lists as changed. To read all the work orders of a job at once, use GetJob; to read only some events and data fields, use GetSeqData.

How to sign in and read the response: Authentication, Responses.

GET /api/v1/GetWO?ID=48211
Token: your-token
Parameter Required Meaning
ID Yes The work order’s ID, a whole number.

Without ID, the request does not reach the endpoint, and TrakIT answers with HTTP status 404. An ID that is not a whole number also gets an HTTP error status instead of the usual answer. See Errors.

Rule Info when it fails
The Token header holds a valid token. Token missing in header, Token invalid or expired, or another answer listed in Login token
The user is a system administrator with API access. API User must be SysAdmin with API Access

On success, RetInfo is the work order. RowsAffected and Identity are 0.

Check RetInfo before you read it: it is null when no work order has that ID.

{
"Code": 1,
"Info": "",
"RetInfo": {
"WorkOrderID": 48211,
"Workflow": "Import Sea Freight",
"WFType": "Import",
"JobID": 10457,
"Job": "EXBL2610045",
"JobType": "Door to Door",
"ContNum": "ABCU1234560",
"TypeCode": "22G1",
"ContLength": 20,
"SealNum": "SL778812",
"Commodity": "Ceramic tiles",
"LocationList": "Example Port - Container Terminal; Example City - Customer Warehouse",
"ParentWO": null,
"Resp": "JSMITH",
"CarrierID": 1187,
"CustomerID": 3021,
"ShipperID": 3022,
"ReceiverID": 3021,
"AgentID": null,
"ClAgentID": 2304,
"TransID": 2210,
"RetTransID": null,
"Weight": 21450.500,
"Volume": null,
"Status": 0,
"Responsible": "John Smith",
"Trans": "Example Haulage Ltd",
"RetTrans": null,
"Services": [
{ "ServiceID": 4, "ServiceName": "Customs Clearance" },
{ "ServiceID": 6, "ServiceName": "Delivery" }
],
"Events": [
{ "Name": "Vessel Arrival", "Code": "VSLARR", "Value": "2026-10-20 06:30", "Remarks": null, "Updated": "2026-10-20T07:02:11.483", "UpdatedBy": "JSMITH" },
{ "Name": "Gate Out", "Code": "GATEOUT", "Value": "", "Remarks": null, "Updated": null, "UpdatedBy": null }
],
"Data": [
{ "Name": "Delivery Order No", "Code": "DONUM", "Value": "DO-55120", "Remarks": null, "Updated": "2026-10-20T09:15:40.12", "UpdatedBy": "JSMITH" }
],
"KPIs": [
{ "KPI": "Arrival to Gate Out", "FromDate": "2026-10-20T06:30:00", "ToDate": null, "Target": 72, "Actual": 30 }
],
"Assets": []
},
"RowsAffected": 0,
"Scalar": null,
"Identity": 0
}

GetJob returns its work orders in the same form. The labels in bold are those of the header fields.

Field Meaning
WorkOrderID The work order’s ID.
Workflow, WFType The workflow’s name and type: Import, Export, RoundTrip or NonShipment.
JobID, Job The job’s ID and reference.
JobType The names of the job’s job types, separated by a comma and a space. Empty when it has none.
ContNum Container No., or an empty string.
TypeCode Load Type: the load type’s code, or null.
ContLength The length in feet that the load type code stands for, for example 20 for 22G1 and 45 for L5G1. 0 without a load type, or when the code gives no length.
SealNum Seal Number, or an empty string.
Commodity Commodity, or an empty string.
LocationList The location list as text: each location after its parent place, Parent - Location, separated by ; . Empty when the work order has none.
ParentWO The ID of the work order this one was created from, its parent work order, or null.
Resp, Responsible Responsible Person: the user ID and the user’s name.
CarrierID Carrier: the entity’s ID, or 0 when there is none.
CustomerID, ShipperID, ReceiverID The job’s Customer, Shipper and Receiver: entity IDs, or null.
AgentID, ClAgentID Bond Agent and Clearing Agent: entity IDs, or null.
TransID, Trans Transporter: the entity’s ID and name, or null.
RetTransID, RetTrans Return Transporter: the entity’s ID and name, or null.
Weight Weight, in kilograms.
Volume Volume, in cubic metres, or null.
Status The work order’s status on the work order page, as a number: 0 Active, 1 Abandoned, 2 Cancelled, 3 Closed by a user, an integration or an action, 4 Closed by TrakIT itself, once the required events and data were filled in or after the work order was abandoned.
Services The work order’s services: ServiceID and ServiceName. An empty list if it has none.
Events All the work order’s events, recorded or not, in the workflow’s order. See below.
Data All the work order’s data fields, filled in or not, in the workflow’s order, with the same fields as Events.
KPIs The work order’s KPIs. See below.
Assets The assets assigned to the work order, in the order they were assigned: AssetID, AssetName, AssetSerial, and TypeID, the ID of the asset type. An empty list if it has none.

Each entry of Events and Data:

Field Meaning
Name The event’s or data field’s name.
Code Its code. GetSeqData and SaveSeqData take this code.
Value The value, as text, or an empty string. For an event, the date and time as recorded, for example 2026-10-20 06:30, or NA (not applicable) or TBA (to be advised).
Remarks The remarks, or null.
Updated When the value was last saved, in UTC, or null if it never was.
UpdatedBy The user ID of the user who saved it, or null.

Each entry of KPIs:

Field Meaning
KPI The KPI’s name.
FromDate, ToDate The times the KPI runs between, as on the work order’s KPIs tab, or null while not known.
Target The time allowed, in hours, or null. For a KPI in business hours, a day counts 8 hours.
Actual The time taken so far, in hours, or null.