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

POST /files/multipart/init

初始化大文件分片上传任务,为每个分片生成预签名PUT上传URL。自动检查文件类型白名单和租户存储配额(配额不足时拒绝)。创建multipart_pending状态的文件记录。参考:GDPR Art 32 (Security of Processing)。

存储服务 `bearerAuth` application/json

Request Body

Schema: dto.InitMultipartUploadRequest

FieldTypeRequiredExampleConstraintsDescription
content_type string Yes video/mp4
file_name string Yes large-video.mp4
part_count integer Yes 4
total_size integer Yes 1073741824
folder_id string No 01ARZ3NDEKTSV4RRFFQ69G5FAV
visibility string No private

Responses

StatusDescriptionSchema
200初始化成功,返回upload_id和各分片预签名上传URLdto.MultipartInitDataDetailResponse
400参数验证失败或文件类型不允许dto.Problem
401未认证或令牌已过期dto.Problem
413文件总大小超限dto.Problem
500服务器内部错误dto.Problem
507存储配额不足dto.Problem

Referenced Schemas

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.MultipartInitData

FieldTypeRequiredExampleConstraintsDescription
expires_in integer No 3600
file_id string No file_abc123
parts array of

See dto.MultipartPartInfo

No
upload_id string No upload_abc123

dto.MultipartInitDataDetailResponse

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

dto.MultipartPartInfo

FieldTypeRequiredExampleConstraintsDescription
part_number integer No
part_path string No
part_size integer No
upload_url string No

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"