Use case · Package tracking
Monitor any courier tracking link — DHL, UPS, FedEx, USPS, DPD, Royal Mail — with one API. Meerkat's agent reads the carrier's page on a schedule, detects state changes, and POSTs structured JSON to your endpoint. No per-carrier SDKs, no polling code, no LLM tool loops to maintain.
Pass a courier_tracking_link in plain text. Meerkat handles the rest, so adding a new carrier is zero code.
You hear from us when the state moves — In transit → Out for delivery → Delivered. Quiet otherwise.
HMAC-SHA256 signatures, exponential backoff, idempotency keys. Same delivery guarantees Stripe uses.
Bring Anthropic, OpenAI, OpenRouter or Grok. You own the spend and the model choice.
Example request
curl -X POST https://meerkatagents.com/api/v1/tasks \
-H "Authorization: Bearer mk_live_..." \
-H "Content-Type: application/json" \
-d '{
"task_type": "recurring",
"description": "Monitor DHL tracking and report status changes",
"input_params": {
"courier_tracking_link": "https://dhl.de/track?id=00340..."
},
"frequency": "every 2 hours",
"output_webhook": "https://your-app.com/hook"
}'
FAQ
Any courier with a public tracking page. Meerkat reads the page with an LLM agent, so DHL, UPS, FedEx, USPS, Royal Mail, DPD, Australia Post, Aramex and most regional carriers work without per-carrier integrations.
Any cadence — every 15 minutes, hourly, every 2 hours, or a custom cron. Meerkat only POSTs to your webhook when the status actually changes, so you don't pay for noise.
No. Use Meerkat Cloud and bring your own LLM key, or self-host the open source server on Render, Fly.io, or Docker — same API either way.
A signed JSON POST with task_id, status (changed / unchanged / error), and a findings object containing courier, state, ETA, and location. HMAC-SHA256 signed and retried with exponential backoff until 2xx.
Sign up, connect your LLM key in onboarding, and register a task in under five minutes.