Set bucket settings
curl --request PUT \
--url https://api.coreweave.com/v1/cwobject/bucket/settings \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"bucketName": "<string>",
"settings": {
"auditLoggingEnabled": true,
"archiveEnabled": true,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}
'import requests
url = "https://api.coreweave.com/v1/cwobject/bucket/settings"
payload = {
"bucketName": "<string>",
"settings": {
"auditLoggingEnabled": True,
"archiveEnabled": True,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
bucketName: '<string>',
settings: {
auditLoggingEnabled: true,
archiveEnabled: true,
archiveAfterLastAccessDays: 123,
capacityCapBytes: '<string>',
configuredCapacityCapBytes: '<string>'
}
})
};
fetch('https://api.coreweave.com/v1/cwobject/bucket/settings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.coreweave.com/v1/cwobject/bucket/settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'bucketName' => '<string>',
'settings' => [
'auditLoggingEnabled' => true,
'archiveEnabled' => true,
'archiveAfterLastAccessDays' => 123,
'capacityCapBytes' => '<string>',
'configuredCapacityCapBytes' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.coreweave.com/v1/cwobject/bucket/settings"
payload := strings.NewReader("{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.coreweave.com/v1/cwobject/bucket/settings")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.coreweave.com/v1/cwobject/bucket/settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"settings": {
"auditLoggingEnabled": true,
"archiveEnabled": true,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}Set bucket settings
Configure non-S3 bucket settings such as audit logging.
PUT
/
v1
/
cwobject
/
bucket
/
settings
Set bucket settings
curl --request PUT \
--url https://api.coreweave.com/v1/cwobject/bucket/settings \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"bucketName": "<string>",
"settings": {
"auditLoggingEnabled": true,
"archiveEnabled": true,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}
'import requests
url = "https://api.coreweave.com/v1/cwobject/bucket/settings"
payload = {
"bucketName": "<string>",
"settings": {
"auditLoggingEnabled": True,
"archiveEnabled": True,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
bucketName: '<string>',
settings: {
auditLoggingEnabled: true,
archiveEnabled: true,
archiveAfterLastAccessDays: 123,
capacityCapBytes: '<string>',
configuredCapacityCapBytes: '<string>'
}
})
};
fetch('https://api.coreweave.com/v1/cwobject/bucket/settings', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.coreweave.com/v1/cwobject/bucket/settings",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'bucketName' => '<string>',
'settings' => [
'auditLoggingEnabled' => true,
'archiveEnabled' => true,
'archiveAfterLastAccessDays' => 123,
'capacityCapBytes' => '<string>',
'configuredCapacityCapBytes' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.coreweave.com/v1/cwobject/bucket/settings"
payload := strings.NewReader("{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.coreweave.com/v1/cwobject/bucket/settings")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.coreweave.com/v1/cwobject/bucket/settings")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"bucketName\": \"<string>\",\n \"settings\": {\n \"auditLoggingEnabled\": true,\n \"archiveEnabled\": true,\n \"archiveAfterLastAccessDays\": 123,\n \"capacityCapBytes\": \"<string>\",\n \"configuredCapacityCapBytes\": \"<string>\"\n }\n}"
response = http.request(request)
puts response.read_body{
"settings": {
"auditLoggingEnabled": true,
"archiveEnabled": true,
"archiveAfterLastAccessDays": 123,
"capacityCapBytes": "<string>",
"configuredCapacityCapBytes": "<string>"
}
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}gRPC method: SetBucketSettings
- The API server is
https://api.coreweave.com. - Replace
{API_ACCESS_TOKEN}with your CoreWeave API access token. - For required permissions, see IAM Access Policies.
settings.auditLoggingEnabled.
data.json
{
"bucketName": "my-bucket",
"settings": {
"auditLoggingEnabled": true
}
}
Example request
curl -X PUT https://api.coreweave.com/v1/cwobject/bucket/settings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {API_ACCESS_TOKEN}" \
-d @data.json
Authorizations
CoreWeave API access token sent as a bearer token in the Authorization header (the value is prefixed with Bearer). Used by every operation except the SAML/OIDC token-exchange endpoints (anonymous) and the container credentials GET (which uses ContainerCredentialsAuth).
Body
application/json
Response
OK
The bucket settings after the update is applied.
The bucket settings now in effect.
Show child attributes
Show child attributes
Last modified on August 20, 2026
Was this page helpful?
⌘I