Skip to main content
POST
/
api
/
v1
/
volumes
/
@
{scope}
/
{name}
Create a release upload intent for a scoped volume
curl --request POST \
  --url https://api.example.com/api/v1/volumes/@{scope}/{name} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "version": "<string>",
  "mediaType": "<string>",
  "declaredDigest": "<string>",
  "declaredSize": 1,
  "idempotencyKey": "<string>"
}
'
{
  "uploadId": "<string>",
  "target": {
    "name": "<string>",
    "version": "<string>"
  },
  "mediaType": "<string>",
  "upload": {
    "instructionType": "<string>",
    "url": "<string>",
    "method": "<string>",
    "headers": {}
  },
  "expiresAt": "2023-11-07T05:31:56Z",
  "declaredDigest": "<string>",
  "declaredSize": 1,
  "idempotencyKey": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://agentvolumes.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string

Preferred portable idempotency key. If this header and a body idempotencyKey are both present, they MUST match exactly.

Path Parameters

scope
string
required
Maximum string length: 64
Pattern: ^(?!.*--)[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$
name
string
required
Maximum string length: 128
Pattern: ^(?!.*--)[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$

Body

application/json

The target package name is route-derived. This body supplies the target version and upload constraints; it does not override the path identity.

version
string
required
Pattern: ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][0-9A-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][0-9A-Za-z-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$
mediaType
string
required
Allowed value: "application/gzip"
declaredDigest
string
Pattern: ^sha256:[a-f0-9]{64}$
declaredSize
integer

Declared trust attachment byte size. A bibliotheca can reject the upload intent with 413 Payload Too Large when this value exceeds its accepted trust attachment size limit before byte transfer begins.

Required range: x >= 0
idempotencyKey
string

Response

Upload intent created. Upload instructions are opaque implementation data.

Created for a route-derived target package identity and request-body target version. The target name in this response echoes the reconciled release identity.

uploadId
string
required
Minimum string length: 1
target
object
required
mediaType
string
required

Portable hosted archive upload media type for .tar.gz release bytes.

Allowed value: "application/gzip"
upload
object
required
expiresAt
string<date-time>
required
state
enum<string>
required
Available options:
pending-upload,
uploading,
uploaded,
expired,
failed
declaredDigest
string
Pattern: ^sha256:[a-f0-9]{64}$
declaredSize
integer
Required range: x >= 0
idempotencyKey
string