SWIRLS_
ReferenceSDKClient

fileValues

SDK reference for filevalues —

createUploadGrant

Mint a short-lived upload grant for workflow file values (presigned PUT budget)

POST

Usage:

const result = await swirls.client.fileValues.createUploadGrant({
  projectId: '...',
  purpose: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
purpose"workflow_input" | "review" | "form" | "cli" | "chat" | "execution"Yes
environmentstringNo
ttlSecondsnumberNo

Output:

FieldTypeDescription
idstring
projectIdstring
expiresAtstring
maxBytesnumber
maxFilesnumber

initUpload

Reserve quota and return a presigned PUT URL for a pending file object

POST

Usage:

const result = await swirls.client.fileValues.initUpload({
  projectId: '...',
  grantId: '...',
  name: '...',
  mediaType: '...',
  size: 1,
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
grantIdstringYes
namestringYes
mediaTypestringYes
sizenumberYes

Output:

FieldTypeDescription
objectIdstring
uploadUrlstring
expiresAtstring

completeUpload

Verify uploaded bytes in R2 and mint a ready file handle

POST

Usage:

const result = await swirls.client.fileValues.completeUpload({
  projectId: '...',
  grantId: '...',
  objectId: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
grantIdstringYes
objectIdstringYes
sha256stringNo

Output:

FieldTypeDescription
kind"swirls.file"
idstring
mediaTypestring
namestring
sizenumber
sha256string

previewFile

Authorize preview of a ready file object and return a short-lived signed GET URL

GET

Usage:

const result = await swirls.client.fileValues.previewFile({
  projectId: '...',
  objectId: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
objectIdstringYes

Output:

FieldTypeDescription
urlstring
expiresAtstring

On this page