Skip to main content

Configure a surface's BYO storage by copying the project's archiving config

POST 

/program/api/v2/storage-profiles/:surface/from-archive

Materializes a BYO storage profile for the surface from the project's existing archiving (recording) config — so a customer who already configured S3 for recording doesn't re-enter the same destination + credentials for snapshots/clips (M7 Task 013).

This is a server-side action because the archiving config's secret key is write-only (redacted on GET): only the server can read it from Vault and copy it into the surface profile. The copy happens at call time — it is not a live link; later changes to the archiving config do not propagate (re-POST to re-sync).

After a 200, GET /v2/storage-profiles/{surface} returns a ready byo profile and the feature's writes (e.g. snapshot-rule create) no longer return 422. No request body — the source is always the project's archiving config.

Promotable surfaces: snapshots, clips. Other surfaces respond 422. Requires a BYO archiving config with a non-empty bucket; a project with no archiving config (or a managed archive) responds 422 (nothing to promote from).

Generate JWT

Request​

Responses​

The resulting BYO storage profile (credentials never echoed)

Surface not promotable, or no BYO archiving config to promote from

Internal Server Error

Storage profiles not configured for this deployment