---
title: Update a bucket
description: Changes the permission, availability, or policy of a bucket.
doc_version: 0.1.0-preview
last_updated: 2026-09-14
---

# Update a bucket

`PATCH /v1/workspaces/{workspaceId}/buckets/{bucketId}`

Changes the permission, availability, or policy of a bucket. A missing field keeps its value. Role: editor or higher.

## Authentication

Send `Authorization: Bearer <GRAPHON_API_KEY>`. Read the key from the
GRAPHON_API_KEY environment variable. Never print it.

## Path parameters

- `workspaceId` (string) — The workspace id.
- `bucketId` (string) — The bucket id.

## Request body

- `permission` (string (optional)) — Who can read objects: private, or public-read for anonymous GET and HEAD. One of: private, public-read.
- `availability` (string (optional)) — An offline bucket rejects reads and writes. One of: online, offline.
- `policy` (object (optional)) — Bucket policy settings, such as versioning and retention.

## Example request

```bash
curl --request PATCH \
  --url "https://g4.beta.graphon.ai/v1/workspaces/wspQ7WsH2Np5L/buckets/bktA1b2C3d4E5" \
  --header "Authorization: Bearer $GRAPHON_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{"permission":"public-read"}'
```

## CLI

```bash
graphon buckets update support-tickets --permission public-read
```

## Example response

```json
{
  "id": "bktA1b2C3d4E5",
  "workspaceId": "wspQ7WsH2Np5L",
  "name": "support-tickets",
  "provider": "gcp",
  "location": "us-central1",
  "storageClass": "standard",
  "permission": "private",
  "phase": "active",
  "availability": "online",
  "search": "enabled",
  "objectCount": 12,
  "revision": 1,
  "createdAt": "2026-10-01T12:00:00.000Z",
  "policy": {}
}
```

## Sitemap

See the full [sitemap](/sitemap.md) for all pages.
