# dj-rbac-api **Repository Path**: duans/dj-rbac-api ## Basic Information - **Project Name**: dj-rbac-api - **Description**: 基于django的rabc权限控制 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-12-10 - **Last Updated**: 2026-01-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README --- title: rbac接口文档 language_tabs: - shell: Shell - http: HTTP - javascript: JavaScript - ruby: Ruby - python: Python - php: PHP - java: Java - go: Go toc_footers: [] includes: [] search: true code_clipboard: true highlight_theme: darkula headingLevel: 2 generator: "@tarslib/widdershins v4.0.30" --- # rbac接口文档 基于django的rbac权限控制后端数据接口 Base URLs: * 开发环境: http://localhost:8000 # Authentication # 菜单管理 ## GET 菜单列表 GET /api/menu/ 获取菜单列表 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |page|query|integer| 否 |A page number within the paginated result set.| > 返回示例 > 200 Response ```json { "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ { "id": 0, "children": "string", "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z", "parent": 0 } ] } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[PaginatedMenuList](#schemapaginatedmenulist)| ## POST 新增菜单 POST /api/menu/ 新增菜单数据 > Body 请求参数 ```json { "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "parent": 0 } ``` ```yaml permission_id: -2147483648 permission_code: string title: string path: string icon: string sort_order: -32768 menu_type: dir parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |body|body|[Menu](#schemamenu)| 是 |none| > 返回示例 > 201 Response ```json { "id": 0, "children": "string", "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z", "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |201|[Created](https://tools.ietf.org/html/rfc7231#section-6.3.2)|none|[Menu](#schemamenu)| ## GET 菜单详情 GET /api/menu/{id}/ 获取单条用户数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this menu.| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z", "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Menu](#schemamenu)| ## PUT 更新菜单 PUT /api/menu/{id}/ 更新菜单信息 > Body 请求参数 ```json { "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "parent": 0 } ``` ```yaml permission_id: -2147483648 permission_code: string title: string path: string icon: string sort_order: -32768 menu_type: dir parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this menu.| |body|body|[Menu](#schemamenu)| 是 |none| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z", "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Menu](#schemamenu)| ## PATCH 菜单信息(部分更新) PATCH /api/menu/{id}/ 更新菜单信息中的部分属性字段 > Body 请求参数 ```json { "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "parent": 0 } ``` ```yaml permission_id: -2147483648 permission_code: string title: string path: string icon: string sort_order: -32768 menu_type: dir parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this menu.| |body|body|[PatchedMenu](#schemapatchedmenu)| 否 |none| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "permission_id": -2147483648, "permission_code": "string", "title": "string", "path": "string", "icon": "string", "sort_order": -32768, "menu_type": "dir", "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z", "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Menu](#schemamenu)| ## DELETE 删除菜单 DELETE /api/menu/{id}/ 删除菜单数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this menu.| ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |204|[No Content](https://tools.ietf.org/html/rfc7231#section-6.3.5)|No response body|None| # 权限管理 ## GET 权限列表 GET /api/permission/ 获取权限列表 > 返回示例 > 200 Response ```json [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ] ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline| ### 返回数据结构 状态码 **200** |名称|类型|必选|约束|中文名|说明| |---|---|---|---|---|---| |*anonymous*|[[Permission](#schemapermission)]|false|none||none| |» id|integer|true|read-only||none| |» children|string|true|read-only||none| |» name|string|true|none|权限名称|none| |» code|string|true|none|权限编码|none| |» url|string¦null|false|none|接口地址|none| |» method|string¦null|false|none|接口请求方式|none| |» status|boolean|false|none|权限状态|none| |» parent|integer¦null|false|none||none| ## POST 新增权限 POST /api/permission/ 新增权限数据 > Body 请求参数 ```json { "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ```yaml name: string code: string url: string method: string status: true parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |body|body|[Permission](#schemapermission)| 是 |none| > 返回示例 > 201 Response ```json { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |201|[Created](https://tools.ietf.org/html/rfc7231#section-6.3.2)|none|[Permission](#schemapermission)| ## GET 权限详情 GET /api/permission/{id}/ 获取单条角色数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this permission.| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Permission](#schemapermission)| ## PUT 更新权限 PUT /api/permission/{id}/ 更新权限信息 > Body 请求参数 ```json { "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ```yaml name: string code: string url: string method: string status: true parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this permission.| |body|body|[Permission](#schemapermission)| 是 |none| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Permission](#schemapermission)| ## PATCH 权限信息(部分更新) PATCH /api/permission/{id}/ 更新角色信息中的部分属性字段 > Body 请求参数 ```json { "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ```yaml name: string code: string url: string method: string status: true parent: 0 ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this permission.| |body|body|[PatchedPermission](#schemapatchedpermission)| 否 |none| > 返回示例 > 200 Response ```json { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Permission](#schemapermission)| ## DELETE 删除权限 DELETE /api/permission/{id}/ 删除权限数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this permission.| ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |204|[No Content](https://tools.ietf.org/html/rfc7231#section-6.3.5)|No response body|None| # 角色管理 ## GET 角色列表 GET /api/role/ 获取角色列表 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |page|query|integer| 否 |A page number within the paginated result set.| > 返回示例 > 200 Response ```json { "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ] } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[PaginatedRoleList](#schemapaginatedrolelist)| ## POST 新增角色 POST /api/role/ 新增角色数据 > Body 请求参数 ```json { "permission_ids": [ 0 ], "name": "string", "remark": "string", "status": true } ``` ```yaml permission_ids: - 0 name: string remark: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |body|body|[Role](#schemarole)| 是 |none| > 返回示例 > 201 Response ```json { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |201|[Created](https://tools.ietf.org/html/rfc7231#section-6.3.2)|none|[Role](#schemarole)| ## GET 角色详情 GET /api/role/{id}/ 获取单条角色数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this role.| > 返回示例 > 200 Response ```json { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Role](#schemarole)| ## PUT 更新角色 PUT /api/role/{id}/ 更新角色信息 > Body 请求参数 ```json { "permission_ids": [ 0 ], "name": "string", "remark": "string", "status": true } ``` ```yaml permission_ids: - 0 name: string remark: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this role.| |body|body|[Role](#schemarole)| 是 |none| > 返回示例 > 200 Response ```json { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Role](#schemarole)| ## PATCH 角色信息(部分更新) PATCH /api/role/{id}/ 更新角色信息中的部分属性字段 > Body 请求参数 ```json { "permission_ids": [ 0 ], "name": "string", "remark": "string", "status": true } ``` ```yaml permission_ids: - 0 name: string remark: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this role.| |body|body|[PatchedRole](#schemapatchedrole)| 否 |none| > 返回示例 > 200 Response ```json { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[Role](#schemarole)| ## DELETE 删除角色 DELETE /api/role/{id}/ 删除角色数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this role.| ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |204|[No Content](https://tools.ietf.org/html/rfc7231#section-6.3.5)|No response body|None| # 用户管理 ## GET 用户列表 GET /api/user/ 获取用户列表接口 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |page|query|integer| 否 |A page number within the paginated result set.| > 返回示例 > 200 Response ```json { "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ { "id": 0, "role": [ { "id": 0, "permission": [ {} ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ] } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[PaginatedUserList](#schemapaginateduserlist)| ## POST 新增用户 POST /api/user/ 新增用户数据 > Body 请求参数 ```json { "role_ids": [ 0 ], "password": "string", "username": "string", "phone": "string", "email": "string", "status": true } ``` ```yaml role_ids: - 0 password: string username: string phone: string email: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |body|body|[User](#schemauser)| 是 |none| > 返回示例 > 201 Response ```json { "id": 0, "role": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |201|[Created](https://tools.ietf.org/html/rfc7231#section-6.3.2)|none|[User](#schemauser)| ## GET 用户详情 GET /api/user/{id}/ 获取单个用户数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this user.| > 返回示例 > 200 Response ```json { "id": 0, "role": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[User](#schemauser)| ## PUT 更新用户 PUT /api/user/{id}/ 更新用户信息 > Body 请求参数 ```json { "role_ids": [ 0 ], "password": "string", "username": "string", "phone": "string", "email": "string", "status": true } ``` ```yaml role_ids: - 0 password: string username: string phone: string email: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this user.| |body|body|[User](#schemauser)| 是 |none| > 返回示例 > 200 Response ```json { "id": 0, "role": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[User](#schemauser)| ## PATCH 用户信息(部分更新) PATCH /api/user/{id}/ 更新用户信息中的部分属性字段 > Body 请求参数 ```json { "role_ids": [ 0 ], "password": "string", "username": "string", "phone": "string", "email": "string", "status": true } ``` ```yaml role_ids: - 0 password: string username: string phone: string email: string status: true ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this user.| |body|body|[PatchedUser](#schemapatcheduser)| 否 |none| > 返回示例 > 200 Response ```json { "id": 0, "role": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[User](#schemauser)| ## DELETE 删除用户 DELETE /api/user/{id}/ 删除用户数据 ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |id|path|integer| 是 |A unique integer value identifying this user.| ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |204|[No Content](https://tools.ietf.org/html/rfc7231#section-6.3.5)|No response body|None| ## POST 用户登录 POST /api/user/login/ 用户登录接口 > Body 请求参数 ```json { "username": "string", "password": "string" } ``` ```yaml username: string password: string ``` ### 请求参数 |名称|位置|类型|必选|说明| |---|---|---|---|---| |body|body|[Login](#schemalogin)| 是 |none| > 返回示例 > 200 Response ```json { "id": 0, "role": [ { "id": 0, "permission": [ { "id": 0, "children": "string", "name": "string", "code": "string", "url": "string", "method": "string", "status": true, "parent": 0 } ], "name": "string", "remark": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ], "username": "string", "phone": "string", "email": "string", "status": true, "update_time": "2019-08-24T14:15:22Z", "create_time": "2019-08-24T14:15:22Z" } ``` ### 返回结果 |状态码|状态码含义|说明|数据模型| |---|---|---|---| |200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|[User](#schemauser)| |400|[Bad Request](https://tools.ietf.org/html/rfc7231#section-6.5.1)|none|[LoginResponse](#schemaloginresponse)| # 数据模型