Build on the API
A boring, explicit REST API over your family's Mavo, available directly or through the official TypeScript SDK and CLI.
The Mavo API is for scripts, automations, and apps that work with stable household resources and named product actions. It's deliberately boring: predictable REST paths, JSON in and out, one key per family.
Call it directly over HTTP, use the official TypeScript SDK for typed methods, or use the Mavo CLI from a terminal. All three follow the same public OpenAPI contract and work with the same household data.
Get a key
Create keys in Settings → Developer under "API keys": name it, generate it, and copy it right away (it's shown once). Each key belongs to one family and only works on that family's paths. API access is included with the Max membership.
See what comes with Max, or keep reading for the technical setup.
Call it
Send the key in the x-api-key header. Everything lives under your family's base path:
curl -H "x-api-key: $MAVO_API_KEY" \
https://mavolife.com/api/v1/families/your-family/calendar/events
What's there:
- Collections and entries: lists, groceries, meals, and custom collections, with batch writes.
- Calendar: events, external calendar feeds, and calendar share links.
- Plans: the things the family is planning (a trip, a party, a season), each linking calendar events, notes, and date polls, with an optional public share page.
- People: the household's people.
- Notifications: send notifications, manage preferences and routines, and schedule checks.
- Webhooks: register destinations Mavo can call as things change, with a test delivery.
- Context: one search across the household's collections, members, and upcoming items.
- Helpers: weather, web search, and page reading.
Keys are rate limited to 1,000 requests per day.
Reference
- Browsable API reference, generated from the live schema.
- The same reference as plain Markdown, handy for agents and editors.
- OpenAPI document for codegen and client tooling.
- TypeScript SDK guide for typed apps and scripts.
- Mavo CLI guide for terminal commands.
If you're building for an assistant rather than a script, the MCP connection covers the same actions with sign-in instead of keys. See Connect your assistant.