Xeonr Developer Docs

Resolve S3 Access Key

POST
/uplim.api.v1.InternalS3CredentialsService/ResolveS3Credential

Resolves an access key ID to its decrypted secret, grants, disabled flag and owner (user or team) so the S3 gateway can verify SigV4 signatures. Unknown, revoked or ownerless keys return NotFound. Callers must re-resolve at least every 60 seconds so rotation and revocation propagate. Returns FailedPrecondition when the internal token or key bundle is not configured.

Access: internal only — requires the X-Upl-Internal-Token header matching the server's S3_CREDENTIALS_INTERNAL_TOKEN (portal worker / S3 gateway); no user authentication.

AuthorizationBearer <token>

JWT access token obtained via OAuth2 flow or service account

In: header

Header Parameters

Connect-Protocol-Version?number

Define the version of the Connect protocol

Connect-Timeout-Ms?number

Define the timeout, in ms

Request Body

application/json

accessKeyId?string
Length1 <= length <= 128
[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://uploads-api.xeonr.io/uplim.api.v1.InternalS3CredentialsService/ResolveS3Credential" \  -H "Connect-Protocol-Version: 1" \  -H "Connect-Timeout-Ms: 1000" \  -H "Content-Type: application/json" \  -d '{}'
{
  "credentialId": "string",
  "secretAccessKey": "string",
  "userId": "string",
  "userProviderId": "string",
  "disabled": true,
  "grants": [
    {
      "bucketId": "string",
      "level": "BUCKET_PERMISSION_LEVEL_UNSPECIFIED"
    }
  ],
  "ownerType": "string",
  "ownerTeam": "string",
  "platformPresign": true
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}