Xeonr Developer Docs
API SpecificationBuckets

Update bucket

POST
/uplim.api.v1.BucketsService/UpdateBucket

Updates bucket settings including name, aliases, type, and portal configuration.

Authorization

OAuth2 upl:bucket:manage
AuthorizationBearer <token>

OAuth 2.0 authorization

In: header

Scope: upl:bucket:manage

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 the bucket

updateMask?string

Field mask to specify which fields to update Valid paths: "type", "aliases", "primary_alias", "bucket_name", "portal_config" If not provided, all non-empty fields will be updated (legacy behavior)

type?string
Value in"BUCKET_TYPE_UNSPECIFIED" | "BUCKET_TYPE_UPLOADS_DIRECTORY" | "BUCKET_TYPE_UPLOADS_TAGS"
aliases?aliases

Set the complete list of aliases for the bucket The system will automatically add new aliases and remove missing ones Note: Cannot remove primary alias unless setting a new one

Itemsitems <= 8
recheckAliasStatus?boolean

Recheck Cloudflare status for all custom domain aliases

primaryAlias?string|null

Set the primary alias for the bucket Must be a verified custom domain or a non-custom domain Can be set to a new alias being added in the same request (for non-custom domains)

Formathostname
Length1 <= length <= 64
bucketName?string|null

Update the bucket's display name This is a user-friendly label and does not affect routing (aliases handle that)

Length3 <= length <= 64
portalConfig?

Update the bucket's portal configuration

[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://uploads-api.xeonr.io/uplim.api.v1.BucketsService/UpdateBucket" \  -H "Connect-Protocol-Version: 1" \  -H "Content-Type: application/json" \  -d '{}'
{
  "bucket": {
    "bucketId": "string",
    "bucketName": "string",
    "url": "string",
    "uploadCount": 0,
    "usedSpaceBytes": 0,
    "totalSpaceBytes": 0,
    "aliases": [
      "string"
    ],
    "isPrimary": true,
    "createdAt": "2023-01-15T01:30:15.01Z",
    "updatedAt": "2023-01-15T01:30:15.01Z",
    "type": "BUCKET_TYPE_UNSPECIFIED",
    "destination": "BUCKET_DESTINATION_UNSPECIFIED",
    "destinationConfig": {
      "s3Bucket": {
        "bucketName": "example.com",
        "region": "string",
        "roleArn": "string"
      }
    },
    "primaryAlias": "string",
    "portalConfig": {
      "cdnMode": true
    }
  },
  "aliasStatus": [
    {
      "alias": "string",
      "isCustomDomain": true,
      "status": "string",
      "verifiedAt": "2023-01-15T01:30:15.01Z",
      "error": "string",
      "createdAt": "2023-01-15T01:30:15.01Z",
      "fallbackHostname": "string"
    }
  ]
}
{
  "code": "not_found",
  "message": "string",
  "details": [
    {
      "type": "string",
      "value": "string",
      "debug": {}
    }
  ]
}