Odoo REST API
by genin IT http://www.geninit.cn , 亘盈信息技术 http://www.geninit.cn , jeffery <jeffery9@gmail.com> http://www.geninit.cn$ 10.02
Availability |
Odoo Online
Odoo.sh
On Premise
|
Lines of code | 1152 |
Technical Name |
odoo_restful_gateway |
License | OPL-1 |
Website | http://www.geninit.cn |
Versions | 17.0 18.0 |
Odoo RESTful Gateway | Odoo RESTful 网关
为 Odoo 提供完整的 REST API 接口,支持 Bearer Token 认证
Complete REST API interface for Odoo with Bearer Token authentication
API 规格总览 | API Specification Overview
基础信息 | Basic Info
- API 版本: v1
- 基础 URL: /api/v1
- 认证方式: Bearer Token
- 响应格式: JSON
支持方法 | HTTP Methods
- GET 查询数据
- POST 创建数据
- PUT 更新数据
- DELETE 删除数据
核心 CRUD 端点 | Core CRUD Endpoints
GET 获取记录 | Get Records
端点: /api/v1/{model}
单个记录: /api/v1/{model}/{id}
参数:
- query: 字段选择语法
- filter: JSON 域过滤器
- limit: 最大记录数 (≤1000)
- page_size: 每页记录数
POST 创建记录 | Create Records
端点: /api/v1/{model}/
批量创建: /api/v1/{model}/batch
请求体:
{ "data": { /* 记录数据 */ }, "context": { /* 可选上下文 */ } }
PUT 更新记录 | Update Records
单个: /api/v1/{model}/{id}/
多个: /api/v1/{model}/
关系字段操作:
- create, link, unlink
- delete, update, set, clear
DELETE 删除记录 | Delete Records
单个: /api/v1/{model}/{id}/
多个: /api/v1/{model}/?id=[1,2,3]
支持: 批量删除、条件删除
高级功能端点 | Advanced Endpoints
函数调用 | Function Calls
模型方法:
/api/v1/object/{model}/{function}
记录方法:
/api/v1/object/{model}/{id}/{function}
高级搜索 | Advanced Search
端点:
/api/v1/{model}/search
支持: 复杂域查询、字段选择、排序
元数据 | Metadata
字段信息:
/api/v1/{model}/fields
文件下载:
/api/v1/{model}/{id}/{field}
查询语言规格 | Query Language Specification
字段选择语法 | Field Selection Syntax
语法 | Syntax | 说明 | Description |
---|---|
{id, name} |
选择特定字段 | Select specific fields |
{*} |
选择所有字段 | Select all fields |
{-password} |
排除特定字段 | Exclude specific fields |
{user{name, email}} |
嵌套字段选择 | Nested field selection |
响应格式 | Response Format
成功响应 | Success Response
{ "success": true, "message": "操作成功", "data": { /* 响应数据 */ }, "timestamp": "2024-01-01T12:00:00" }
错误响应 | Error Response
{ "success": false, "error": { "code": 400, "message": "错误描述", "type": "ValidationError" }, "timestamp": "2024-01-01T12:00:00" }
系统端点 | System Endpoints
健康检查 | Health Check
端点:
/api/v1/health
无需认证 | No Auth Required
API 信息 | API Info
端点:
/api/v1/info
返回: API 版本、端点列表
OpenAPI 规格 | OpenAPI Spec
端点:
/api/v1/openapi.json
格式: OpenAPI 3.0
使用示例 | Usage Examples
认证设置 | Authentication Setup
headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer your_api_key_here' }
获取用户 | Get Users
GET /api/v1/res.users?query={id,name,email} &filter=[["active","=",true]] &limit=50
创建产品 | Create Product
POST /api/v1/product.template/ { "data": { "name": "New Product", "list_price": 100.0, "categ_id": 1 } }
更新记录 | Update Record
PUT /api/v1/res.partner/123/ { "data": { "name": "Updated Name", "email": "new@email.com" } }
技术限制 | Technical Limitations
请求限制 | Request Limits
- 每次最多 1000 条记录
- 默认限制 80 条记录
- 支持分页查询
安全要求 | Security Requirements
- 所有端点需要认证(除健康检查)
- Bearer Token 必须有效
- 遵循 Odoo 访问权限
技术支持 | Technical Support

亘盈信息技术 | GenInit Technology
联系我们 | Contact Us
geninit.cn
如需定制开发或技术支持,请联系我们
Please contact us for customization or technical support
技术要求 | Technical Requirements:
Python 3.8+, pypeg2
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