Delivery and signed links

Serve public assets through a stable URL or mint time-limited grants for private access and revision-specific delivery.

GET/a/{asset_id}
200 OK

Deliver the current revision of a public asset. This endpoint does not use an API key.

Delivery query parameters

NameTypeDescription
vinteger

Pin delivery to one retained revision. Omit it to follow the current revision.

winteger

Target width in pixels.

hinteger

Target height in pixels.

fmwebp | jpg | png

Requested output format.

qinteger

Output quality from 30 to 95.

fitcover | contain | inside | outside

How the source fits the requested width and height.

focuscenter | auto

Choose automatic high-detail framing when fit is cover.

fp-x, fp-ynumber 0 to 1

Explicit focal coordinates. Supply both and use fit=cover.

Current revision
GET https://cdn.steadylink.io/a/$ASSET_ID
Automatic crop
GET https://cdn.steadylink.io/a/$ASSET_ID?w=1200&h=630&fit=cover&focus=auto&fm=webp
The current URL uses a five-minute shared cache lifetime. Revision-specific responses use a one-year immutable cache. Replacement and rollback invalidate the API hot-path cache, but an edge may serve the previous current revision until the five-minute stable cache expires.
POST/api/assets/{asset_id}/signed-url
201 Created

Create a revocable signed access grant.

Required scopeassets:write

Query parameters

NameTypeDescription
ttlinteger

Lifetime in seconds. Clamped between 60 and 2,592,000. Default 300.

namestring

Optional internal label, up to 200 characters.

revisioninteger

Optional revision number. Omit it to follow the current revision.

Response
{
  "id": "grant_uuid",
  "token": "signed_token",
  "name": "customer preview",
  "revisionNumber": 41,
  "expiresAt": "2026-08-17T19:01:00"
}
Use the grant
GET https://cdn.steadylink.io/a/$ASSET_ID?token=$SIGNED_TOKEN
GET/api/assets/{asset_id}/signed-urls
200 OK

List signed grants without returning their secret tokens.

Required scopeassets:read
DELETE/api/assets/{asset_id}/signed-urls/{grant_id}
200 OK

Revoke a signed grant before it expires.

Required scopeassets:write