Back to overview
API for Developers
Connect external tools, apps and AI agents to your CMS via the REST API.
What is the Optimocms API?
The Optimocms API lets you control your CMS from external tools and systems. For example:
• A custom dashboard showing data from all your websites
• An external system that automatically updates products or content
• AI tools like Lovable, Cursor or Claude that create and publish pages
• Integrations with Zapier, Make or n8n for automation
The API uses standard HTTP requests (GET, POST, PUT, DELETE) and returns JSON.
View the full technical documentation at developers.optimocms.com.
Creating an API key
Go to Settings → API Keys and follow these steps:
1. Click 'New API key'
2. Give the key a recognizable name (e.g. 'Lovable integration')
3. Choose permissions: read only, write, AI features, publish
4. Optional: restrict the key to specific websites
5. Click 'Create'
The API key is shown only once. Copy and store it securely — you cannot view it again.
Tips
- Create a separate key for each integration so you can revoke them individually.
- Never store API keys in public code or repositories.
Note
- If you lose an API key, create a new one and revoke the old one.
Authentication
Add your API key as a header with every request:
X-Api-Key: omc_your_api_key_here
Without a valid key you will receive a 401 error.
Rate limits
The API has per-plan limits to ensure fair usage:
• Starter (€39): 1,000 API calls/month, 500 MCP calls, 10 req/min
• Professional (€79): 5,000 API calls/month, 2,500 MCP calls, 20 req/min, 100K AI tokens
• Agency (€199): 50,000 API calls/month, 25,000 MCP calls, 60 req/min, 500K AI tokens
AI features (generate, translate): maximum 2 per minute.
Publishing: 5-minute cooldown per website.
When exceeded you receive a 429 error with a Retry-After header.
Tips
- View your API usage via Settings → API Keys.
- During the trial period, API access is not available.
Available endpoints
The API provides access to:
• Websites — List, details, publish
• Pages — Read, create, update
• Media — Retrieve and search files
• AI — Generate pages, translate, improve content
• Bookings — Availability, reservations
• Shop — Products, orders, discount codes
• Loyalty — Points, rewards, members
• Analytics — Visitor statistics
View the full API reference with request/response examples for every endpoint.
Examples
Get all pages for a website:
GET /v1/sites/{siteId}/pages
X-Api-Key: omc_your_key
Create a new page:
POST /v1/sites/{siteId}/pages
X-Api-Key: omc_your_key
Content-Type: application/json
{"title": "Contact", "slug": "contact"}
Translate a page to German:
POST /v1/sites/{siteId}/ai/translate
X-Api-Key: omc_your_key
{"pageId": "page_abc", "targetLanguage": "de"}
Versioning & deprecation policy
The Optimocms API follows a clear versioning policy to keep breaking changes predictable.
• Versions: the API is versioned via the URL path (e.g. /v1/). Breaking changes are only introduced in a new major version (e.g. /v2/).
• Non-breaking additions (new fields, new endpoints) are added to the existing version.
• Deprecation: when an endpoint becomes outdated, you will receive two standard HTTP headers:
– Sunset: the date the endpoint will be removed.
– Deprecation: true — indicates the endpoint is deprecated.
– Link: points to the migration documentation.
• Minimum notice period: you always have at least 90 days to migrate to the replacement endpoint.
Regularly check whether your responses contain Sunset headers so you can migrate well in advance.
Tips
- Build a check in your integration that alerts on a Sunset header so you are never caught off guard.
- Non-breaking changes (new fields in responses) require no action on your part.
API Changelog
All changes to the API are tracked here.
26 May 2026 — v1 (current version)
• First public release of the REST API
• Endpoints: Sites, Pages, Media, AI, Bookings, Shop, Loyalty, Analytics
• Authentication via X-Api-Key header
• Rate limiting per plan
• Sunset and Deprecation headers introduced for future deprecations
View the full API Changelog on the developer docs for the most up-to-date overview.