Skip to main content
POST
Issue version-pinned whole-object result reads
Returns short-lived, version-pinned links for whole stored result objects. This is not an inner-chunk or byte-range endpoint. The existing authenticated result proxy remains available. The server validates ownership, marker delivery, all object metadata and the 64 MiB total before signing any link. A request accepts 1 to 16 paths, including duplicates, and returns deduplicated files in first-requested order. Any failure rejects the whole manifest. The expiry is fixed at 120 seconds.
URLs are bearer capabilities. Keep the response in memory; do not save it to request/response logs, notebooks, receipts or exception bodies. Record only byte counts, hashes and URL-free metadata. Never send Strand credentials or cookies to the storage provider, and do not follow redirects.
objectId fingerprints the provider/bucket/key/version identity. Consumers must verify the pinned generation/version, exact length and available full-object MD5/CRC32C checksums. ETags are opaque and are not SHA-256 or necessarily MD5. The Python SDK exposes complete preflight through JobResults.get_signed_files() and direct reads through get_files_batch(..., transport="signed"). MCP’s download_results export workflow is unchanged; this endpoint does not add a URL-printing MCP tool.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string<uuid>
required

Body

application/json
paths
string[]
required
Required array length: 1 - 16 elements
Required string length: 1 - 512

Response

Private, no-store whole-object capability manifest. All entries have the same conservative expiry.

schemaVersion
enum<integer>
required
Available options:
1
layout
enum<string>
required
Available options:
raw
expiresAt
string<date-time>
required
files
object[]
required
Required array length: 1 - 16 elements