assets
Mint an asset over existing bytes (dedup fast-path)
Zero-byte fast-path: mints a new asset UUID over a blob the platform already has, identified by its blake3 hash.
Trust boundary: resolves only against blobs the platform itself ingested and hashed, and only those the calling account is authorized to use — the client hash is a lookup key, never an authority to register new content. A miss and "exists but not yours" are deliberately indistinguishable (404 blob_not_found).
post/api/v2/assets/from-hash
Request
- Base URL: http://127.0.0.1:8189
- URL: http://127.0.0.1:8189/api/v2/assets/from-hash
- Auth: one of:
- HTTP bearer
- none
Request body
Example request
{
"hash": "blake3:9f8a1c0d...",
"file_path": "photo.png",
"expires_in": 86400
}Response
An identical reference already existed; returned as-is.
Example response
{
"id": "9f8a1c0d-2b3e-4f56-8a7b-1c2d3e4f5a6b",
"hash": "blake3:9f8a1c0d...",
"size_bytes": 4816293,
"content_type": "image/png",
"file_path": "photo.png"
}