Getting Started
Run ODXProxy with Docker and make your first request.
1. Run the proxy
ODXProxy is distributed as a Docker image:
docker pull terrakernel/odxproxyProvide configuration via a dotenv file. The minimum is a PROXY_API_KEY (the
x-api-key value clients must send) and a signed LICENSE_KEY file. The proxy
listens on 0.0.0.0:3000 by default and refuses to run as root.
2. Make your first request
Send a JSON-RPC request to POST /api/odoo/execute. The target Odoo instance is
specified per-request in odoo_instance:
curl -X POST https://your-proxy.example.com/api/odoo/execute \
-H "x-api-key: $PROXY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": "01J...",
"action": "search_read",
"model_id": "res.partner",
"params": [[["is_company", "=", true]]],
"keyword": { "fields": ["name", "email"], "limit": 10 },
"odoo_instance": {
"url": "https://erp.example.com",
"db": "prod",
"user_id": 2,
"api_key": "<ODOO_USER_API_KEY>"
}
}'x-api-key is the proxy's key. odoo_instance.api_key is the Odoo user's
key. These are two different secrets — don't conflate them.
The response is a JSON-RPC 2.0 envelope. Remember to check the error field even on
HTTP 200 — see Error codes.