A AuthMS API Wiki API Reference iam.tianv.com →

POST /storage/folders

Storage API版本:创建新文件夹,支持验证父文件夹存在性,发布FolderCreatedEvent领域事件。参考:GDPR Art 32 (Security of Processing)。

存储服务 `bearerAuth` application/json

Request Body

Schema: dto.CreateFolderRequest

FieldTypeRequiredExampleConstraintsDescription
name string Yes My Folder
parent_id string No 01ARZ3NDEKTSV4RRFFQ69G5FAV

Responses

StatusDescriptionSchema
201文件夹创建成功,返回文件夹元数据dto.CreateFolderResponse
400参数验证失败或父文件夹不存在dto.Problem
401未认证或令牌已过期dto.Problem
500服务器内部错误dto.Problem

Referenced Schemas

dto.CreateFolderResponse

FieldTypeRequiredExampleConstraintsDescription
code integer No
data dto.FolderMetadataResponse No
message string No
timestamp string No

dto.FieldViolation

FieldTypeRequiredExampleConstraintsDescription
code string No Code 是错误代码(可选) 用于程序识别错误类型,如 "required", "format", "range"
description string No Description 是人类可读的错误描述 应该说明违反了什么规则,如 "必须是一个有效的邮箱地址"
field string No Field 是错误字段的路径 使用点号表示嵌套字段,如 "user.email" 或 "addresses[0].city"
value object No Value 是导致错误的值(可选,开发模式下使用) 生产环境可能不返回此字段以避免泄露敏感信息

dto.FolderMetadataResponse

文件夹元数据信息

FieldTypeRequiredExampleConstraintsDescription
created_at string No 2026-04-01T00:00:00Z 创建时间
file_count integer No 15 文件数
folder_id string No folder_abc123 文件夹ID
is_public boolean No False 是否公开
name string No 项目文档 文件夹名称?
owner_id string No usr_abc123 所有ID
parent_id string No folder_root 父文件夹
subfolder_count integer No 3 子文件夹数?
tenant_id string No tnt_xyz789 租户ID
updated_at string No 2026-04-10T14:20:00Z 更新时间

dto.Problem

FieldTypeRequiredExampleConstraintsDescription
code integer No Code 是业务错误码 用于程序处理特定错误场景 示例:30101001
detail string No Detail 是针对此具体错误实例的人类可读解释 可以包含具体的错误细节,如"Field 'email' is required"
errors array of

See dto.FieldViolation

No Errors 是字段级验证错误列表(扩展字段) 遵循 Web API 标准实践,每个错误包含字段名和错误信息
i18n_args object No I18nArgs 是国际化参数 用于动态填充翻译模板
i18n_key string No I18nKey 是国际化键 用于客户端本地化错误消息 示例:"error.user_not_found"
instance string No Instance 是发生问题的具体URI引用 通常是请求的URL,可能包含查询参数 示例:"/api/v1/users?limit=invalid"
request_id string No RequestID 是请求唯一标识 用于日志关联和问题追踪 示例:"req_550e8400-e29b-41d4-a716-446655440000"
retry_after integer No RetryAfter 用于 429 Too Many Requests 响应 指示客户端应在多少秒后重试请求(RFC 6585)
service string No Service 是服务名 用于微服务架构中定位错误来源 示例:"auth-service"
span_id string No SpanID 是当前 span 标识 用于精确定位分布式链路中的当前节点
status integer No Status 是产生的HTTP状态码 用于客户端区分问题类型,不随Accept-Language变化 示例:400, 401, 403, 404, 500
timestamp string No Timestamp 是错误发生时间 ISO 8601 格式 示例:"2026-04-03T12:00:00Z"
title string No Title 是简短、人类可读的问题类型摘要 相同的 Type 应该始终有相同的 Title(不随实例变化) 示例:"Invalid Request Parameters"
trace_id string No TraceID 是分布式追踪标识 遵循 W3C Trace Context 标准 示例:"00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-01"
type string No Type 是标识问题类型的URI引用 当该URI被解引用时,应提供人类可读的文档 示例:"https://api.example.com/errors/invalid-request"