A read-only API for pulling the data you see in your Littledata agency dashboard into your own tools — an AI agent, an automation platform like Zapier or Make, or a script you run yourself.
Setup is two steps: create a token, then make GET requests. No OAuth, no SDK, no approval process.
Base URL: https://alnmpsr7dc.execute-api.us-east-1.amazonaws.com/prod
Machine-readable spec:
openapi.yaml. AI agents can also discover this API viallms.txt.
curl -H "Authorization: Bearer ldat_<your-token>" \
https://alnmpsr7dc.execute-api.us-east-1.amazonaws.com/prod/agency/customers
That returns every store you can access, as JSON. The three other endpoints drill into a single store using the shopName values from this list. That’s the whole API.
GET requests work. (Littledata’s own staff can mint a separate write-scoped token for internal tooling; that scope is refused to agency accounts and is documented in the CIP contract, not here.)All endpoints are GET and return JSON.
GET /agency/customersEvery store you can access, one object per store:
| Field | Type | Notes |
|---|---|---|
_id |
string | Internal id |
shopName |
string | Usually *.myshopify.com — the key for the endpoints below |
domain |
string? | Storefront domain, when known |
plan |
string? | Littledata plan name |
destinations |
array | Connected destinations (type, destinationId, etc.) |
phase |
string | "trialing", "paying", or "uninstalled" |
churnedAt |
string? | ISO 8601, when the store has churned |
healthScore |
number? | When computed |
healthStage |
string? | "Red", "Yellow", or "Green" |
Returns [] if your account has no verified stores yet.
GET /agency/customers/{shopName}Detail for a single store. Everything in the list row above, plus:
| Field | Type | Notes |
|---|---|---|
planPrice |
number | Monthly plan price, USD |
parentShopName |
string? | For multi-store groups |
subsidiaryShopNames |
string[]? | For multi-store groups |
valueMetrics |
object? | bestTier, optional incrementalTier / roiTier, monthlyPlanCost, computedAt — each figure is defined in the value metrics glossary |
GET /customers/{shopName}The full payload behind a store’s audit page — the same page you can open from the dashboard. Includes value messaging copy, plan usage against the store’s order limit, and the store’s connected Slack channels.
GET /customers/{shopName}/audit-checksEvery current audit check for the store. Each check has a check name (e.g. orderThroughput), a numeric status from the shared AuditStatus wire enum (-1 UNKNOWN, 0 SUCCESS, 1 INFO, 2 WARNING, 3 ERROR), the destination it ran against (entityType, entityId), and updatedAt. What each check means is documented in the audit guides.
For all three per-store endpoints, {shopName} is the value from the list response. URL-encode it if your tool doesn’t do that automatically.
Any tool with a “custom integration” or “custom REST API” option can use this API as-is. The form usually asks for:
| Field | What to enter |
|---|---|
| Name | Whatever you’ll recognise, e.g. Littledata Monitor AI |
| Base URL | https://alnmpsr7dc.execute-api.us-east-1.amazonaws.com/prod — keep the /prod on the end |
| Allowed methods | GET only |
| Authentication | Bearer token |
| API token | The ldat_... value from step 1 |
| Documentation URL | https://littledata.github.io/monitoring-ai/openapi.yaml for the machine-readable spec, or https://littledata.github.io/monitoring-ai/AGENCY_API.html for this guide |
Save, and it works. Run the quick-start curl first if you want to confirm the token before pasting it in.
Good to know:
Create, list, and revoke tokens at monitor.littledata.io/agency/api-tokens. These actions require you to be logged in — an API token can’t create or revoke other tokens.
| Code | Meaning |
|---|---|
401 |
Missing, malformed, expired, or revoked token — or a non-GET request with a read-only token. |
403 |
Token is valid, but you don’t have access to this store. |
404 |
No record for that shopName. |
405 |
Non-GET request that made it past routing (tokens are read-only). |