Xeonr Developer Docs

ListObjectsForS3

POST
/uplim.api.v1.InternalPortalService/ListObjectsForS3

ListObjectsV2 backing query: flat (recursive) or directory-mode listing over a bucket's uploads in lexicographic S3-key order with keyset pagination. Same trust model and internal-token guard as ResolvePortalRequest.

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

Value in1
Connect-Timeout-Ms?number

Define the timeout, in ms

Request Body

application/json

bucketRef?|

Reference to a bucket by ID or hostname

verifiedAccessKeyId?string

Required: only SigV4-verified access keys may list. The api recomputes the key's authority over the bucket.

Length1 <= length
prefix?string

S3 key prefix filter (no leading slash). Empty = whole bucket.

Lengthlength <= 1024
delimiter?string

"" (flat/recursive) or "/" (directory mode: immediate children + common prefixes). Other delimiters are not supported.

Lengthlength <= 1
maxKeys?integer

1-1000; defaults to 1000.

Formatint32
Range0 <= value <= 1000
continuationToken?string

Opaque keyset cursor from a previous page's next_continuation_token.

Lengthlength <= 2048
[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://uploads-api.xeonr.io/uplim.api.v1.InternalPortalService/ListObjectsForS3" \  -H "Connect-Protocol-Version: 1" \  -H "Content-Type: application/json" \  -d '{}'
{
  "denied": {
    "reason": "REASON_UNSPECIFIED"
  },
  "objects": [
    {
      "key": "string",
      "sizeBytes": 0,
      "updatedAt": "2023-01-15T01:30:15.01Z",
      "uploadId": "string"
    }
  ],
  "commonPrefixes": [
    "string"
  ],
  "isTruncated": true,
  "nextContinuationToken": "string"
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}