From 3fc63f40c10ed45a88193e98052b67f0ae474b76 Mon Sep 17 00:00:00 2001
From: "li.luo"
Date: Tue, 24 Feb 2026 14:55:40 +0800
Subject: [PATCH] feat: add user management endpoints for creating and
retrieving users
---
apollo-openapi.yaml | 223 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 223 insertions(+)
diff --git a/apollo-openapi.yaml b/apollo-openapi.yaml
index 7fba16d..043ea7c 100644
--- a/apollo-openapi.yaml
+++ b/apollo-openapi.yaml
@@ -3601,6 +3601,173 @@ paths:
allOf:
- $ref: '#/components/schemas/SuccessEmptyResponse'
headers: {}
+ /openapi/v1/users:
+ post:
+ summary: 创建用户
+ operationId: createUser
+ deprecated: false
+ description: POST /openapi/v1/users
+ tags:
+ - User Management
+ security:
+ - ApiKeyAuth: []
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/OpenUserDTO'
+ example:
+ username: "new-user"
+ userDisplayName: "New User"
+ password: "P@ssw0rd123"
+ email: "new-user@example.com"
+ enabled: 1
+ responses:
+ '200':
+ description: 成功创建用户,返回创建的用户信息
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UserInfo'
+ example:
+ userId: "new-user"
+ name: "New User"
+ email: "new-user@example.com"
+ enabled: 1
+ headers: {}
+ '400':
+ description: 请求参数错误(用户名/密码/邮箱为空,或密码强度不足)
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ '401':
+ description: 未授权访问
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ '403':
+ description: 权限不足或当前用户服务不支持创建用户
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ get:
+ summary: 搜索用户列表
+ operationId: searchUsers
+ deprecated: false
+ description: GET /openapi/v1/users
+ tags:
+ - User Management
+ security:
+ - ApiKeyAuth: []
+ parameters:
+ - name: keyword
+ in: query
+ description: 搜索关键字(匹配用户名或显示名称),为空时返回所有用户
+ required: false
+ schema:
+ type: string
+ default: ""
+ - name: includeInactiveUsers
+ in: query
+ description: 是否包含已停用的用户
+ required: false
+ schema:
+ type: boolean
+ default: false
+ - name: offset
+ in: query
+ description: 分页偏移量,从0开始
+ required: false
+ schema:
+ type: integer
+ default: 0
+ minimum: 0
+ - name: limit
+ in: query
+ description: 分页大小,取值范围 1~100
+ required: false
+ schema:
+ type: integer
+ default: 10
+ minimum: 1
+ maximum: 100
+ responses:
+ '200':
+ description: 成功获取用户列表
+ content:
+ application/json:
+ schema:
+ type: array
+ items:
+ $ref: '#/components/schemas/UserInfo'
+ example:
+ - userId: "apollo"
+ name: "Apollo Admin"
+ email: "apollo@example.com"
+ enabled: 1
+ - userId: "dev-user"
+ name: "Dev User"
+ email: "dev@example.com"
+ enabled: 1
+ headers: {}
+ '400':
+ description: 请求参数错误(offset或limit超出范围)
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ '401':
+ description: 未授权访问
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ /openapi/v1/users/{userId}:
+ get:
+ summary: 根据用户ID获取用户信息
+ operationId: getUserByUserId
+ deprecated: false
+ description: GET /openapi/v1/users/{userId}
+ tags:
+ - User Management
+ security:
+ - ApiKeyAuth: []
+ parameters:
+ - name: userId
+ in: path
+ description: 用户ID(用户名)
+ required: true
+ schema:
+ type: string
+ responses:
+ '200':
+ description: 成功获取用户信息
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/UserInfo'
+ example:
+ userId: "apollo"
+ name: "Apollo Admin"
+ email: "apollo@example.com"
+ enabled: 1
+ headers: {}
+ '400':
+ description: 用户不存在
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
+ '401':
+ description: 未授权访问
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/ExceptionResponse'
/openapi/v1/envs:
get:
summary: 获取所有环境
@@ -4285,4 +4452,60 @@ components:
- code
- message
+ OpenUserDTO:
+ type: object
+ description: 用于创建用户的请求体 DTO
+ properties:
+ username:
+ type: string
+ description: 用户名(登录账号),创建时必填
+ example: "new-user"
+ userDisplayName:
+ type: string
+ description: 用户显示名称,若不填则默认使用 username
+ example: "New User"
+ password:
+ type: string
+ description: 用户密码,创建时必填,需满足密码强度要求
+ format: password
+ example: "P@ssw0rd123"
+ email:
+ type: string
+ description: 用户邮箱,创建时必填
+ format: email
+ example: "new-user@example.com"
+ enabled:
+ type: integer
+ description: 用户状态:1-启用,0-停用,默认为1
+ enum: [0, 1]
+ default: 1
+ example: 1
+ required:
+ - username
+ - password
+ - email
+
+ UserInfo:
+ type: object
+ description: 用户信息
+ properties:
+ userId:
+ type: string
+ description: 用户ID(即用户名)
+ example: "apollo"
+ name:
+ type: string
+ description: 用户显示名称
+ example: "Apollo Admin"
+ email:
+ type: string
+ description: 用户邮箱
+ format: email
+ example: "apollo@example.com"
+ enabled:
+ type: integer
+ description: 用户状态:1-启用,0-停用
+ enum: [0, 1]
+ example: 1
+
servers: []