Qonto Public Documentation
Repository Overview
This is a Mintlify-based documentation site for Qonto’s public APIs. It contains API references, guides, SDK documentation, and developer resources.The Two APIs
Business API authentication:
- API Key — mostly read-only access, simpler setup
- OAuth 2.0 — full read/write access, requires scopes, used for partner integrations acting on behalf of a user
Running Locally
mint dev automatically opens the browser. All changes to .mdx files and the bundled openapi.yml are reflected live. Always verify your changes are visible in the browser before considering work done.
If mint dev fails: run mintlify install to reinstall dependencies.
NPM Scripts
mint devvsnpm run preview:mint devruns the full Mintlify site (all.mdxpages, navigation, theme).npm run previewis Redocly-only and only shows the OpenAPI spec — use it for quick spec checks.
Repository Structure
How Mintlify Works
Mintlify renders documentation from two source types:.mdxfiles — prose pages, guides, or API reference pagesdocs.json— defines the navigation tree, theme, anchors, and which pages appear where
API Reference Pages
Each API endpoint has a minimal.mdx file that tells Mintlify which OpenAPI operation to render:
openapi.yml and generates the full reference page (parameters, request/response schemas, playground) automatically.
Adding a New Endpoint (Step-by-Step)
1. Add the OpenAPI definition
Create or edit the relevant YAML file underapi-reference/business-api/components/resources/. Each resource has its own directory containing one file per operation (e.g. list.yml, create.yml, show.yml).
.github/.oas_src/business_api.yml is auto-generated — it is just an index of $ref pointers rebuilt from the component files. Never edit it directly.
2. Bundle the spec
api-reference/business-api/openapi.yml. Check for errors — Redocly will surface $ref issues and schema problems.
Validate the bundled spec:
3. Create the .mdx reference page
Create a new file under the appropriate category in api-reference/business-api/:
openapi: must match the HTTP method + path exactly as defined in the spec.
4. Add the page to docs.json
Open docs.json and add your new .mdx page to the correct navigation group under the API Reference anchor:
.mdx extension in docs.json.)
5. Test locally
- The page renders with correct parameters and response schemas
- The OAuth scope (if any) is shown correctly
- The interactive playground works
Adding a New OAuth Scope
OAuth scopes are defined in:Naming Rules (enforced)
- Singular form only
- ❌
bank_accounts.write - ✅
bank_account.write
- ❌
- Multi-word resources use snake_case
- ✅
internal_transfer.write - ✅
sepa_direct_debit.read
- ✅
- Object and action separated by
.- ✅
organization.read - ✅
card.write
- ✅
- Common actions:
read,write,trust, or a specific verb (e.g.,webhook)
How to add
Inschemes.yml, add your scope under flows.authorizationCode.scopes:
Automation
A GitHub Actions workflow (.github/workflows/detect-new-oauth-scopes.yml) automatically detects new scopes when a PR is merged to master and syncs them to the Dev Portal backend. No manual action needed after merge.