Xeonr Developer Docs

Get Bucket Serving Config

POST
/uplim.api.v1.InternalPortalService/GetBucketServingConfig

Returns what the worker needs to serve a bucket's bytes independent of any object: CORS rules (absent means unconfigured, so the worker derives the default from cdn_mode; present-but-empty means allow nothing), the bucket policy document, the privacy flag, portal config and slug. An unknown bucket returns denied with REASON_NOT_FOUND.

Access: internal only — the portal worker, authenticated by the shared X-Upl-Internal-Token header matching S3_CREDENTIALS_INTERNAL_TOKEN (FailedPrecondition when unset, Unauthenticated on mismatch). 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

bucketRef?&
[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://uploads-api.xeonr.io/uplim.api.v1.InternalPortalService/GetBucketServingConfig" \  -H "Connect-Protocol-Version: 1" \  -H "Connect-Timeout-Ms: 1000" \  -H "Content-Type: application/json" \  -d '{}'
{
  "denied": {
    "reason": "REASON_UNSPECIFIED"
  },
  "cors": {
    "rules": [
      {
        "id": "string",
        "allowedOrigins": [
          "string"
        ],
        "allowedMethods": [
          "string"
        ],
        "allowedHeaders": [
          "string"
        ],
        "exposeHeaders": [
          "string"
        ],
        "maxAgeSeconds": 86400
      }
    ]
  },
  "policyJson": "string",
  "private": true,
  "portalConfig": {
    "cdnMode": true
  },
  "slug": "string"
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}