Singapore Post package tracking, and the API behind it.

Singapore's national post: SingPost and Speedpost. One free lookup a day, no sign-up.

Also known as SingPost, Speedpost.

Singapore Post tracking numbers

We recognize these formats from the number alone. For anything else from Singapore Post, add ?carrier=singpost.

UPU S10
AA123456785SG
Example (format only)
EE123456785SG
Category
International posts and couriers
API carrier code
singpost

Singapore Post tracking API quickstart

One request per number, or up to 100 at once with ?numbers=a,b,c. Your agents can use the same data over MCP.

REST

curl "https://api.lastscanned.com/v1/track/EE123456785SG?carrier=singpost"

Claude Code

claude mcp add --transport http lastscanned https://mcp.lastscanned.com

Then ask

> Where is my Singapore Post package EE123456785SG? When will it arrive?

Singapore Post tracking FAQ

How do I track a Singapore Post package?
Paste the tracking number into the lookup on this page. We read Singapore Post's own tracking data and show every scan, the current status and the delivery details. Anyone can do one lookup a day without signing up.
Is there a Singapore Post tracking API?
Yes. GET https://api.lastscanned.com/v1/track/:number?carrier=singpost returns Singapore Post tracking as JSON, in the same shape as every other carrier lastscanned covers. Sign up for a free key with 5 lookups a day, or Pro for $4.99 a month with 1,000 numbers.
What does a Singapore Post tracking number look like?
UPU S10: AA123456785SG. For example EE123456785SG. lastscanned recognizes these formats on its own, so ?carrier=singpost is optional for them.
Does this work for SingPost and Speedpost numbers?
Yes. They are tracked through Singapore Post and come back as carrier "singpost".
Can an AI agent track Singapore Post packages?
Yes. Add lastscanned as an MCP server (https://mcp.lastscanned.com) in Claude, ChatGPT, Cursor or VS Code and ask it where a Singapore Post parcel is.

Other carriers

International posts and couriers

Tracking pages are for people. This is for your code.

Every carrier shows a parcel differently. lastscanned reads them all and answers in one shape, so your app, your spreadsheet or your agent handles any carrier the same way.

Carrier websitelastscanned API
CarriersOne carrier per site125 carriers behind one endpoint
ResponseA web page to readThe same JSON for every carrier
VolumeOne number at a timeUp to 100 numbers per request
AgentsCopy and pasteMCP server for Claude, ChatGPT and Cursor
AutomationCheck back by handPoll from your own code or workflow

Free: 5 numbers a day with a key. Pro: $4.99 a month for 1,000 numbers, then $0.015 each.