Skip to main content
POST
Get Storage Credentials

Authorizations

Authorization
string
header
required

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

Body

application/json

Request body for the unified storage credentials endpoint.

path
string
required

S3 URI (e.g. s3://bucket/prefix) to obtain credentials for.

Required string length: 6 - 1024
Pattern: ^s3:\/\/([a-zA-Z0-9._\-]{3,63})(?:\/?|\/([a-zA-Z0-9!_.*'()/&=-]+))?$
access_mode
enum<string>
default:read

Access mode for the credentials. 'read' returns read-only credentials; 'read_write' returns credentials that also allow writing.

Available options:
read,
read_write
privilege
enum<string>
default:Minimal

Minimal preserves requested-path scoping. Default opts into credentials for a server-selected authorized scope, returned as matchedGrantTarget. Underlying IAM restrictions still apply within that scope.

Available options:
Minimal,
Default
duration_seconds
integer
default:3600

Requested credential lifetime in seconds.

Required range: 900 <= x <= 3600

Response

Temporary AWS credentials; OPERA sources use provider-scoped read-only ASF sessions

Credentials with an optional server-selected target for client cache reuse.

accessKeyId
string
required
secretAccessKey
string
required
sessionToken
string
required
expiration
string<date-time>
required
region
string
required
matchedGrantTarget
string | null

Returned for Default privilege when the scope has no competing credential sources. If absent, cache only for the exact request. A trailing slash denotes descendants only; otherwise match the exact path or slash-delimited descendants. Reuse requires the same access mode and unexpired credentials.