Skip to main content
Assets in a signed folder aren’t fetchable with a bare URL. SignedURL appends a time-limited exp and sig computed locally with your project’s signing secret. No network call is made.

Signature

Returns dreep.ErrNoSigningSecret if the client was built without dreep.WithSigningSecret. Find the secret on the API Keys page of your dashboard.
Anyone holding the link can fetch the asset until exp with no API key, so treat a signed URL as a bearer token and keep TTLs short.

Transforms on signed URLs

Pass nil as the transform. The Go SDK currently signs only <assetID>:<exp>, but when a signed URL carries transform parameters Dreep verifies a signature that also covers those parameters, so a Go-signed transformed link is rejected with 401. Until the SDK is updated, sign transformed links with the Node SDK.

What is signed

The signature is an HMAC-SHA256 hex digest of <assetID>:<exp>, keyed with the URL Signing Secret. It locks the asset and the expiry, matching the scheme documented in Signed URLs.

Serving signed assets from a handler

A common pattern is a handler that checks your own authorisation, then redirects to a short-lived link: