Skip to main content
POST
Copy one external image into Batch Relay-managed fulfillment storage

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

Idempotency-Key
string
required

Required stable key for the managed ingestion request; reuse with a different URL/source is rejected.

Required string length: 1 - 200
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

Body

application/json
url
string<uri>
required

One external source. It is downloaded and never retained as the fulfillment URL.

Pattern: ^https://
asset_id
string

One already-finalized Batch Relay or platform image asset. It is resolved and reused without a byte copy.

original_filename
string
Maximum string length: 255

Response

Managed immutable asset

asset_id
string
required

Opaque identifier for later managed-asset attachment.

byte_size
integer
required
Required range: x >= 1
content_type
enum<string>
required
Available options:
image/jpeg,
image/png,
image/tiff,
image/webp
format
enum<string>
required
Available options:
jpeg,
png,
tiff,
webp
original_filename
string
required
pixel_height
integer
required
Required range: x >= 1
pixel_width
integer
required
Required range: x >= 1
reused
boolean
required

True when the same immutable object already existed or a finalized asset_id was reused.

sha256
string
required
Pattern: ^[a-f0-9]{64}$
storage_scope
enum<string>
required

External URL ingress always returns fulfillment; private delivery uses this scope plus object-key lookup.

Available options:
studio,
fulfillment