feat(ECR-006): 落地运营后台 Phase A(admin API + admin-h5)
新增独立鉴权的 /api/v1/admin 与 Vue 控制台;会员授予与审计同事务,并补集成/单测。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -18,6 +18,7 @@ tags:
|
||||
- name: ask
|
||||
- name: companion
|
||||
- name: commerce
|
||||
- name: admin
|
||||
|
||||
paths:
|
||||
/api/v1/healthz:
|
||||
@@ -40,6 +41,113 @@ paths:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/auth/login:
|
||||
post:
|
||||
tags: [admin]
|
||||
summary: Admin login
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required: [username, password]
|
||||
properties:
|
||||
username: { type: string }
|
||||
password: { type: string }
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/Envelope'
|
||||
|
||||
/api/v1/admin/auth/logout:
|
||||
post:
|
||||
tags: [admin]
|
||||
summary: Admin logout
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/me:
|
||||
get:
|
||||
tags: [admin]
|
||||
summary: Current admin
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/users:
|
||||
get:
|
||||
tags: [admin]
|
||||
summary: List users
|
||||
parameters:
|
||||
- in: query
|
||||
name: q
|
||||
schema: { type: string }
|
||||
- in: query
|
||||
name: limit
|
||||
schema: { type: integer }
|
||||
- in: query
|
||||
name: offset
|
||||
schema: { type: integer }
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/users/{id}:
|
||||
get:
|
||||
tags: [admin]
|
||||
summary: User detail
|
||||
parameters:
|
||||
- in: path
|
||||
name: id
|
||||
required: true
|
||||
schema: { type: string, format: uuid }
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/users/{id}/membership/grant:
|
||||
post:
|
||||
tags: [admin]
|
||||
summary: Grant or extend membership
|
||||
parameters:
|
||||
- in: path
|
||||
name: id
|
||||
required: true
|
||||
schema: { type: string, format: uuid }
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required: [plan]
|
||||
properties:
|
||||
plan: { type: string, enum: [month, quarter, year] }
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/orders:
|
||||
get:
|
||||
tags: [admin]
|
||||
summary: List orders
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/admin/audit-logs:
|
||||
get:
|
||||
tags: [admin]
|
||||
summary: List audit logs
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
|
||||
/api/v1/profiles:
|
||||
get:
|
||||
tags: [profile]
|
||||
|
||||
Reference in New Issue
Block a user