{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/r2_temp_access_creds_request", "title": "r2_temp_access_creds_request", "example": { "bucket": "example-bucket", "objects": [ "example-object" ], "parentAccessKeyId": "example-access-key-id", "permission": "object-read-write", "prefixes": [ "example-prefix/" ], "ttlSeconds": 3600 }, "properties": { "bucket": { "description": "Name of the R2 bucket", "type": "string" }, "objects": { "description": "Optional object paths to scope the credentials to", "items": { "type": "string" }, "type": "array" }, "parentAccessKeyId": { "description": "The parent access key id to use for signing", "type": "string" }, "permission": { "description": "Permissions allowed on the credentials", "enum": [ "admin-read-write", "admin-read-only", "object-read-write", "object-read-only" ], "type": "string" }, "prefixes": { "description": "Optional prefix paths to scope the credentials to", "items": { "type": "string" }, "type": "array" }, "ttlSeconds": { "default": 900, "description": "How long the credentials will live for in seconds", "maximum": 604800, "type": "number" } }, "required": [ "bucket", "permission", "ttlSeconds", "parentAccessKeyId" ], "type": "object" }