Skip to content
Registry

storage

v0.1.23

Object storage across AWS S3, GCS, Cloudflare R2, and a native local filesystem backend. Streamed uploads, signed URLs, and object change triggers.

license: Apache-2.0blobgcsobject-storager2s3

Install

bash
iii trigger compose::add worker=storage@0.1.23

Run in your project with the iii engine running. Exact versions are immutable and digest-pinned.

Functions10

storage::deleteObject

Function

Delete an object. No-op when the object does not exist.

Request
  • bucketstringrequired
  • keystringrequired
  • version_idstring
Response
  • deletedbooleanrequired

storage::getObject

Function

Download a small object inline as base64 (10 MiB hard limit). This buffers and inflates the payload; use a presignUrl GET for files and large objects.

Request
  • bucketstringrequired
  • keystringrequired
  • version_idstring
Response
  • body_base64stringrequired
  • content_typestringrequired
  • etagstringrequired
  • last_modifiedstring· date-timerequired
  • sizeinteger· uint64requiredmin 0

storage::headObject

Function

Fetch object metadata (size, ETag, content-type, last-modified) without downloading the body.

Request
  • bucketstringrequired
  • keystringrequired
  • version_idstring
Response
  • content_typestringrequired
  • etagstringrequired
  • last_modifiedstring· date-timerequired
  • sizeinteger· uint64requiredmin 0

storage::listBuckets

Function

List configured worker-facing storage buckets and their providers.

Request
Empty object
Response
  • bucketsobject[]required
    • namestringrequired
    • providerstringrequired

storage::listObjects

Function

List objects and common prefixes in a bucket with provider-native pagination.

Request
  • bucketstringrequired
  • cursorstring
  • delimiterstring

    Directory separator. Use `/` for the bucket/folder explorer; omit it for a flat recursive listing.

  • limitinteger· uint32min 0
  • prefixstring
Response
  • common_prefixesstring[]required
  • next_cursorstring
  • objectsobject[]required
    • content_typestring
    • etagstringrequired
    • keystringrequired
    • last_modifiedstring· date-timerequired
    • sizeinteger· uint64requiredmin 0

storage::on-config-change

Function

Internal: transactionally apply the authoritative storage configuration without restarting the worker.

Request
  • idstring
Response
  • okbooleanrequired

storage::presignPost

Function

Issue a short-lived multipart/form-data POST for direct browser upload. The file never buffers in the engine or worker RPC path.

Request
  • bucketstringrequired
  • content_typestringrequired
  • expires_in_secondsinteger· uint64min 0
  • keystringrequired
  • max_size_bytesinteger· uint64min 0

    Optional upload cap enforced while the HTTP body is streamed.

Response
  • expires_atstring· date-timerequired
  • fieldsobjectrequired
  • urlstringrequired

storage::presignUrl

Function

Issue a short-lived URL the browser can hit directly to PUT or GET an object.

Request
  • bucketstringrequired
  • content_typestring
  • expires_in_secondsinteger· uint64min 0
  • keystringrequired
  • methodstringrequiredenum GET, PUT
  • response_content_dispositionstring

    GET-only: override `Content-Disposition` header on the served response. Rejected with `INVALID_PRESIGN_PARAMS` if set on a PUT presign.

  • response_content_typestring

    GET-only: override `Content-Type` header on the served response. Rejected with `INVALID_PRESIGN_PARAMS` if set on a PUT presign.

Response
  • expires_atstring· date-timerequired
  • urlstringrequired

storage::putObject

Function

Upload a small object inline as base64 (10 MiB hard limit). This buffers and inflates the payload; use presignPost or a presignUrl PUT for files and large objects.

Request
  • body_base64stringrequired

    Base64-encoded small body (10 MiB decoded hard limit). The legacy field name `body` is accepted as an alias for backward compatibility.

  • bucketstringrequired
  • cache_controlstring
  • content_typestring
  • keystringrequired
  • metadataobject
Response
  • etagstringrequired
  • sizeinteger· uint64requiredmin 0
  • version_idstring

storage::ui-content

Function

Serve the storage worker's injected console UI assets (content function for its console:script / console:style triggers).

Request
  • pathstringrequired

    The asset path from the trigger config (e.g. `state/page.js`).

Response
  • contentstringrequired

    The asset source, verbatim.

  • content_typestringrequired

    MIME type the console should serve the asset with.

Triggers2

storage::object-created

Trigger

Fires when an object is written to a configured bucket whose notifications source is wired up.

Invocation
valueunknown
Return
valueunknown

storage::object-deleted

Trigger

Fires when an object is removed from a configured bucket whose notifications source is wired up.

Invocation
valueunknown
Return
valueunknown

Search the registry

Find workers, kits and executables, or jump to a page.