Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 3647 |
Technical Name |
zehntech_rest_api |
License | OPL-1 |
Website | https://www.zehntech.com/ |
Versions | 16.0 17.0 18.0 |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 3647 |
Technical Name |
zehntech_rest_api |
License | OPL-1 |
Website | https://www.zehntech.com/ |
Versions | 16.0 17.0 18.0 |
Our Odoo REST API includes User Manual, 90 Days Support (Monday-Friday 10:30 AM to 7:30 PM PST) and One-time Setup
Odoo REST API
Odoo REST API Integration module provides a secure and high-performance REST API for Odoo. It enables external systems to perform CRUD operations on Odoo data using a robust, token-based authentication system. Key features include fine-grained access control for specific models and operations, as well as optional rate limiting (throttling) and key expiration. For developers, the app offers a developer-friendly Swagger UI and a downloadable Postman Collection for efficient API testing. This backend-only solution ensures seamless integration without any impact on the Odoo front-end.
Installation : Please run this command before installing the addon - pip install PyJWT==2.9.0
User Manual for Odoo REST API -
User Guide :- https://web.kopyst.com/sharedoc/lxb83i
Key Features
Screenshots Section
Secure Token-Based Authentication
Ensures safe API access using unique API keys and user-specific tokens. Keys can be activated, deactivated, refreshed, limited by usage, or set to expire. When enabled, both a valid API key and user token are required, adding an extra security layer. This prevents unauthorized access and safeguards Odoo data during external integrations.

Complete CRUD Operations via API Keys
Allows external systems to Create, Read, Update, and Delete Odoo records securely using authorized API keys. Access can be granted for all resources or restricted to specific models and operations. This ensures full yet controlled data management while maintaining security and compliance with defined access rights.

API Key Access with Expiration and Throttling
Enables administrators to control API usage by setting expiry dates for keys and limiting the number of requests per user per day. Expired keys become invalid automatically, while throttling prevents excessive API calls. This ensures fair usage, protects system performance, and enhances security for integrations.

Model-Wise Access Control for API Keys
Provides fine-grained security by allowing administrators to restrict API keys to specific Odoo models. For each model, permitted operations—Create, Read, Update, or Delete—can be individually configured. This ensures that API access is limited only to the required resources, reducing security risks and protecting sensitive data.

Interactive Swagger (Open API) Documentation Interface
Offers a user-friendly, browser-based interface to explore and test all available REST API endpoints. Users can view request/response formats, try live API calls with authentication, and download a ready-to-use Postman collection. This speeds up integration, improves understanding, and reduces time.
%20Documentation%20Interface%20.png?c23349f)
Documentation for Postman Endpoints Collection
Provides a ready-to-use Postman collection containing all available API endpoints with sample requests, authentication setup, and example payloads. This allows developers to quickly test, explore, and integrate APIs without manual configuration, saving time and ensuring accuracy.

Comprehensive API Call Logging
Tracks and records every API request with details like endpoint, method, user, timestamp, and response status. This helps in monitoring usage, troubleshooting issues, auditing activities, and ensuring secure and transparent API operations.

Dynamic Pagination for Large Datasets
Enables efficient handling of large data responses by dividing results into manageable pages. Supports customizable page size and navigation parameters, reducing load times, optimizing performance, and improving the user experience when fetching records via API.

Support

Contact Us
Zehntech Technologies
(https://www.zehntech.com/contact-us/)
FAQs
Q1. What is the Odoo REST API module used for?
The Odoo REST API module allows external systems to securely connect with Odoo using a RESTful interface. It provides token-based authentication, model-level access control, and support for user-level throttling and API key expiration.
Q2. Can I restrict API access to specific models or users?
Yes, the module allows you to configure access per model and user. You can assign read, write, create, and delete permissions for each model, ensuring only authorized users interact with specific data.
Q3. I need some customization in this app. Is it possible?
A - Yes, you can customize the module if you need additional features. We can also assist with the customization. Just email us at odoo-support@zehntech.com with your requirements.
Q4. Will I get lifetime updates for this app?
A - Yes, after purchasing the app, you are eligible for lifetime updates. Check the app page for the changelog, and you can download the updated module from the same link as your original download. If you'd like us to send you update notifications, contact us at odoo-support@zehntech.com
Q5. I have more questions regarding this app. How do I contact you?
A - Feel free to send us an email at odoo-support@zehntech.com with your questions, and we’ll get back to you as soon as possible.
About Zehntech
We are a technology solutions company that provides solutions to drive outcomes for clients. Organizations around the world rely on us to identify the right technology to solve business problems and achieve ongoing success.
Since 2013, Zehntech has been a force in Software Product Development and SaaS Engineering, delivering over 8 products with a 5 million ARR. These products span Utility and Oil & Gas IIOT solutions, E-commerce platforms, and Enterprise web and mobile applications, including Y-incubator-backed startups. Our team, following industry-standard processes, focuses on transforming business challenges into scalable solutions.
Key Competencies:
ERP and CRM : Solutions built for streamlined business processes and customer relationships across the organization.
IT Product Development: Tailored software solutions for unique business needs.
SaaS Engineering: Scalable and secure SaaS solutions designed for optimal performance. AI/ML Product Development: Creating intelligent, data-driven systems.
Web and Mobile Development: Comprehensive end-to-end development services.
Cloud Computing: Robust and scalable cloud solutions.
24/7 Support Services: Round-the-clock support to ensure business continuity.
Our Services

Odoo Customization

Odoo Support & Maintenance

Odoo Integration

Odoo Implementation

Odoo Migration Services

Odoo Theme Development

Odoo Website Development

Odoo Mobile App Development
Get In Touch
Need help?

Contact Us
Zehntech Technologies
(https://www.zehntech.com/contact-us/)
Odoo REST API
The Odoo REST API module provides a secure, high-performance REST API for Odoo, enabling external systems—like websites, mobile apps, or third-party platforms—to interact with Odoo models. It supports all CRUD operations with robust, token-based authentication, fine-grained access control, and advanced features such as throttling and key expiration. Designed for developers, it includes Swagger UI and a Postman Collection for easy integration and testing.
Table of contents
Key Features
Secure Token-Based Authentication - Protect API access with unique API keys and optional user tokens - Ensure only trusted clients and authenticated users can interact with the API
Complete CRUD Operations via API Keys - Supports:
- GET – View or search records
- POST – Create records or execute methods
- PUT – Update records
- DELETE – Remove records
- Respects Odoo model access rights and security rules
API Key Access with Expiration and Throttling - Set validity period (e.g., 30 days) for API keys - Limit API requests per user per day to prevent misuse and manage performance
Model-Wise Access Control for API Keys - Allow full access to all models or restrict to selected models - Configure per-model CRUD permissions for secure, controlled integration
Interactive Swagger (OpenAPI) Documentation Interface - Explore API endpoints visually via Swagger UI - Perform live testing with authorized tokens and sample data
Documentation for Postman Endpoints Collection - Download ready-to-use Postman collection with authentication setup - Includes sample requests, payloads, and parameter details
Comprehensive API Call Logging - Track all API interactions for auditing and debugging - Store method, endpoint, user, and timestamp information
Dynamic Pagination for Large Datasets - Fetch large datasets efficiently using paginated API responses - Improve performance when retrieving bulk data
Multi-language Support - Translations included for:
- 🇩🇪 German
- 🇫🇷 French
- 🇪🇸 Spanish
- 🇯🇵 Japanese
Summary
Easily integrate your Odoo instance with any external platform using this REST API Odoo module. It supports all CRUD operations on Odoo models with secure, token-based authentication. Admins can manage API keys, set model-level permissions, and enable advanced features like throttling and key expiration. The app also includes Swagger UI and a Postman Collection to simplify development and testing.
Installation
- Copy the module folder to your Odoo custom_addons directory.
- Restart the Odoo server and update the app list.
- Search for Odoo REST API and install it.
- Enable developer mode to configure API keys, access rights, and token settings.
How to use this module:
- Navigate to Settings > Technical > Web Services > Webservice Accounts - Click Create and set up the API key - Enable User Authentication if per-user tokens are required - Select All Models or define Specific Models with CRUD permissions
- Navigate to Users > User Profile > User Authentication tab - Select the Webservice Account - Click Generate Token to create a secure login token
- Explore and test the API: - Go to Settings > Technical > Web Services > REST API Document - Use Swagger UI for live API testing - Download the Postman Collection for local testing
- Start using API endpoints: - GET /api/{model_name}/{id} - POST /api/{model_name}/create - PUT /api/{model_name}/{id} - DELETE /api/{model_name}/{id}
Change logs
[1.0.0] * Added [13-08-2025] – Initial release with CRUD endpoints, authentication, API key management, model-level permissions, throttling, key expiration, Swagger UI, Postman collection, logging, pagination, and multi-language support.
Support
Zehntech Technologies
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module