Carriers

ACS Courier Tracking API & MCP

Query live ACS Courier (acscourier) package status and scan history in a single synchronous GET request or MCP tool call.

Overview & Quick Facts

PropertyValue
Carrier slug (?carrier=)acscourier
Brand aliasesACS, ACS Courier Greece, ACS Cyprus
CategoryDomestic and international parcels (Greece, Cyprus)
Single-package REST endpointGET https://api.lastscanned.com/v1/track/{trackingNumber}
Batch REST endpointGET https://api.lastscanned.com/v1/track?numbers=...,...
MCP server (https://mcp.lastscanned.com)track_package, track_packages, list_carriers
Authentication & pricingAuthorization: Bearer lsk_live_... · 1 free keyless lookup/day per IP

Tracking Number Formats & Auto-Detection

PassRule / RegexCheck DigitExamples
Pass 1 (matches)nonenonenone
Pass 2 (mayMatch)nonenonenone

matches and mayMatch are both empty: ACS numbers are 10 digits, a shape that DHL Express and others share, so pass ?carrier=acscourier.

Synchronous GET Request & Normalized JSON Response

curl -s "https://api.lastscanned.com/v1/track/9876543210?carrier=acscourier" \
  -H "Authorization: Bearer $LASTSCANNED_API_KEY"
{
  "carrier": "acscourier",
  "trackingNumber": "9876543210",
  "status": "delivered",
  "statusDescription": "Delivery to consignee",
  "service": null,
  "deliveredAt": "2026-10-13T16:50:59Z",
  "deliveredAtLocal": "2026-10-13T19:50:59",
  "signedBy": "AB******CD",
  "destination": null,
  "events": [
    {
      "timestamp": "2026-10-13T16:50:59Z",
      "localTime": "2026-10-13T19:50:59",
      "status": "delivered",
      "description": "Delivery to consignee",
      "location": "KOS",
      "code": "ΚΩ-1"
    },
    {
      "timestamp": "2026-10-13T06:09:08Z",
      "localTime": "2026-10-13T09:09:08",
      "status": "out_for_delivery",
      "description": "On delivery",
      "location": "KOS",
      "code": "ΚΩ-1"
    },
    {
      "timestamp": "2026-10-10T18:09:32Z",
      "localTime": "2026-10-10T21:09:32",
      "status": "in_transit",
      "description": "Arrival to",
      "location": "KOS",
      "code": "ΚΩ-1"
    },
    {
      "timestamp": "2026-10-08T16:22:23Z",
      "localTime": "2026-10-08T19:22:23",
      "status": "in_transit",
      "description": "Arrival-departure from HUB",
      "location": "HUB ATHINON",
      "code": "Α1-2"
    },
    {
      "timestamp": "2026-10-08T09:42:26Z",
      "localTime": "2026-10-08T12:42:26",
      "status": "label_created",
      "description": "Print ACSConnect/WebTools label",
      "location": "ELEFSINA",
      "code": "ΑΥ-1"
    }
  ]
}

Notes

  • Source: the JSON that the ACS tracking page (cyp.acscourier.net) calls. It needs the page's public token, which lastscanned reads from the home page first. No account is needed.
  • Time zone: Greece and Cyprus both run on EET/EEST, so scan clocks are converted from Europe/Athens.
  • Status: isDelivered and isReturned from ACS decide the parcel status; "On delivery" scans map to out_for_delivery.
  • signedBy: ACS prints the receiver masked (AB******CD); it is passed through as is.

On this page