Agent skill · software engineering · sickn33

odoo-rpc-api

Expert on Odoo's external JSON-RPC and XML-RPC APIs. Covers authentication, model calls, record CRUD, and real-world integration examples in Python, JavaScript, and curl.

Why this skill is useful

Provides specific integration patterns and example scripts for Odoo's JSON-RPC and XML-RPC APIs that the AI wouldn't reliably generate on its own.

What it needs

Requires odoo account access. About 2k tokens when loaded. Last updated 2026-08-07. 44,571 stars on the source repository.

What this skill does

Odoo RPC API Overview Odoo exposes a powerful external API via JSON-RPC and XML-RPC, allowing any external application to read, create, update, and delete records. This skill guides you through authenticating, calling models, and building robust integrations. When to Use This Skill Connecting an external app (e.g., Django, Node.js, a mobile app) to Odoo. Running automated scripts to import/export data from Odoo. Building a middleware layer between Odoo and a third-party platform. Debugging API authentication or permission errors. How It Works 1. Activate: Mention @odoo-rpc-api and describe the integration you need. 2. Generate: Get copy-paste ready RPC call code in Python, JavaScript, or curl. 3. Debug: Paste an error and get a diagnosis with a corrected call. Examples Example 1: Authenticate and Read Records (Python) Example 2: Create a Record (Python) Example 3: JSON-RPC via curl Best Practices ✅ Do: Use API Keys (Settings → Technical → API Keys) instead of passwords — available from Odoo 14+. ✅ Do: Use searchread instead of search + read to reduce network round trips. ✅ Do: Always handle connection errors and implement retry logic with exponential backoff in production. ✅ Do: Store credentials in environment variables or a secrets manager (e.g., AWS Secrets Manager, .env file). ❌ Don't: Hardcode passwords or API keys directly in scripts — rotate them and use env vars. ❌ Don't: Call the API in a tight loop without batching — bulk operations reduce server load significantly. ❌ Don't: Use the master admin password for API integrations — create a dedicated integration user with minimum required permissions. Limitations Does not cover OAuth2 or session-cookie-based authentication — the examples use API key (token) auth only. Rate limiting is not built into the Odoo XMLRPC layer; you must implement throttling client-side. The XML-RPC endpoint (/xmlrpc/2/) does not support file uploads — use the REST-based ir.attachment model via JSON-RPC for binary data. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills sickn33/odoo-rpc-api--75be28

View the source on GitHub

Browse the @skills marketplace