Developer integration
The Ondes PRO REST API
Every Ondes PRO workspace exposes a versioned REST API under /api/v1/: products, orders, stock, quotes, invoices, CRM records, Kanban cards, calendar events and more. Around 135 resources, documented from your workspace’s real routes, with scoped API keys, an OpenAPI 3.1 schema, signed webhooks and a test mode for risk-free payments.
Type your workspace name: the configurations on this page adapt. It is remembered in this browser only.
Your first Ondes PRO REST API call
Create a key under Admin → API & Developers → API keys, then send it in the Authorization header. This call lists invoices past their due date and keeps only three fields.
curl "https://your-workspace.ondes.pro/api/v1/billing/factures/?statut=en_attente&date_echeance__lt=2026-10-21&fields=numero,date_echeance,etat" \
-H "Authorization: ApiKey opk_…"The key is shown only once, when you create it. Keep it in a secrets manager.
How to authenticate: API key, JWT or session
An API key (Authorization: ApiKey opk_…) carries scopes shaped module:action, such as billing:read. A scope is a ceiling: access requires the scope and the module permission in the holder’s role. A key can therefore never outreach the person who created it, and each key has its own per-minute quota.
A handful of resources never accept a key, because they touch permissions themselves (roles) or end-to-end encrypted content (messaging). Those need a JWT or an admin session. Each resource sheet says so, and the API answers with an explicit refusal rather than an empty result.
How API v1 keeps you out of trouble
- Idempotency: an
Idempotency-Keyheader makes a create safe to replay after a network drop, with no duplicate. - Pagination by page (50 rows by default, 200 at most) or by cursor with
?pagination=curseur, to walk large datasets without drift. - `expand` and `fields`: embed a relation in the same response, or receive only the columns you need.
- Structured errors: every refusal carries an
ondes_erreurblock with a stablecodeand areessayable(retryable) flag. - Visible rate limits:
X-RateLimit-Limit,X-RateLimit-RemainingandX-RateLimit-Resetheaders, plusRetry-Afterwhen you need to wait. - Multi-company: each request runs inside one company, and a subsidiary never reads a sister company’s data.
Receive signed webhooks when an order is paid
Instead of polling, subscribe a URL to the events you care about through the developer/abonnements resource. Every delivery carries an Ondes-Signature header (timestamp plus an HMAC-SHA256 of the body), following the pattern developers already know from Stripe. The signing secret is shown only at creation.
The destination is checked before it is saved, and each subscription keeps a delivery log. If your server was down, you can see what failed and replay a delivery, rather than resyncing by hand.
Writing a connector from your workspace’s own docs
Connected to the MCP server, your code editor reads the exact sheet of a resource instead of guessing. Here, an Atelier Lumen developer wires up their shipping software.
Where are the docs and the OpenAPI schema?
In your admin, API & Developers brings together the guide, a route explorer, the downloadable OpenAPI 3.1 schema, your keys and their usage analytics. Everything is generated by introspecting the real routes, so a resource that does not exist in your workspace is simply not listed.
The same guide is also served on demand by the MCP server, through six documentation tools — including ondes_impossible, which lists what the API deliberately does not do. For a full walkthrough, follow the build an integration guide.
Go further
- MCP vs REST APIWhat really sets them apart, when to pick which, and why at Ondes PRO they work together.Read
- Build an integrationScoped keys, signed webhooks, idempotency and test mode for a back office that never creates duplicates.Read
- Online storeOrders, catalogue, promo codes and shipments handled by your assistant, in test mode by default.Read
- InvoicingQuotes, invoices, reminders and credit notes prepared by your assistant, within invoicing rules.Read
Frequently asked questions
Is the REST API included in every plan?
Yes. API v1 and the MCP server come with the Essentiel, Pro and Entreprise plans, with no add-on to enable. See pricing.
What is the API base URL?
Your workspace address followed by /api/v1/, for example https://your-workspace.ondes.pro/api/v1/. Each customer has their own instance, hence their own address.
How do I limit what an integration can do?
Create a key with only the scopes it needs, for instance billing:read for a dashboard. A key manager can also set a key’s per-minute quota, suspend it or revoke it, and every action is logged.
Can the API cancel an invoice?
No, by design: under French rules an issued invoice cannot be cancelled. The API issues a credit note instead, full or partial, with a mandatory reason, through the avoir/ action on billing/factures.
Is there an OpenAPI schema?
Yes, in OpenAPI 3.1 format, downloadable from API & Developers. It is generated from your workspace’s real routes, so it is always current.
Should I pick the API or the MCP server?
You do not have to. The MCP server calls API v1 itself: same routes, same permissions. The API suits unattended syncs, MCP suits working with an AI assistant. See MCP vs REST API.
Plug your AI into your business
The MCP server is included in every plan, with no add-on or extra fee.
Read next
- StripeTake store payments into your own Stripe account, company by company.Read
- GitHubPublish a static site from a GitHub repository, or have the store built into your existing site.Read
- MCP serverPlug the AI assistant of your choice into your whole business, with your permissions and nothing more.Read
Claude, Claude Code and Claude Desktop are trademarks of Anthropic, PBC; Cursor is a trademark of Anysphere, Inc.; Visual Studio Code and Microsoft are trademarks of the Microsoft group of companies; GitHub and GitHub Copilot are trademarks of GitHub, Inc.; ChatGPT and OpenAI are trademarks of OpenAI; Windsurf is a trademark of Cognition; Zed is a trademark of Zed Industries, Inc.; JetBrains, Cline, Zapier, Make, n8n, Stripe and Model Context Protocol are trademarks of their respective owners. These names are used solely to describe compatibility or to make a comparison. Ondes PRO is not affiliated with, sponsored or endorsed by these companies.