Request an upload of a recipe build input (a file, or a folder as an uncompressed tar), by content
200 {upload, put: null} when the organization already has these bytes (a pending upload is checked in the bucket first). 201 with a presigned S3 PUT otherwise (valid 900 s): send the bytes with every header of put.headers (x-amz-checksum-sha256 and content-length are signed, so S3 refuses other bytes), then reference sha256:<hex> in the recipe’s build.files. Idempotent by content (no Idempotency-Key needed). Errors: 422 upload_too_large (details.limit upload_bytes_max: at most 5 GiB), 422 upload_digest_mismatch (the same sha256 is available with another size), 503 dependency_unavailable (uploads_not_configured). Owners/admins and API keys with a tool permission.
Request
- Base URL: https://api.shardflux.dev
- URL: https://api.shardflux.dev/v1/organizations/{organization_id}/template-uploads
- Auth: HTTP bearer
Path parameters
UUIDv7, lowercase canonical form.
Request body
Response
200: the bytes are already available (put null). 201: PUT the bytes with put, then reference sha256:<hex> in the recipe.
Changes
No recorded changes to this operation across all 1 revision of this API.