Skip to main content

Track

GET /api/tracking/{packageId}

Returns tracking status using packageId.

  • URL: https://parcelconnect.apc-pli.com/api/tracking/{packageId}
  • Auth: HTTP Basic — see Authentication.

Request

curl -X GET -H "Authorization: Basic {{basic_token}}" \
"https://parcelconnect.apc-pli.com/api/tracking/{{packageId}}"

Response

{
"hasBeenProcessed": true,
"hasBeenShipped": true,
"isEnRoute": false,
"hasArrived": true,
"shipDate": "01/01/2026 02:41:00 PM",
"packageNumber": "12345P01234567890",
"carrierTrackingNumber": null,
"shipToAddress": "M5V 3L9 CA",
"carrier": "APC",
"serviceName": "APC Priority DDP w/ DC",
"serviceDescription": null,
"finalMileCarrier": "",
"trackingReference1": "Order#1002",
"trackingReference2": "",
"lowerTransit": 0,
"upperTransit": 0,
"externalTrackingUrl": null,
"iconUrl": null,
"prefix": null,
"estimatingDeliveryTimeFrom": null,
"estimatingDeliveryTimeTo": null,
"events": [
{
"date": "11/01/2026 07:45:00 PM",
"code": "11",
"description": "Your order was delivered!",
"location": "East Rutherford, NJ",
"countryCode": "US",
"eventDateTimeISOFormat": "2026-11-01T19:45:00+00:00",
"eventCategory": "Delivered",
"eventCategoryId": 14
},
{
"date": "10/14/2026 02:42:00 PM",
"code": "09",
"description": "Your order is on the way.",
"location": "East Rutherford, NJ",
"countryCode": "US",
"eventDateTimeISOFormat": "2026-10-14T14:42:00+00:00",
"eventCategory": "In Transit",
"eventCategoryId": 7
}
]
}

Response fields — top level

FieldTypeDescription
hasBeenProcessedbooleantrue once APC has received and processed the package data.
hasBeenShippedbooleantrue once the package has physically departed APC.
isEnRoutebooleantrue while the package is in transit to its destination.
hasArrivedbooleantrue when the package has reached its final delivery location.
shipDatestringDate and time the package shipped, formatted MM/DD/YYYY hh:mm:ss AM/PM.
packageNumberstringFull APC tracking number (account-prefixed).
carrierTrackingNumberstring | nullFinal-mile carrier tracking number, if assigned.
shipToAddressstringBrief recipient address summary (postal code + country).
carrierstringCarrier handling the package (typically APC).
serviceNamestringHuman-readable APC service name (e.g., APC Priority DDP w/ DC).
serviceDescriptionstring | nullOptional longer service description.
finalMileCarrierstringFinal-mile carrier name if handed off.
trackingReference1stringCustom reference value 1, echoed from the label request.
trackingReference2string
lowerTransitintegerLower bound of the estimated transit window (in days).
upperTransitintegerUpper bound of the estimated transit window (in days).
externalTrackingUrlstring | nullExternal tracking URL on the final-mile carrier's site, if available.
iconUrlstring | nullURL of the final-mile carrier's status icon, when a final-mile carrier with an icon is assigned; otherwise null.
prefixstring | null
estimatingDeliveryTimeFromstring | nullEstimated delivery window — start. Calculated as the ship date plus the final-mile carrier's lower transit time (in business days). null unless a final-mile carrier with a defined transit range is assigned.
estimatingDeliveryTimeTostring | nullEstimated delivery window — end. Calculated as the ship date plus the final-mile carrier's upper transit time (in business days). null unless a final-mile carrier with a defined transit range is assigned.
eventsarrayTracking events in reverse-chronological order. See below.

Response fields — events[]

FieldTypeDescription
datestringEvent timestamp formatted MM/DD/YYYY hh:mm:ss AM/PM, in UTC.
codestringEvent code. See the full Tracking Events reference.
descriptionstringCustomer-facing description of the event. Empty string if the event code is not recognized.
locationstringLocation where the event was scanned (e.g., East Rutherford, NJ).
countryCodestringISO 3166 2-character country code for the scan location.
eventDateTimeISOFormatstringEvent timestamp in ISO 8601 format. The value is UTC; the trailing offset reflects the server's configured timezone.
eventCategorystringHigh-level category (e.g., Delivered, In Transit, On Hold). Empty string if the event code is not recognized.
eventCategoryIdinteger | nullNumeric category ID. See Tracking Events for the mapping. null if the event code is not recognized.