put

open suspend override fun put(uri: String, bytes: ByteArray, contentType: String? = null, etag: String? = null, lastModified: Instant? = null, responseUrl: String? = null)

Persist or replace the blob for uri. contentType is whatever the server returned (e.g. application/octet-stream, model/gltf-binary); null when unknown. etag and lastModified are conditional-fetch metadata the layer can consult on a future revalidation request. responseUrl is the post-redirect URL the body was actually served from — replayed via BlobEntry.responseUrl on cache hits so callers can resolve relative URIs against the body's true origin. Null when same as uri / unknown.