Files
tyapi-server/docs/swagger/swagger.yaml
2025-07-15 13:21:34 +08:00

2660 lines
65 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

basePath: /
definitions:
commands.AdminLoginCommand:
properties:
password:
type: string
username:
type: string
required:
- password
- username
type: object
commands.ChangeAdminPasswordCommand:
properties:
new_password:
type: string
old_password:
type: string
required:
- new_password
- old_password
type: object
commands.ChangePasswordCommand:
description: 修改用户密码请求参数
properties:
code:
example: "123456"
type: string
confirm_new_password:
example: newpassword123
type: string
new_password:
example: newpassword123
maxLength: 128
minLength: 6
type: string
old_password:
example: oldpassword123
type: string
required:
- code
- confirm_new_password
- new_password
- old_password
type: object
commands.CreateAdminCommand:
properties:
email:
type: string
password:
type: string
permissions:
items:
type: string
type: array
phone:
type: string
real_name:
type: string
role:
type: string
username:
type: string
required:
- email
- password
- real_name
- role
- username
type: object
commands.CreateSubscriptionCommand:
properties:
api_limit:
type: integer
auto_renew:
type: boolean
duration:
type: string
price:
minimum: 0
type: number
product_id:
type: string
user_id:
type: string
required:
- product_id
- user_id
type: object
commands.CreateUserSecretsCommand:
properties:
expires_at:
type: string
user_id:
type: string
required:
- user_id
type: object
commands.CreateWalletCommand:
properties:
user_id:
type: string
required:
- user_id
type: object
commands.InitiateFaceVerifyCommand:
properties:
id_card_number:
type: string
real_name:
type: string
return_url:
type: string
required:
- id_card_number
- real_name
- return_url
type: object
commands.LoginWithPasswordCommand:
description: 使用密码进行用户登录请求参数
properties:
password:
example: password123
type: string
phone:
example: "13800138000"
type: string
required:
- password
- phone
type: object
commands.LoginWithSMSCommand:
description: 使用短信验证码进行用户登录请求参数
properties:
code:
example: "123456"
type: string
phone:
example: "13800138000"
type: string
required:
- code
- phone
type: object
commands.RechargeWalletCommand:
properties:
amount:
type: number
user_id:
type: string
required:
- amount
- user_id
type: object
commands.RegisterUserCommand:
description: 用户注册请求参数
properties:
code:
example: "123456"
type: string
confirm_password:
example: password123
type: string
password:
example: password123
maxLength: 128
minLength: 6
type: string
phone:
example: "13800138000"
type: string
required:
- code
- confirm_password
- password
- phone
type: object
commands.ResetPasswordCommand:
description: 重置用户密码请求参数(忘记密码时使用)
properties:
code:
example: "123456"
type: string
confirm_new_password:
example: newpassword123
type: string
new_password:
example: newpassword123
maxLength: 128
minLength: 6
type: string
phone:
example: "13800138000"
type: string
required:
- code
- confirm_new_password
- new_password
- phone
type: object
commands.SendCodeCommand:
description: 发送短信验证码请求参数
properties:
phone:
example: "13800138000"
type: string
scene:
enum:
- register
- login
- change_password
- reset_password
- bind
- unbind
example: register
type: string
required:
- phone
- scene
type: object
commands.SubmitEnterpriseInfoCommand:
properties:
company_name:
type: string
legal_person_id:
type: string
legal_person_name:
type: string
license_upload_record_id:
type: string
unified_social_code:
type: string
required:
- company_name
- legal_person_id
- legal_person_name
- license_upload_record_id
- unified_social_code
type: object
commands.UpdateAdminCommand:
properties:
email:
type: string
is_active:
type: boolean
permissions:
items:
type: string
type: array
phone:
type: string
real_name:
type: string
role:
type: string
type: object
commands.UpdateWalletCommand:
properties:
balance:
type: number
is_active:
type: boolean
user_id:
type: string
required:
- user_id
type: object
commands.WalletTransactionCommand:
properties:
amount:
type: number
from_user_id:
type: string
notes:
type: string
to_user_id:
type: string
user_id:
type: string
required:
- amount
- from_user_id
- to_user_id
- user_id
type: object
commands.WithdrawWalletCommand:
properties:
amount:
type: number
user_id:
type: string
required:
- amount
- user_id
type: object
entities.AdminRole:
enum:
- super_admin
- admin
- reviewer
type: string
x-enum-comments:
RoleAdmin: 普通管理员 - 拥有大部分管理权限
RoleReviewer: 审核员 - 仅拥有审核相关权限
RoleSuperAdmin: 超级管理员 - 拥有所有权限
x-enum-varnames:
- RoleSuperAdmin
- RoleAdmin
- RoleReviewer
enums.CertificationStatus:
enum:
- not_started
- pending
- info_submitted
- face_verified
- contract_applied
- contract_pending
- contract_approved
- contract_signed
- completed
- face_failed
- sign_failed
- rejected
type: string
x-enum-comments:
StatusCompleted: 认证完成
StatusContractApplied: 已申请合同
StatusContractApproved: 合同已审核(有链接)
StatusContractPending: 合同待审核
StatusContractSigned: 合同已签署
StatusFaceFailed: 人脸识别失败
StatusFaceVerified: 人脸识别完成
StatusInfoSubmitted: 企业信息已提交
StatusNotStarted: 未开始认证
StatusPending: 待开始
StatusRejected: 已拒绝
StatusSignFailed: 签署失败
x-enum-varnames:
- StatusNotStarted
- StatusPending
- StatusInfoSubmitted
- StatusFaceVerified
- StatusContractApplied
- StatusContractPending
- StatusContractApproved
- StatusContractSigned
- StatusCompleted
- StatusFaceFailed
- StatusSignFailed
- StatusRejected
internal_application_certification_dto_responses.EnterpriseInfoResponse:
properties:
certification_id:
type: string
company_name:
type: string
created_at:
type: string
id:
type: string
is_face_verified:
type: boolean
is_ocr_verified:
type: boolean
legal_person_id:
type: string
legal_person_name:
type: string
license_upload_record_id:
type: string
unified_social_code:
type: string
updated_at:
type: string
type: object
internal_application_user_dto_responses.EnterpriseInfoResponse:
description: 企业信息响应
properties:
certified_at:
example: "2024-01-01T00:00:00Z"
type: string
company_name:
example: 示例企业有限公司
type: string
created_at:
example: "2024-01-01T00:00:00Z"
type: string
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
is_certified:
example: false
type: boolean
is_face_verified:
example: false
type: boolean
is_ocr_verified:
example: false
type: boolean
legal_person_id:
example: "110101199001011234"
type: string
legal_person_name:
example: 张三
type: string
unified_social_code:
example: 91110000123456789X
type: string
updated_at:
example: "2024-01-01T00:00:00Z"
type: string
type: object
responses.AdminInfoResponse:
properties:
created_at:
type: string
email:
type: string
id:
type: string
is_active:
type: boolean
last_login_at:
type: string
login_count:
type: integer
permissions:
items:
type: string
type: array
phone:
type: string
real_name:
type: string
role:
$ref: '#/definitions/entities.AdminRole'
username:
type: string
type: object
responses.AdminListResponse:
properties:
admins:
items:
$ref: '#/definitions/responses.AdminInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.AdminLoginResponse:
properties:
admin:
$ref: '#/definitions/responses.AdminInfoResponse'
expires_at:
type: string
token:
type: string
type: object
responses.AdminStatsResponse:
properties:
active_admins:
type: integer
today_logins:
type: integer
total_admins:
type: integer
total_operations:
type: integer
type: object
responses.CategoryInfoResponse:
properties:
children:
items:
$ref: '#/definitions/responses.CategoryInfoResponse'
type: array
code:
type: string
created_at:
type: string
description:
type: string
id:
type: string
is_enabled:
type: boolean
is_visible:
type: boolean
level:
type: integer
name:
type: string
parent:
allOf:
- $ref: '#/definitions/responses.CategoryInfoResponse'
description: 关联信息
parent_id:
type: string
sort:
type: integer
updated_at:
type: string
type: object
responses.CategoryListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.CategoryInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.CertificationResponse:
properties:
completed_at:
type: string
contract_applied_at:
type: string
contract_approved_at:
type: string
contract_signed_at:
type: string
contract_url:
type: string
created_at:
type: string
enterprise:
$ref: '#/definitions/internal_application_certification_dto_responses.EnterpriseInfoResponse'
face_verified_at:
type: string
id:
type: string
info_submitted_at:
type: string
is_admin_action_required:
type: boolean
is_user_action_required:
type: boolean
progress:
type: integer
reject_reason:
type: string
signing_url:
type: string
status:
$ref: '#/definitions/enums.CertificationStatus'
status_name:
type: string
updated_at:
type: string
user_id:
type: string
type: object
responses.FaceVerifyResponse:
properties:
certify_id:
type: string
expires_at:
type: string
verify_url:
type: string
type: object
responses.LoginUserResponse:
description: 用户登录成功响应
properties:
access_token:
example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
type: string
expires_in:
example: 86400
type: integer
login_method:
example: password
type: string
token_type:
example: Bearer
type: string
user:
$ref: '#/definitions/responses.UserProfileResponse'
type: object
responses.ProductInfoResponse:
properties:
category:
allOf:
- $ref: '#/definitions/responses.CategoryInfoResponse'
description: 关联信息
category_id:
type: string
code:
type: string
content:
type: string
created_at:
type: string
description:
type: string
id:
type: string
is_enabled:
type: boolean
is_package:
type: boolean
is_visible:
type: boolean
name:
type: string
price:
type: number
seo_description:
type: string
seo_keywords:
type: string
seo_title:
description: SEO信息
type: string
updated_at:
type: string
type: object
responses.ProductListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.ProductInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.ProductSimpleResponse:
properties:
code:
type: string
description:
type: string
id:
type: string
is_package:
type: boolean
name:
type: string
price:
type: number
type: object
responses.ProductStatsResponse:
properties:
enabled_products:
type: integer
package_products:
type: integer
total_products:
type: integer
visible_products:
type: integer
type: object
responses.RegisterUserResponse:
description: 用户注册成功响应
properties:
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
phone:
example: "13800138000"
type: string
type: object
responses.SubscriptionInfoResponse:
properties:
api_used:
type: integer
created_at:
type: string
id:
type: string
price:
type: number
product:
allOf:
- $ref: '#/definitions/responses.ProductSimpleResponse'
description: 关联信息
product_id:
type: string
updated_at:
type: string
user_id:
type: string
type: object
responses.SubscriptionListResponse:
properties:
items:
items:
$ref: '#/definitions/responses.SubscriptionInfoResponse'
type: array
page:
type: integer
size:
type: integer
total:
type: integer
type: object
responses.SubscriptionStatsResponse:
properties:
total_revenue:
type: number
total_subscriptions:
type: integer
type: object
responses.SubscriptionUsageResponse:
properties:
api_used:
type: integer
id:
type: string
product_id:
type: string
type: object
responses.TransactionResponse:
properties:
amount:
type: number
created_at:
type: string
from_balance:
type: number
from_user_id:
type: string
notes:
type: string
to_balance:
type: number
to_user_id:
type: string
transaction_id:
type: string
type: object
responses.UploadLicenseResponse:
properties:
credit_code:
type: string
enterprise_name:
description: OCR识别结果如果成功
type: string
file_url:
type: string
legal_person:
type: string
ocr_confidence:
type: number
ocr_error_message:
type: string
ocr_processed:
type: boolean
ocr_success:
type: boolean
upload_record_id:
type: string
type: object
responses.UserProfileResponse:
description: 用户基本信息
properties:
created_at:
example: "2024-01-01T00:00:00Z"
type: string
enterprise_info:
$ref: '#/definitions/internal_application_user_dto_responses.EnterpriseInfoResponse'
id:
example: 123e4567-e89b-12d3-a456-426614174000
type: string
is_certified:
example: false
type: boolean
phone:
example: "13800138000"
type: string
updated_at:
example: "2024-01-01T00:00:00Z"
type: string
type: object
responses.UserSecretsResponse:
properties:
access_id:
type: string
access_key:
type: string
created_at:
type: string
expires_at:
type: string
id:
type: string
is_active:
type: boolean
last_used_at:
type: string
updated_at:
type: string
user_id:
type: string
type: object
responses.WalletResponse:
properties:
balance:
type: number
created_at:
type: string
id:
type: string
is_active:
type: boolean
updated_at:
type: string
user_id:
type: string
type: object
responses.WalletStatsResponse:
properties:
active_wallets:
type: integer
today_transactions:
type: integer
today_volume:
type: number
total_balance:
type: number
total_wallets:
type: integer
type: object
host: localhost:8080
info:
contact:
email: support@example.com
name: API Support
url: https://github.com/your-org/tyapi-server-gin
description: |-
基于DDD和Clean Architecture的企业级后端API服务
采用Gin框架构建支持用户管理、JWT认证、事件驱动等功能
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
title: TYAPI Server API
version: "1.0"
paths:
/api/v1/admin:
get:
consumes:
- application/json
description: 分页获取管理员列表,支持搜索和筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 状态筛选
in: query
name: status
type: string
produces:
- application/json
responses:
"200":
description: 获取管理员列表成功
schema:
$ref: '#/definitions/responses.AdminListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理员列表
tags:
- 管理员管理
post:
consumes:
- application/json
description: 创建新的管理员账户,需要超级管理员权限
parameters:
- description: 创建管理员请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateAdminCommand'
produces:
- application/json
responses:
"201":
description: 管理员创建成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建管理员
tags:
- 管理员管理
/api/v1/admin/{id}:
delete:
consumes:
- application/json
description: 删除指定的管理员账户
parameters:
- description: 管理员ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 管理员删除成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"404":
description: 管理员不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 删除管理员
tags:
- 管理员管理
get:
consumes:
- application/json
description: 根据管理员ID获取详细信息
parameters:
- description: 管理员ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取管理员详情成功
schema:
$ref: '#/definitions/responses.AdminInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 管理员不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理员详情
tags:
- 管理员管理
put:
consumes:
- application/json
description: 更新指定管理员的基本信息
parameters:
- description: 管理员ID
in: path
name: id
required: true
type: string
- description: 更新管理员请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateAdminCommand'
produces:
- application/json
responses:
"200":
description: 管理员更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"403":
description: 权限不足
schema:
additionalProperties: true
type: object
"404":
description: 管理员不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新管理员信息
tags:
- 管理员管理
/api/v1/admin/auth/login:
post:
consumes:
- application/json
description: 使用用户名和密码进行管理员登录返回JWT令牌
parameters:
- description: 管理员登录请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.AdminLoginCommand'
produces:
- application/json
responses:
"200":
description: 登录成功
schema:
$ref: '#/definitions/responses.AdminLoginResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 用户名或密码错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 管理员登录
tags:
- 管理员管理
/api/v1/admin/change-password:
post:
consumes:
- application/json
description: 修改当前登录管理员的密码
parameters:
- description: 修改密码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ChangeAdminPasswordCommand'
produces:
- application/json
responses:
"200":
description: 密码修改成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 修改管理员密码
tags:
- 管理员管理
/api/v1/admin/stats:
get:
consumes:
- application/json
description: 获取管理员相关的统计数据
produces:
- application/json
responses:
"200":
description: 获取统计信息成功
schema:
$ref: '#/definitions/responses.AdminStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取管理员统计信息
tags:
- 管理员管理
/api/v1/categories:
get:
consumes:
- application/json
description: 获取产品分类列表,支持层级筛选
parameters:
- description: 父级分类ID
in: query
name: parent_id
type: string
- description: 分类层级
in: query
name: level
type: integer
produces:
- application/json
responses:
"200":
description: 获取分类列表成功
schema:
$ref: '#/definitions/responses.CategoryListResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取分类列表
tags:
- 数据大厅
/api/v1/categories/{id}:
get:
consumes:
- application/json
description: 根据分类ID获取分类详细信息
parameters:
- description: 分类ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取分类详情成功
schema:
$ref: '#/definitions/responses.CategoryInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 分类不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取分类详情
tags:
- 数据大厅
/api/v1/certification:
post:
consumes:
- application/json
description: 为用户创建新的企业认证申请
produces:
- application/json
responses:
"200":
description: 认证申请创建成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建认证申请
tags:
- 企业认证
/api/v1/certification/contract:
post:
consumes:
- application/json
description: 申请企业认证合同
produces:
- application/json
responses:
"200":
description: 合同申请成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 申请合同
tags:
- 企业认证
/api/v1/certification/details:
get:
consumes:
- application/json
description: 获取当前用户的认证申请详细信息
produces:
- application/json
responses:
"200":
description: 获取认证详情成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证申请不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取认证详情
tags:
- 企业认证
/api/v1/certification/enterprise-info:
post:
consumes:
- application/json
description: 提交企业基本信息,包括企业名称、统一社会信用代码、法定代表人信息等
parameters:
- description: 企业信息
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.SubmitEnterpriseInfoCommand'
produces:
- application/json
responses:
"200":
description: 企业信息提交成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 提交企业信息
tags:
- 企业认证
/api/v1/certification/face-verify:
post:
consumes:
- application/json
description: 发起企业法人人脸验证流程
parameters:
- description: 人脸验证请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.InitiateFaceVerifyCommand'
produces:
- application/json
responses:
"200":
description: 人脸验证发起成功
schema:
$ref: '#/definitions/responses.FaceVerifyResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 发起人脸验证
tags:
- 企业认证
/api/v1/certification/license/{record_id}/ocr-result:
get:
consumes:
- application/json
description: 根据上传记录ID获取OCR识别结果
parameters:
- description: 上传记录ID
in: path
name: record_id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取OCR结果成功
schema:
$ref: '#/definitions/responses.UploadLicenseResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 记录不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取营业执照OCR识别结果
tags:
- 企业认证
/api/v1/certification/progress:
get:
consumes:
- application/json
description: 获取当前用户的认证申请详细进度信息
produces:
- application/json
responses:
"200":
description: 获取认证进度成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 认证申请不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取认证进度
tags:
- 企业认证
/api/v1/certification/retry/{step}:
post:
consumes:
- application/json
description: 重新执行指定的认证步骤
parameters:
- description: 步骤名称
in: path
name: step
required: true
type: string
produces:
- application/json
responses:
"200":
description: 步骤重试成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 重试认证步骤
tags:
- 企业认证
/api/v1/certification/stats:
get:
consumes:
- application/json
description: 获取认证申请的进度统计数据
produces:
- application/json
responses:
"200":
description: 获取进度统计成功
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取进度统计
tags:
- 企业认证
/api/v1/certification/status:
get:
consumes:
- application/json
description: 获取当前用户的认证申请状态
produces:
- application/json
responses:
"200":
description: 获取认证状态成功
schema:
$ref: '#/definitions/responses.CertificationResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取认证状态
tags:
- 企业认证
/api/v1/certification/upload-license:
post:
consumes:
- multipart/form-data
description: 上传营业执照文件立即进行OCR识别并返回结果
parameters:
- description: 营业执照文件
in: formData
name: file
required: true
type: file
produces:
- application/json
responses:
"200":
description: 上传成功
schema:
$ref: '#/definitions/responses.UploadLicenseResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未授权
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 上传营业执照并同步OCR识别
tags:
- 企业认证
/api/v1/finance/secrets:
get:
consumes:
- application/json
description: 获取当前用户的API访问密钥信息
produces:
- application/json
responses:
"200":
description: 获取用户密钥成功
schema:
$ref: '#/definitions/responses.UserSecretsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 密钥不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取用户密钥
tags:
- 用户密钥管理
post:
consumes:
- application/json
description: 为用户创建API访问密钥
parameters:
- description: 创建密钥请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateUserSecretsCommand'
produces:
- application/json
responses:
"201":
description: 用户密钥创建成功
schema:
$ref: '#/definitions/responses.UserSecretsResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"409":
description: 密钥已存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 创建用户密钥
tags:
- 用户密钥管理
/api/v1/finance/secrets/deactivate:
post:
consumes:
- application/json
description: 停用用户的API访问密钥
produces:
- application/json
responses:
"200":
description: 用户密钥停用成功
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 密钥不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 停用用户密钥
tags:
- 用户密钥管理
/api/v1/finance/secrets/regenerate:
post:
consumes:
- application/json
description: 重新生成用户的API访问密钥
produces:
- application/json
responses:
"200":
description: 访问密钥重新生成成功
schema:
$ref: '#/definitions/responses.UserSecretsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 密钥不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 重新生成访问密钥
tags:
- 用户密钥管理
/api/v1/finance/wallet:
get:
consumes:
- application/json
description: 获取当前用户的钱包详细信息
produces:
- application/json
responses:
"200":
description: 获取钱包信息成功
schema:
$ref: '#/definitions/responses.WalletResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 钱包不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取钱包信息
tags:
- 钱包管理
post:
consumes:
- application/json
description: 为用户创建新的钱包账户
parameters:
- description: 创建钱包请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateWalletCommand'
produces:
- application/json
responses:
"201":
description: 钱包创建成功
schema:
$ref: '#/definitions/responses.WalletResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"409":
description: 钱包已存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 创建钱包
tags:
- 钱包管理
put:
consumes:
- application/json
description: 更新当前用户的钱包基本信息
parameters:
- description: 更新钱包请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.UpdateWalletCommand'
produces:
- application/json
responses:
"200":
description: 钱包更新成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 更新钱包信息
tags:
- 钱包管理
/api/v1/finance/wallet/recharge:
post:
consumes:
- application/json
description: 为钱包进行充值操作
parameters:
- description: 充值请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.RechargeWalletCommand'
produces:
- application/json
responses:
"200":
description: 充值成功
schema:
$ref: '#/definitions/responses.TransactionResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 钱包充值
tags:
- 钱包管理
/api/v1/finance/wallet/stats:
get:
consumes:
- application/json
description: 获取钱包相关的统计数据
produces:
- application/json
responses:
"200":
description: 获取钱包统计成功
schema:
$ref: '#/definitions/responses.WalletStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取钱包统计
tags:
- 钱包管理
/api/v1/finance/wallet/transaction:
post:
consumes:
- application/json
description: 执行钱包内部交易操作
parameters:
- description: 交易请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.WalletTransactionCommand'
produces:
- application/json
responses:
"200":
description: 交易成功
schema:
$ref: '#/definitions/responses.TransactionResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 钱包交易
tags:
- 钱包管理
/api/v1/finance/wallet/withdraw:
post:
consumes:
- application/json
description: 从钱包进行提现操作
parameters:
- description: 提现请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.WithdrawWalletCommand'
produces:
- application/json
responses:
"200":
description: 提现申请已提交
schema:
$ref: '#/definitions/responses.TransactionResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 钱包提现
tags:
- 钱包管理
/api/v1/my/subscriptions:
get:
consumes:
- application/json
description: 获取当前用户的订阅列表
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 订阅状态
in: query
name: status
type: string
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取订阅列表成功
schema:
$ref: '#/definitions/responses.SubscriptionListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅列表
tags:
- 我的订阅
/api/v1/my/subscriptions/{id}:
get:
consumes:
- application/json
description: 获取指定订阅的详细信息
parameters:
- description: 订阅ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取订阅详情成功
schema:
$ref: '#/definitions/responses.SubscriptionInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订阅不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅详情
tags:
- 我的订阅
/api/v1/my/subscriptions/{id}/usage:
get:
consumes:
- application/json
description: 获取指定订阅的使用情况统计
parameters:
- description: 订阅ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取使用情况成功
schema:
$ref: '#/definitions/responses.SubscriptionUsageResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 订阅不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅使用情况
tags:
- 我的订阅
/api/v1/my/subscriptions/stats:
get:
consumes:
- application/json
description: 获取当前用户的订阅统计信息
produces:
- application/json
responses:
"200":
description: 获取订阅统计成功
schema:
$ref: '#/definitions/responses.SubscriptionStatsResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取我的订阅统计
tags:
- 我的订阅
/api/v1/products:
get:
consumes:
- application/json
description: 分页获取可用的产品列表,支持筛选
parameters:
- default: 1
description: 页码
in: query
name: page
type: integer
- default: 10
description: 每页数量
in: query
name: page_size
type: integer
- description: 搜索关键词
in: query
name: keyword
type: string
- description: 分类ID
in: query
name: category_id
type: string
- description: 最低价格
in: query
name: min_price
type: number
- description: 最高价格
in: query
name: max_price
type: number
- description: 是否启用
in: query
name: is_enabled
type: boolean
- description: 是否可见
in: query
name: is_visible
type: boolean
- description: 是否组合包
in: query
name: is_package
type: boolean
- description: 排序字段
in: query
name: sort_by
type: string
- description: 排序方向
enum:
- asc
- desc
in: query
name: sort_order
type: string
produces:
- application/json
responses:
"200":
description: 获取产品列表成功
schema:
$ref: '#/definitions/responses.ProductListResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品列表
tags:
- 数据大厅
/api/v1/products/{id}:
get:
consumes:
- application/json
description: 根据产品ID获取产品详细信息
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: 获取产品详情成功
schema:
$ref: '#/definitions/responses.ProductInfoResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品详情
tags:
- 数据大厅
/api/v1/products/{id}/subscribe:
post:
consumes:
- application/json
description: 用户订阅指定产品
parameters:
- description: 产品ID
in: path
name: id
required: true
type: string
- description: 订阅请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.CreateSubscriptionCommand'
produces:
- application/json
responses:
"200":
description: 订阅成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 产品不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 订阅产品
tags:
- 数据大厅
/api/v1/products/stats:
get:
consumes:
- application/json
description: 获取产品相关的统计信息
produces:
- application/json
responses:
"200":
description: 获取统计信息成功
schema:
$ref: '#/definitions/responses.ProductStatsResponse'
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 获取产品统计
tags:
- 数据大厅
/api/v1/users/login-password:
post:
consumes:
- application/json
description: 使用手机号和密码进行用户登录返回JWT令牌
parameters:
- description: 密码登录请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.LoginWithPasswordCommand'
produces:
- application/json
responses:
"200":
description: 登录成功
schema:
$ref: '#/definitions/responses.LoginUserResponse'
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"401":
description: 用户名或密码错误
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户密码登录
tags:
- 用户认证
/api/v1/users/login-sms:
post:
consumes:
- application/json
description: 使用手机号和短信验证码进行用户登录返回JWT令牌
parameters:
- description: 短信登录请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.LoginWithSMSCommand'
produces:
- application/json
responses:
"200":
description: 登录成功
schema:
$ref: '#/definitions/responses.LoginUserResponse'
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"401":
description: 认证失败
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户短信验证码登录
tags:
- 用户认证
/api/v1/users/me:
get:
consumes:
- application/json
description: 根据JWT令牌获取当前登录用户的详细信息
produces:
- application/json
responses:
"200":
description: 用户信息
schema:
$ref: '#/definitions/responses.UserProfileResponse'
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"404":
description: 用户不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 获取当前用户信息
tags:
- 用户管理
/api/v1/users/me/password:
put:
consumes:
- application/json
description: 使用旧密码、新密码确认和验证码修改当前用户的密码
parameters:
- description: 修改密码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ChangePasswordCommand'
produces:
- application/json
responses:
"200":
description: 密码修改成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"401":
description: 未认证
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
security:
- Bearer: []
summary: 修改密码
tags:
- 用户管理
/api/v1/users/register:
post:
consumes:
- application/json
description: 使用手机号、密码和验证码进行用户注册,需要确认密码
parameters:
- description: 用户注册请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.RegisterUserCommand'
produces:
- application/json
responses:
"201":
description: 注册成功
schema:
$ref: '#/definitions/responses.RegisterUserResponse'
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"409":
description: 手机号已存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 用户注册
tags:
- 用户认证
/api/v1/users/reset-password:
post:
consumes:
- application/json
description: 使用手机号、验证码和新密码重置用户密码(忘记密码时使用)
parameters:
- description: 重置密码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.ResetPasswordCommand'
produces:
- application/json
responses:
"200":
description: 密码重置成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误或验证码无效
schema:
additionalProperties: true
type: object
"404":
description: 用户不存在
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 重置密码
tags:
- 用户认证
/api/v1/users/send-code:
post:
consumes:
- application/json
description: 向指定手机号发送验证码,支持注册、登录、修改密码等场景
parameters:
- description: 发送验证码请求
in: body
name: request
required: true
schema:
$ref: '#/definitions/commands.SendCodeCommand'
produces:
- application/json
responses:
"200":
description: 验证码发送成功
schema:
additionalProperties: true
type: object
"400":
description: 请求参数错误
schema:
additionalProperties: true
type: object
"429":
description: 请求频率限制
schema:
additionalProperties: true
type: object
"500":
description: 服务器内部错误
schema:
additionalProperties: true
type: object
summary: 发送短信验证码
tags:
- 用户认证
securityDefinitions:
Bearer:
description: Type "Bearer" followed by a space and JWT token.
in: header
name: Authorization
type: apiKey
swagger: "2.0"