upload
user.file.upload
Uploads a binary file into the caller’s private vault. Content is encrypted with a vault-scoped DEK and stored in MinIO.
Auth
Bearer JWT + unsealed vault.
Input
GraphQL multipart
File upload uses the GraphQL multipart request spec. You send a multipart POST with three parts:
operations— a JSON blob containing{ query, variables }, with the file variable set tonull.map— a JSON blob mapping file-part names to thenullvariable location, e.g.{ "0": ["variables.input.file"] }.0— the actual file data.
curl (minimal)
Response
Warning
This GraphQL path is meant for small-to-medium files. For large transfers prefer the HTTP streaming endpoints — those bypass the GraphQL handler’s body buffer.