The Odoo Developer Platform
Public API, webhooks, automation rules, AI dev sidecars, and MCP for Odoo, all built in. GitHub and GitLab, full SSH from your browser, push to deploy.
No credit card required - Full SSH access on all plans
Git Integration That Just Works
Connect your repository from GitHub or GitLab. Configure once, deploy on every push.
GitHub
Connect via OAuth or deploy keys. Automatic webhook setup triggers deployments on every push. Works with public and private repositories.
- OAuth & deploy keys
- Automatic webhooks
- Branch-based deployments
GitLab
Full support for GitLab.com and self-hosted instances. Use personal access tokens or OAuth. Integrates with GitLab CI/CD pipelines.
- GitLab.com & self-hosted
- Personal access tokens
- GitLab CI integration
Learn more about Git integration. Read our GitLab CI/CD Guide
Public REST API v1
A versioned, documented public API for automating environments, deployments, and webhooks. JWT auth, idempotency keys, and rate limits, with full OpenAPI and Swagger docs.
JWT Auth and Idempotency Keys
Bearer token authentication with scoped API keys. Send an Idempotency-Key header to safely retry requests without duplicate side effects.
Endpoints for Environments, Deployments, Webhooks
Create and manage environments, trigger deploys, register webhooks, and read delivery logs. Rate limits documented per endpoint.
OpenAPI and Swagger Docs
Generate clients in any language from the OpenAPI spec. Try every endpoint live from the Swagger UI.
curl -X POST https://platform.oec.sh/api/v1/environments/{env_id}/deploy \
-H "Authorization: Bearer $OECSH_API_KEY" \
-H "Idempotency-Key: deploy-$(date +%s)"POST https://your-app.example.com/hooks
X-OECSH-Event: deployment.succeeded
X-OECSH-Signature: t=1736812800,v1=...
{
"id": "evt_01HMB2X7Q3...",
"event": "deployment.succeeded",
"created_at": "2026-04-12T14:32:01Z",
"data": {
"environment_id": "env_8f2a",
"deployment_id": "dep_abc123",
"branch": "main",
"commit": "9f3c1b2",
"url": "https://myapp.oec.sh"
}
}Webhooks With a Delivery Log
Subscribe to deployment, environment, and build events. Inspect every delivery, replay failures, and route alerts to Slack, Teams, or Discord with native formatting.
Full Delivery Log
See request body, response, latency, and status for every webhook attempt. Filter by event type and endpoint.
Auto-Pause on Failures
Endpoints that fail repeatedly are paused automatically. You get notified and can replay deliveries once the issue is fixed.
Native Slack, Teams, and Discord Formats
Pick a destination and we send the right payload shape. No middleware, no Zapier, no glue scripts.
Signed Payloads
Every webhook is HMAC-signed. Verify the signature in your handler to confirm authenticity.
Automation Rules
A workflow engine for Odoo operations. Build pipelines from triggers and actions, watch them run with live SSE events, and start fast with a templates gallery.
Triggers
- GGit eventsPush, tag, pull request opened or merged.
- SSchedulesCron-style timing for nightly clones, weekly backups, periodic checks.
- MManualOne-click runs from the dashboard or via API.
Actions
- Deploy to any environment
- Clone production to staging with sanitization
- Promote staging to production
- Destroy ephemeral environments
- Quick update modules without a full rebuild
Templates Gallery
Start from proven workflows: nightly staging refresh, PR preview environments, scheduled production backups, hotfix promotion.
Pipeline Visualization
See each step of a rule in a clear, top-down diagram. Click any step to inspect inputs, outputs, and timing.
Live SSE Events
Stream rule execution to your dashboard or any client. Watch builds, clones, and deploys progress in real time.
AI Dev Sidecar and MCP for Odoo
Vibe-code Odoo with the AI tools you already use. Spin up dev terminals or connect any MCP agent to your live Odoo data.
AI Dev Sidecar
Pro planMulti-VM dev terminals with Claude Code, Cursor, Gemini CLI, and OpenAI Codex pre-configured. Watch real-time provisioning logs as your sidecar comes up.
- Claude Code, Cursor, Gemini CLI, OpenAI Codex pre-installed
- Multi-VM dev terminals isolated from production
- Real-time provisioning logs
- Mounted to your Odoo source and database
MCP for Odoo
Connect Claude Code, Cursor, or any MCP-compatible agent to a live Odoo instance. Read and write data through AI agents safely, with scoped credentials.
- Standard Model Context Protocol server
- Read and write Odoo records via your AI agent
- Works with Claude Code, Cursor, and other MCP clients
- Scoped tokens with audit trail
CLI Tools and Legacy API
Automate deployments, backups, and integrations from your terminal. The 200+ endpoint legacy API stays available for existing scripts while you migrate to v1.
oec-cli Command Line
Deploy, backup, restore, and manage servers directly from your terminal. Install via npm, pip, or standalone binary.
200+ Legacy Endpoints
Cover deployments, backups, domains, and environment variables. New automation should use API v1 for JWT auth and idempotency.
Secure Authentication
API keys with granular permissions. Rotate keys, set expiration dates, and audit all API access from your dashboard.
curl -X POST https://api.oec.sh/v1/deployments \
-H "Authorization: Bearer $API_KEY" \
-d '{"branch": "main", "env": "production"}'
{
"id": "dep_abc123",
"status": "deploying",
"url": "https://myapp.oec.sh"
}Your Odoo Development Workflow
From local development to production without friction
Local Development Setup
Clone your repo, run Odoo locally with Docker. Use our dev container config for instant setup with VS Code.
Push to Deploy
Commit your custom modules and push. Webhooks trigger automatic build and deployment to your staging environment.
Test on Staging
Clone production data to staging with one click. Test changes with real data in an isolated environment.
Promote to Production
Merge to main branch for production deployment. Zero-downtime updates with instant rollback if needed.
Browser SSH and Full Debugging
Open a full root SSH terminal right in your browser. No keys to manage, no client to install, no restrictions on what you can run.
Browser SSH Terminal
Click and you are in. Full root shell from any browser with no setup. Native SSH still works for those who prefer it.
Real-time Log Access
Tail logs, grep for errors, and debug issues in real-time directly from the terminal.
Odoo Shell Access
Run Python code directly in the Odoo environment. Inspect data, test fixes, and debug modules.
PostgreSQL Shell
Full psql access for database queries, data inspection, and performance tuning.
Staging Environments & Database Cloning
Test changes safely with production-like data. Clone databases with automatic data sanitization.
One-Click Database Clone
Clone production to staging in seconds. Automatic sanitization removes sensitive data like passwords, emails, and API keys.
Isolated Environments
Each environment has dedicated resources, its own database, and custom domain. Test without affecting production.
Branch-Based Deploys
Map Git branches to environments. Push to develop for staging, main for production. Automatic deployments per branch.
Data Sanitization
Automatic removal of sensitive data when cloning. Customize sanitization rules for your specific data protection needs.
Instant Rollback
Made a mistake? Rollback to any previous deployment instantly. All deployment history is preserved for recovery.
Multiple Odoo Versions
Run different Odoo versions per environment. Perfect for testing migrations from Odoo 16 to 17 or 18 before going live.
Technical Specifications
Built for production workloads
Odoo Versions
- Odoo 12 - 18+
- Community & Enterprise
- Custom builds supported
Database
- PostgreSQL 14, 15, 16, 17 selector
- pgvector for AI workloads
- pg_trgm and unaccent included
- Full SQL access, pgAdmin included
Compute
- 1-64 vCPUs available
- 2-256 GB RAM
- NVMe SSD storage
Networking
- Automatic SSL/TLS
- Custom domains
- Global CDN optional
Security
- Container isolation
- Managed firewall
- DDoS protection
Integrations
- GitHub and GitLab
- Slack, Teams, Discord native
- Webhooks with delivery log
- Public API v1 and MCP
Connect Any Server, Run Modern Postgres
Bring a server behind a NAT, firewall, or your home network. Pair it with PostgreSQL 17 and pgvector for AI workloads.
Cloudflare Tunnel BYOS
Connect any server to OEC.sh without opening inbound ports. Works with NAT, corporate firewalls, and home networks. Great for development boxes, lab servers, and on-prem hardware.
- No inbound ports required
- Works behind NAT and firewalls
- Run a worker on a home lab or office box
- Encrypted tunnel via Cloudflare
PostgreSQL 17 with pgvector
Pick your Postgres version per environment. PostgreSQL 17 ships with pgvector for embeddings and AI workloads, plus pg_trgm and unaccent for fast fuzzy and accent-insensitive search inside Odoo.
- Version selector: 14, 15, 16, 17
- pgvector extension enabled
- pg_trgm and unaccent included
- Full SQL access via psql or pgAdmin
See plan availability on the pricing page.
Stop Managing Servers
Write Odoo code, not Nginx configs
Manual Server Setup
Hours of Configuration
Install PostgreSQL, configure Nginx, set up SSL, tune parameters...
Security Responsibility
Patch vulnerabilities, manage firewalls, rotate credentials yourself
No Automated Backups
Write your own backup scripts and hope they work when needed
Manual Deployments
SSH in, git pull, restart services, pray nothing breaks
OEC.sh Developer Platform
5-Minute Deployment
Connect Git, configure, deploy. Everything pre-configured and optimized.
Security Built-In
Automatic SSL, managed firewall, regular patching. We handle security.
Automated Backups
Daily automated backups to multiple cloud providers. One-click restore.
Git-Powered CI/CD
Push to deploy. Automatic builds, tests, and zero-downtime deployments.
See detailed comparison with other platforms. Compare with Odoo.sh
Developer FAQs
Technical questions answered
Does OEC.sh support GitLab?
Yes, OEC.sh fully supports GitLab integration including both GitLab.com and self-hosted GitLab instances. Connect your repository, configure deploy keys or webhooks, and enable automatic deployments on push. Branch-to-environment mapping lets you deploy different branches to staging, production, or development environments automatically.
Can I use CI/CD with OEC.sh?
Absolutely. OEC.sh provides built-in CI/CD pipelines that trigger on git push. Your code is automatically built, tested, and deployed with zero-downtime updates. You can also integrate with external CI/CD tools like GitHub Actions, GitLab CI, or Jenkins using our REST API with 200+ endpoints. Rollback to any previous deployment instantly if needed.
Is there SSH access?
Yes, you get full SSH access to your containers with no restrictions on all plans. Run any command, access logs in real-time, debug issues directly, install additional packages, and manage your Odoo installation from the terminal. Root access is available, giving you complete control over your environment.
How do staging environments work?
Create staging environments with one click. Clone your production database with automatically sanitized data (emails, passwords, API keys removed), test changes safely in isolation, then promote to production when ready. Each environment has isolated resources, can run different Odoo versions, and has its own custom domain with SSL.
Can I use my own Docker images?
Yes, OEC.sh supports custom Docker images. Start with our optimized Odoo base images or bring your own. Customize your Dockerfile to include specific dependencies, Python packages, or system libraries. Build pipelines automatically detect and build custom images from your repository.
Is there an API?
Yes. Public REST API v1 is available on Starter, Pro, and Agency plans. It uses JWT bearer auth, supports idempotency keys for safe retries, and exposes endpoints for environments, deployments, and webhooks. Full OpenAPI and Swagger docs are published. The 200+ endpoint legacy API stays available for existing scripts while you migrate to v1.
Can I use AI agents with my Odoo?
Yes. OEC.sh ships an MCP server for Odoo so Claude Code, Cursor, and other MCP-compatible agents can read and write data on your live instance with scoped tokens. Pro plan also includes the AI Dev Sidecar: multi-VM dev terminals with Claude Code, Cursor, Gemini CLI, and OpenAI Codex pre-configured.
Can I connect a server behind a firewall or NAT?
Yes. Cloudflare Tunnel BYOS lets you connect any server to OEC.sh without opening inbound ports, including home labs, office machines, and on-prem hardware behind corporate firewalls. The encrypted tunnel runs over Cloudflare and works wherever outbound HTTPS works.
Which PostgreSQL versions are supported?
PostgreSQL 14, 15, 16, and 17 are all selectable per environment. PostgreSQL 17 ships with pgvector for embeddings and AI workloads, plus pg_trgm and unaccent for fuzzy and accent-insensitive search inside Odoo. Full SQL access via psql or pgAdmin is included on every plan.
What Git platforms are supported?
We support GitHub and GitLab (including self-hosted) out of the box. Connect your repository using OAuth, deploy keys, or personal access tokens. Configure webhooks for automatic deployments, set up branch protection rules, and use branch-to-environment mapping for professional development workflows.
What Odoo versions are supported?
We support Odoo 12 through 18+ for both Community and Enterprise editions. Run multiple versions simultaneously for migration testing. New Odoo versions are available within days of release. Each project can specify its Odoo version independently, making it easy to support clients on different versions.
Developer Guides
Tutorials for Odoo development workflows
MCP for Odoo
Connect Claude Code, Cursor, or any MCP agent to a live Odoo instance.
Vibe Coding Odoo
Spin up an AI Dev Sidecar with Claude Code, Cursor, Gemini CLI, and Codex.
Cursor + Odoo
Configure Cursor to work directly against your OEC.sh environment.
Odoo Docker Guide
Master Docker-based Odoo deployments with custom images and production configs.
CI/CD Staging Setup
Automated pipelines with staging environments for professional workflows.
GitLab CI/CD
Integrate GitLab CI with OEC.sh for automatic deployments.
Performance Tuning
Optimize Odoo performance with PostgreSQL tuning and caching strategies.
Odoo API Integration
Connect external systems to Odoo using XML-RPC, JSON-RPC, and REST APIs.
Ready to Deploy Your Odoo Project?
Full SSH access, Git integration, and production-ready infrastructure from day one.
No credit card required - Deploy in under 5 minutes