import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
bucket = client.storage.object_storages.buckets.update(
name="name",
storage_id=0,
)
print(bucket.storage_id)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/option"
"github.com/G-Core/gcore-go/storage"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
bucket, err := client.Storage.ObjectStorages.Buckets.Update(
context.TODO(),
"name",
storage.ObjectStorageBucketUpdateParams{
StorageID: 0,
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", bucket.StorageID)
}
curl --request PATCH \
--url https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"cors": {
"allowed_origins": [
"https://example.com"
]
},
"lifecycle": {
"expiration_days": 30
},
"policy": {
"is_public": true
}
}
'const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cors: {allowed_origins: ['https://example.com']},
lifecycle: {expiration_days: 30},
policy: {is_public: true}
})
};
fetch('https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}', 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.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'cors' => [
'allowed_origins' => [
'https://example.com'
]
],
'lifecycle' => [
'expiration_days' => 30
],
'policy' => [
'is_public' => true
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.patch("https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cors\": {\n \"allowed_origins\": [\n \"https://example.com\"\n ]\n },\n \"lifecycle\": {\n \"expiration_days\": 30\n },\n \"policy\": {\n \"is_public\": true\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cors\": {\n \"allowed_origins\": [\n \"https://example.com\"\n ]\n },\n \"lifecycle\": {\n \"expiration_days\": 30\n },\n \"policy\": {\n \"is_public\": true\n }\n}"
response = http.request(request)
puts response.read_body{
"cors": {
"allowed_origins": [
"https://example.com",
"*"
]
},
"lifecycle": {
"expiration_days": 30
},
"name": "my-bucket",
"policy": {
"is_public": true
},
"storage_id": 123
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Update bucket
Updates bucket CORS, Lifecycle, and/or Policy settings. Supports partial updates - only specified fields will be modified.
Lifecycle: set expiration_days to a positive integer to enable, null or 0 to remove. Negative values return 400.
CORS: set allowed_origins to a non-empty array to configure, empty array to remove.
Policy: set is_public to true/false to update.
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
bucket = client.storage.object_storages.buckets.update(
name="name",
storage_id=0,
)
print(bucket.storage_id)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/option"
"github.com/G-Core/gcore-go/storage"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
bucket, err := client.Storage.ObjectStorages.Buckets.Update(
context.TODO(),
"name",
storage.ObjectStorageBucketUpdateParams{
StorageID: 0,
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", bucket.StorageID)
}
curl --request PATCH \
--url https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"cors": {
"allowed_origins": [
"https://example.com"
]
},
"lifecycle": {
"expiration_days": 30
},
"policy": {
"is_public": true
}
}
'const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
cors: {allowed_origins: ['https://example.com']},
lifecycle: {expiration_days: 30},
policy: {is_public: true}
})
};
fetch('https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}', 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.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'cors' => [
'allowed_origins' => [
'https://example.com'
]
],
'lifecycle' => [
'expiration_days' => 30
],
'policy' => [
'is_public' => true
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.patch("https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"cors\": {\n \"allowed_origins\": [\n \"https://example.com\"\n ]\n },\n \"lifecycle\": {\n \"expiration_days\": 30\n },\n \"policy\": {\n \"is_public\": true\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/storage/v4/object_storages/{storage_id}/buckets/{name}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"cors\": {\n \"allowed_origins\": [\n \"https://example.com\"\n ]\n },\n \"lifecycle\": {\n \"expiration_days\": 30\n },\n \"policy\": {\n \"is_public\": true\n }\n}"
response = http.request(request)
puts response.read_body{
"cors": {
"allowed_origins": [
"https://example.com",
"*"
]
},
"lifecycle": {
"expiration_days": 30
},
"name": "my-bucket",
"policy": {
"is_public": true
},
"storage_id": 123
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234_abcdef
Body
BucketPatchBodyV4 Request body for updating a bucket. Each field is independently optional — omit a field to leave that aspect of the bucket unchanged.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
BucketDetailResV4
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Globally unique bucket name within the storage. Used as the path prefix when accessing objects via S3 API.
"my-bucket"
Show child attributes
Show child attributes
Parent storage this bucket belongs to. Use this ID in the URL path for bucket operations.
123
Was this page helpful?