Create Upload
Mints a presigned PUT URL (valid 15 minutes) for uploading a zip straight to object storage, plus the matching pull URL to pass as ImportZipHeader.source_url. The filename is reduced to its base name (default upload.zip). Unimplemented unless the workspace store is backed by object storage.
Access: namespace OPERATOR or above (write)
Authorization
BearerAuth A namespace-scoped API key (cpk_…) for machines, or a Xeonr Auth OIDC
token for humans. The key's namespace and role are pinned server-side.
In: header
Header Parameters
Define the version of the Connect protocol
Define the timeout, in ms
Request Body
application/json
length <= 64reduced to its base name; empty = upload.zip
length <= 4096validate:skip not read by the server
int64Response Body
application/json
application/json
curl -X POST "https://containers.xeonr.io/containers.api.v1.WorkspaceService/CreateUpload" \ -H "Connect-Protocol-Version: 1" \ -H "Connect-Timeout-Ms: 1000" \ -H "Content-Type: application/json" \ -d '{}'{
"uploadUrl": "string",
"objectRef": "string",
"expiresAtUnix": "string"
}{
"code": "not_found",
"message": "string",
"details": [
{
"type": "string",
"value": "string",
"debug": {}
}
]
}Copy File POST
Copies a file or subtree within a workspace. Metadata-only: blobs are shared by content address. overwrite controls replacing an existing destination. **Access:** namespace OPERATOR or above (write); a workspace-scoped agent key may act only on the trees it was minted for
Create Workspace POST
Creates a durable workspace in a namespace, optionally forking a snapshot (metadata-only). The snapshot must be in the same namespace (PermissionDenied otherwise). **Access:** namespace OPERATOR or above (write); refused for workspace-scoped agent keys