An API that treats your
data like it’s yours.
A REST API for orders, products, bookings, availability, discounts and locations — plus signed webhooks for everything that moves, and an MCP server for AI assistants. Customers, memberships and the module apps are next. Ship stock tooling, booking widgets, IoT, or anything else that needs to live alongside your tills.
Scoped API keys
Company-wide keys with only the permissions an integration needs, optional location limits and an expiry. Issue and revoke them from the admin.
Signed webhooks
84 event kinds with wildcard subscriptions. HMAC-SHA256 signatures with replay protection, and up to 12 attempts with exponential backoff.
Idempotency-Key
Required on writes. The same key and body returns the stored response for 24 hours, so a network retry never doubles an order.
MCP for AI apps
Connect Claude, ChatGPT, Cursor and others by signing in or with an API key. AI rules keep money, keys and contact details out of reach.
The basics.
- Base URL
https://mavos.com.au/api/v1, described by the OpenAPI 3.1 spec at/api/v1/openapi.json.- Authentication
Authorization: Bearer mavos_live_…. Owners and admins create keys at Settings → Integrations → API, Webhooks & AI apps. Olderpos_live_keys keep working.- Permissions
- Keys are company-wide and carry permissions such as
products:readororders:write, with optional location limits and an expiry. Customer names needcustomers:names; emails and phones needcustomers:contact. Without them those fields come backnull. - Idempotency
- Writes need an
Idempotency-Keyheader (1–255 characters). The same key and body replays the stored response withIdempotent-Replayed: true; a different body answers 409idempotency_conflict. - Pagination
?limit=(1–200, default 50) and?cursor=. Lists answer{ "data": [...], "next_cursor": "…", "has_more": true }.- Money and time
- Money is integer cents. Timestamps are ISO 8601.
- Errors
{ "error": { "code", "message", "request_id", "details" } }with stable codes such asinsufficient_scope,validation_failedandrate_limited.- Headers
- Every response carries
Mavos-Request-Id,Mavos-Api-Version: 2026-10-06andX-RateLimit-Limit/-Remaining/-Reset.
Connect Claude, ChatGPT and other AI apps.
The Mavos MCP server lives at https://mavos.com.au/api/mcp. AI apps can look up sales, products, bookings and more, and make the changes you allow — never beyond the permissions granted or the connecting person’s role. Available on every plan.
Sign in (OAuth)
For Claude, ChatGPT, Cursor, VS Code and any client that supports custom connectors.
- Add
https://mavos.com.au/api/mcpas a custom connector. - The client discovers sign-in from
/.well-known/oauth-protected-resourceand opens Mavos. - Sign in, tick the businesses the app may use and the permissions for each.
The connection acts as you and can never exceed your role in each business. A business that requires two-factor sign-in asks for it before connecting. With more than one business, every tool takes a company argument and get_context lists the choices; over REST, send Mavos-Company.
API key
For clients that can send headers, such as Claude Code. The key’s permissions apply, plus the AI rules below.
claude mcp add --transport http mavos https://mavos.com.au/api/mcp \ --header "Authorization: Bearer mavos_live_…"
Any other client: send Authorization: Bearer mavos_live_… on every request. Streamable HTTP, stateless with JSON responses; protocol versions 2025-11-25, 2025-06-18 and 2025-03-26.
AI rules
Every MCP connection follows these, including an API key used through MCP. A refused call answers ai_forbidden. AI can never:
- Create or change orders, take payments or issue refunds
- Issue or adjust gift cards, or change loyalty balances
- Sign customers up to memberships or cancel them
- Manage webhooks, API keys or users
- See customer email addresses or phone numbers
Customer names are shown only with the “See customer names” permission. Everything is audit-logged under the person who connected the app. People disconnect apps at My account → Connected AI apps; owners and admins see and disconnect every AI connection for the business at Settings → Integrations → API, Webhooks & AI apps.
Tools and resources
get_context- The business, its locations and modules, who the app acts for, its permissions and the AI rules.
search_operations- Find API operations by keyword, module or read/write.
describe_operation- The input schema, result shape and permissions for one operation.
call_read_operation- Run a read operation. Never changes anything.
call_write_operation- Run a write operation, with the AI rules applied.
query_data- Read-only SQL over the business's data with personal details masked. Only with the Query data permission.
Resources: mavos://events/catalogue (every event kind) and mavos://query/tables (the tables query_data can read).