Skip to main content
GET
Get a bounded sandbox-to-Live promotion plan

Authorizations

Authorization
string
header
required

Batch Relay scoped API key or an anonymous Test Mode session. Scope names document required capabilities. Anonymous sessions are sandbox-only and do not authorize studio, event, billing, or Live Mode operations.

Headers

X-BatchRelay-Client-Surface
string

Untrusted optional analytics hint naming the calling client surface. It never affects authorization, routing, pricing, or behavior.

Required string length: 1 - 100
X-BatchRelay-Client-Version
string

Untrusted optional analytics hint naming the calling client version. It never affects authorization, routing, pricing, or behavior.

Required string length: 1 - 100
X-BatchRelay-Invocation-Mode
string

Untrusted optional analytics hint naming the invocation mode. It never affects authorization, routing, pricing, or behavior.

Required string length: 1 - 100

Path Parameters

studio_id
string
required

Stable public studio ID beginning with stu_. The API never selects a studio implicitly; a local CLI profile name is not a studio ID.

Required string length: 5 - 256
Pattern: ^stu_[A-Za-z0-9_-]+$
promotion_id
string
required

Opaque public promotion identifier.

Required string length: 5 - 256
Pattern: ^spr_

Response

Promotion plan/status

An immutable, bounded review and lifecycle record. It never returns secret material, storage IDs/object keys, signed URLs, raw source documents, provider payloads, or customer-context prices. status is authoritative; lifecycle is a compatibility duplicate. preparing is a current state only: trusted internal media staging must settle before apply, without promising asynchronous readiness or byte-copy behavior to the API caller.

id
string
required
Required string length: 5 - 256
Pattern: ^spr_
includes
enum<string>[]
required
Required array length: 1 - 3 elements
Available options:
forms,
catalog,
storefront
plan_sha256
string
required
Pattern: ^[a-f0-9]{64}$
plan_version
integer
required
Required range: x >= 1
resources
object[]
required
Maximum array length: 250
status
enum<string>
required
Available options:
preparing,
ready,
applying,
applied,
conflicted,
failed,
rolled_back,
expired
studio_id
string
required
Required string length: 5 - 256
Pattern: ^stu_
applied_sha256
string | null
Pattern: ^[a-f0-9]{64}$
applied_version
integer | null
Required range: x >= 1
errors
string[]
Maximum array length: 100
Required string length: 1 - 1000
expires_at
string<date-time>
failure_code
string | null
Maximum string length: 80
failure_message
string | null
Maximum string length: 1000
lifecycle
enum<string>
Available options:
preparing,
ready,
applying,
applied,
conflicted,
failed,
rolled_back,
expired
mappings
object[]
Maximum array length: 250
warnings
string[]
Maximum array length: 100
Required string length: 1 - 1000