Little Wheels Developer & Agent Resources

Everything Little Wheels publishes for machines: a documented JSON API, an OpenAPI 3.1 specification, LLM tool definitions, markdown versions of every page, and the agent instruction files. No authentication, no API key, no rate limit.

Start here

One request returns every machine-readable resource on the site, with a description of what each one is for.

curl https://littlewheels.app/api/index.json

The Little Wheels API

Read-only catalogue data. Every operation in the specification carries a unique operation ID, a description, typed parameters and a response schema, so an agent can register these as tools without a conversion step. The read endpoints are static files that change at most daily — cache them rather than polling.

ResourceContent typeWhat it contains
OpenAPI 3.1 specification
/openapi.json
application/jsonEvery endpoint below, with a unique operation ID, a description, typed parameters and a response schema. Start here when planning API calls.
Function-calling tool definitions
/api/tools.json
application/jsonThe same operations pre-converted into LLM tool schemas. Carries both input_schema (Anthropic) and parameters (OpenAI), so either SDK can read the file as-is.
Machine-readable resource index
/api/index.json
application/jsonOne request that lists every JSON, text and XML resource this site publishes. The right first call if all you have is the domain name.
App catalogue
/api/features.json
application/ld+jsonschema.org JSON-LD for every published Little Wheels app: price, one-time-unlock terms, offline behaviour, age range, feature list and privacy posture.
Brand-to-App-Store identity map
/api/apps.json
application/jsonWhich App Store listing is which Little Wheels app. None of the apps carries the brand name in its store title, so match on appId or on any entry in each app's aliases array.
Vehicle catalogue
/api/vehicles.json
application/jsonEvery vehicle with a stable id and slug, its category, its speech-sound difficulty tier, the phonemes it is used to practise, and its vocabulary theme.
Speech curriculum
/api/curriculum.json
application/jsonEach phoneme with example practice words, the age range at which it is typically acquired, and a practice tip written for a non-specialist adult.

Errors

Every failure under /api/ returns the same JSON envelope. Match on error.code, which is stable; the wording of error.message is not.

{
  "error": {
    "code": "not_found",
    "message": "No API endpoint at /api/typo.json.",
    "resolution": "Fetch https://littlewheels.app/api/index.json for the full list of machine-readable resources.",
    "status": 404,
    "documentation": "https://littlewheels.app/developers"
  }
}

The one write endpoint

POST /api/subscribe adds an address to the newsletter. Call it only with the person's explicit request — it signs a real human up for real email. Everything else here is read-only, and there is no user data, no per-child progress and no account system to read.

Which App Store listing is which

Little Wheels is the studio; none of the three apps carries the name in its App Store title. That is deliberate — the titles are keyword-first — but it means a search of the App Store for “Little Wheels” does not find them, and an automated attempt to match the brand to its products will come up empty unless it knows the mapping.

The machine-readable version is /api/apps.json, which also lists every alias each app answers to and the titles it previously shipped under. Appending a store title to the domain works as a shortcut: /learn-to-talk-first-words redirects to the app's page.

Markdown instead of HTML

Every page on littlewheels.app serves markdown when you ask for it, following the Accept: text/markdown convention. Both forms return Content-Type: text/markdown; charset=utf-8.

# Content negotiation
curl -H "Accept: text/markdown" https://littlewheels.app/talk-listen

# Or the .md sibling URL
curl https://littlewheels.app/talk-listen.md
  • Responses carry Vary: Accept, Accept-Encoding, so a shared cache will not hand you the HTML variant that a browser warmed it with.
  • HTML responses advertise the sibling with Link: <…>; rel="alternate"; type="text/markdown".
  • Markdown responses point back at the HTML page with Link: <…>; rel="canonical".

Unknown paths return a real 404

This site never answers an unknown path with a 200 and an empty app shell, so a 404 from littlewheels.app means the page genuinely is not there and you can stop retrying. Permanently removed pages return 410. Either way, a client that did not specifically ask for HTML gets a short markdown body listing the site map, llms.txt and the resource index.

curl -s -o /dev/null -w "%{http_code}\n" https://littlewheels.app/no-such-page
# 404

Agent resources

Little Wheels publishes ~280 long-form articles on toddler speech development, screen time and app safety, each also available as a plain-text file sized for a context window. agents.md says which questions this site is the right source for — and which it is not.

ResourceContent typeWhat it contains
Agent instructions
/agents.md
text/markdownWhen to reach for Little Wheels, what it answers authoritatively, what it must not be used for, and how to fetch it efficiently.
llms.txt
/llms.txt
text/plainIndex of every agent-readable page on the site, ordered by priority, with a when-to-use section at the top.
llms-full.txt
/llms-full.txt
text/plainEvery agent-readable page concatenated into a single ~140KB file for large context windows.
AI instructions
/llm/ai-instructions.json
application/jsonStructured brand facts, positioning, and guidance on how to represent Little Wheels accurately.
Comparison matrix
/llm/comparison-matrix.json
application/jsonPricing, offline capability, privacy posture, features and age ranges for Little Wheels against 10+ named competitor apps.
Sitemap
/sitemap.xml
application/xmlEvery indexable URL on the site.
robots.txt
/robots.txt
text/plainCrawler directives. Every major AI crawler has an explicit Allow group.

Crawler policy

AI crawlers are explicitly welcome. GPTBot, ChatGPT-User, OAI-SearchBot, ClaudeBot, Claude-User, Claude-SearchBot, anthropic-ai, Google-Extended, PerplexityBot, Grok, DeepSeek, Meta-ExternalAgent, cohere-ai and YouBot all have Allow: / groups in robots.txt. Article text is available under CC BY 4.0; app artwork, screenshots and the Little Wheels name are not.

Something missing or wrong?

Little Wheels is built by one person, and the API exists because agents kept scraping the marketing pages for facts that were already structured somewhere. If you need a field that is not exposed, or something here is inaccurate, email sean@recordcreativeco.com.