Object Storage v4.176.0
Object Storage Buckets List
Returns a paginated list of all Object Storage Buckets that you own.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/
Response Samples
{
"data": [
{
"cluster": "us-east-1",
"created": "2019-01-01T01:23:45",
"hostname": "example-bucket.us-east-1.linodeobjects.com",
"label": "example-bucket",
"objects": 4,
"size": 188318981
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||||
page | integer The current page. | ||||||||||||
pages | integer The total number of pages. | ||||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Object Storage Bucket Create
Creates an Object Storage Bucket in the specified cluster.
Accounts with negative balances cannot access this command.
If the bucket already exists and is owned by you, this endpoint returns a 200
response with that bucket as if it had just been created.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"label": "example-bucket",
"cluster": "us-east-1",
"cors_enabled": true,
"acl": "private"
}' \
https://api.linode.com/v4/object-storage/buckets/
Request Body Schema
acl | string Enum:
private
public-read
authenticated-read
public-read-write
Default:
private The Access Control Level of the bucket using a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
cluster Required | string The ID of the Object Storage Cluster where this bucket should be created. |
cors_enabled | boolean Default:
false If true, the bucket will be created with CORS enabled for all origins. For more fine-grained controls of CORS, use the S3 API directly. |
label Required | string The name for this bucket. Must be unique in the cluster you are creating the bucket in, or an error will be returned. Labels will be reserved only for the cluster that active buckets are created and stored in. If you want to reserve this bucket’s label in another cluster, you must create a new bucket with the same label in the new cluster. |
Response Samples
{
"cluster": "us-east-1",
"created": "2019-01-01T01:23:45",
"hostname": "example-bucket.us-east-1.linodeobjects.com",
"label": "example-bucket",
"objects": 4,
"size": 188318981
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
cluster | string The ID of the Object Storage Cluster this bucket is in. |
created | string<date-time> When this bucket was created. |
hostname | string The hostname where this bucket can be accessed. This hostname can be accessed through a browser if the bucket is made public. |
label | string The name of this bucket. |
objects | integer The number of objects stored in this bucket. |
size | integer The size of the bucket in bytes. |
errors | array
of objects
|
Object Storage Buckets in Cluster List
Returns a list of Buckets in this cluster belonging to this Account.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/us-east-1
Response Samples
{
"data": [
{
"cluster": "us-east-1",
"created": "2019-01-01T01:23:45",
"hostname": "example-bucket.us-east-1.linodeobjects.com",
"label": "example-bucket",
"objects": 4,
"size": 188318981
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||||
page | integer The current page. | ||||||||||||
pages | integer The total number of pages. | ||||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Object Storage Bucket Remove
Removes a single bucket.
Bucket objects must be removed prior to removing the bucket. While buckets containing objects may be deleted using the s3cmd command-line tool, such operations can fail if the bucket contains too many objects. The recommended way to empty large buckets is to use the S3 API to configure lifecycle policies that remove all objects, then delete the bucket.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Object Storage Bucket View
Returns a single Object Storage Bucket.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket
Response Samples
{
"cluster": "us-east-1",
"created": "2019-01-01T01:23:45",
"hostname": "example-bucket.us-east-1.linodeobjects.com",
"label": "example-bucket",
"objects": 4,
"size": 188318981
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
cluster | string The ID of the Object Storage Cluster this bucket is in. |
created | string<date-time> When this bucket was created. |
hostname | string The hostname where this bucket can be accessed. This hostname can be accessed through a browser if the bucket is made public. |
label | string The name of this bucket. |
objects | integer The number of objects stored in this bucket. |
size | integer The size of the bucket in bytes. |
errors | array
of objects
|
Object Storage Bucket Access Modify
Allows changing basic Cross-origin Resource Sharing (CORS) and Access Control Level (ACL) settings. Only allows enabling/disabling CORS for all origins, and/or setting canned ACLs.
For more fine-grained control of both systems, please use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"cors_enabled": true,
"acl": "private"
}' \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/access
Request Body Schema
acl | string Enum:
private
public-read
authenticated-read
public-read-write
custom The Access Control Level of the bucket, as a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
cors_enabled | boolean If true, the bucket will be created with CORS enabled for all origins. For more fine-grained controls of CORS, use the S3 API directly. |
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Object Storage Bucket Access Update
Allows changing basic Cross-origin Resource Sharing (CORS) and Access Control Level (ACL) settings. Only allows enabling/disabling CORS for all origins, and/or setting canned ACLs.
For more fine-grained control of both systems, please use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \
-X PUT -d '{
"cors_enabled": true,
"acl": "private"
}' \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/access
Request Body Schema
acl | string Enum:
private
public-read
authenticated-read
public-read-write
custom The Access Control Level of the bucket, as a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
cors_enabled | boolean If true, the bucket will be created with CORS enabled for all origins. For more fine-grained controls of CORS, use the S3 API directly. |
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Object Storage Object ACL Config View
View an Object’s configured Access Control List (ACL) in this Object Storage bucket. ACLs define who can access your buckets and objects and specify the level of access granted to those users.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Query Parameters
name |
The |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/object-acl?name=example.txt
Response Samples
{
"acl": "public-read",
"acl_xml": "<AccessControlPolicy>...</AccessControlPolicy>"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
acl | string Enum:
private
public-read
authenticated-read
public-read-write
custom The Access Control Level of the bucket, as a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
acl_xml | string The full XML of the object’s ACL policy. |
errors | array
of objects
|
Object Storage Object ACL Config Update
Update an Object’s configured Access Control List (ACL) in this Object Storage bucket. ACLs define who can access your buckets and objects and specify the level of access granted to those users.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \
-X PUT -d '{
"acl": "public-read",
"name": "example.txt"
}' \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/object-acl
Request Body Schema
acl Required | string Enum:
private
public-read
authenticated-read
public-read-write
custom The Access Control Level of the bucket, as a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
name Required | string The |
Response Samples
{
"acl": "public-read",
"acl_xml": "<AccessControlPolicy>...</AccessControlPolicy>"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
acl | string Enum:
private
public-read
authenticated-read
public-read-write
custom The Access Control Level of the bucket, as a canned ACL string. For more fine-grained control of ACLs, use the S3 API directly. |
acl_xml | string The full XML of the object’s ACL policy. |
errors | array
of objects
|
Object Storage Bucket Contents List
Returns the contents of a bucket. The contents are paginated using a marker
,
which is the name of the last object on the previous page. Objects may
be filtered by prefix
and delimiter
as well; see Query Parameters for more
information.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Query Parameters
marker |
The “marker” for this request, which can be used to paginate through large buckets. Its value should be the value of the |
delimiter |
The delimiter for object names; if given, object names will be returned up to the first occurrence of this character. This is most commonly used with the |
prefix |
Filters objects returned to only those whose name start with the given prefix. Commonly used in conjunction with |
page_size |
The number of items to return per page. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/object-list
Response Samples
{
"data": [
{
"etag": "9f254c71e28e033bf9e0e5262e3e72ab",
"last_modified": "2019-01-01T01:23:45",
"name": "example",
"owner": "bfc70ab2-e3d4-42a4-ad55-83921822270c",
"size": 123
}
],
"is_truncated": true,
"next_marker": "bd021c21-e734-4823-97a4-58b41c2cd4c8.892602.184"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||
is_truncated | boolean Designates if there is another page of bucket objects. | ||||||||||
next_marker Nullable | string Returns the value you should pass to the |
errors | array
of objects
|
Object Storage Object URL Create
Creates a pre-signed URL to access a single Object in a bucket. This
can be used to share objects, and also to create/delete objects by using
the appropriate HTTP method in your request body’s method
parameter.
This endpoint is available for convenience. It is recommended that instead you use the more fully-featured S3 API directly.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"method": "GET",
"name": "example"
}' \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/object-url
Request Body Schema
content_type | string The expected |
expires_in | integer
360..86400Default:
3600 How long this signed URL will be valid for, in seconds. If omitted, the URL will be valid for 3600 seconds (1 hour). |
method Required | string Default:
GET The HTTP method allowed to be used with the pre-signed URL. |
name Required | string The name of the object that will be accessed with the pre-signed URL. This object need not exist, and no error will be returned if it doesn’t. This behavior is useful for generating pre-signed URLs to upload new objects to by setting the |
Response Samples
{
"url": "https://us-east-1.linodeobjects.com/example-bucket/example?Signature=qr98TEucCntPgEG%2BsZQGDsJg93c%3D&Expires=1567609905&AWSAccessKeyId=G4YAF81XWY61DQM94SE0"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
url | string The signed URL to perform the request at. |
errors | array
of objects
|
Object Storage TLS/SSL Cert Delete
Deletes this Object Storage bucket’s user uploaded TLS/SSL certificate and private key.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/ssl
linode-cli object-storage ssl-delete \
us-east-1 example-bucket
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Object Storage TLS/SSL Cert View
Returns a boolean value indicating if this bucket has a corresponding TLS/SSL certificate that was uploaded by an Account user.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/ssl
linode-cli object-storage ssl-view \
us-east-1 example-bucket
Response Samples
{
"ssl": true
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
ssl | boolean A boolean indicating if this Bucket has a corresponding TLS/SSL certificate that was uploaded by an Account user. |
errors | array
of objects
|
Object Storage TLS/SSL Cert Upload
Upload a TLS/SSL certificate and private key to be served when you visit your Object Storage bucket via HTTPS. Your TLS/SSL certificate and private key are stored encrypted at rest.
To replace an expired certificate, delete your current certificate and upload a new one.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
clusterId | string RequiredThe ID of the cluster this bucket exists in. |
bucket | string RequiredThe bucket name. |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"certificate": "-----BEGIN CERTIFICATE-----\nCERTIFICATE_INFORMATION\n-----END CERTIFICATE-----",
"private_key": "-----BEGIN PRIVATE KEY-----\nPRIVATE_KEY_INFORMATION\n-----END PRIVATE KEY-----"
}' \
https://api.linode.com/v4/object-storage/buckets/us-east-1/example-bucket/ssl
linode-cli object-storage ssl-upload \
us-east-1 example-bucket \
--certificate "-----BEGIN CERTIFICATE-----
CERTIFICATE_INFORMATION
-----END CERTIFICATE-----" \
--private_key "-----BEGIN PRIVATE KEY-----
PRIVATE_KEY_INFORMATION
-----END PRIVATE KEY-----"
Request Body Schema
certificate Required | string Your Base64 encoded and PEM formatted SSL certificate. Line breaks must be represented as “\n” in the string for requests (but not when using the Linode CLI) |
private_key Required | string The private key associated with this TLS/SSL certificate. Line breaks must be represented as “\n” in the string for requests (but not when using the Linode CLI) |
Response Samples
{
"ssl": true
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
ssl | boolean A boolean indicating if this Bucket has a corresponding TLS/SSL certificate that was uploaded by an Account user. |
errors | array
of objects
|
Object Storage Cancel
Cancel Object Storage on an Account.
Warning: Removes all buckets and their contents from your Account. This data is irretrievable once removed.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X POST \
https://api.linode.com/v4/object-storage/cancel
linode-cli object-storage cancel
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Clusters List
Returns a paginated list of Object Storage Clusters that are available for use. Users can connect to the clusters with third party clients to create buckets and upload objects.
Authorizations
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/clusters
linode-cli object-storage clusters-list
Response Samples
{
"data": [
{
"domain": "us-east-1.linodeobjects.com",
"id": "us-east-1",
"region": "us-east",
"static_site_domain": "website-us-east-1.linodeobjects.com",
"status": "available"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||
page | integer The current page. | ||||||||||
pages | integer The total number of pages. | ||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Cluster View
Returns a single Object Storage Cluster.
Authorizations
Path Parameters
clusterId | string RequiredThe ID of the Cluster. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/clusters/us-east-1
linode-cli object-storage clusters-view us-east-1
Response Samples
{
"domain": "us-east-1.linodeobjects.com",
"id": "us-east-1",
"region": "us-east",
"static_site_domain": "website-us-east-1.linodeobjects.com",
"status": "available"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
domain | string The base URL for this cluster, used for connecting with third-party clients. |
id | string The unique ID for this cluster. |
region | string The region where this cluster is located. |
static_site_domain | string The base URL for this cluster used when hosting static sites. |
status | string Enum:
available
unavailable This cluster’s status. |
errors | array
of objects
|
Object Storage Keys List
Returns a paginated list of Object Storage Keys for authenticating to the Object Storage S3 API.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/keys
linode-cli object-storage keys-list
Response Samples
{
"data": [
{
"access_key": "KVAKUTGBA4WTR2NSJQ81",
"bucket_access": [
{
"bucket_name": "example-bucket",
"cluster": "ap-south-1",
"permissions": "read_only"
}
],
"id": 123,
"label": "my-key",
"limited": true,
"secret_key": "OiA6F5r0niLs3QA2stbyq7mY5VCV7KqOzcmitmHw"
}
],
"page": 1,
"pages": 1,
"results": 1
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
data | array
of objects
| ||||||||||||||||||
page | integer The current page. | ||||||||||||||||||
pages | integer The total number of pages. | ||||||||||||||||||
results | integer The total number of results. |
errors | array
of objects
|
Object Storage Key Create
Provisions a new Object Storage Key on your account.
- Accounts with negative balances cannot access this command.
- A successful request triggers an
obj_access_key_create
event. - To create a Limited Access Key with specific permissions, send a
bucket_access
array. - To create a Limited Access Key without access to any buckets, send an empty
bucket_access
array. - To create an Access Key with unlimited access to all clusters and all buckets, omit the
bucket_access
array.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Request Samples
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"label": "my-object-storage-key",
"bucket_access": [
{
"cluster": "ap-south-1",
"bucket_name": "bucket-example-1",
"permissions": "read_write"
},
{
"cluster": "us-east-1",
"bucket_name": "bucket-example-2",
"permissions": "read_only"
}
]
}' \
https://api.linode.com/v4/object-storage/keys
linode-cli object-storage keys-create \
--label "my-object-storage-key" \
--bucket_access '[{"cluster": "ap-south-1", "bucket_name": "bucket-example-1", "permissions": "read_write" }]'
Request Body Schema
bucket_access | array
of objects Defines this key as a Limited Access Key. Limited Access Keys restrict this Object Storage key’s access to only the bucket(s) declared in this array and define their bucket-level permissions. Limited Access Keys can:
Note: You can create an Object Storage Limited Access Key without access to any buckets.
This is achieved by sending a request with an empty Note: If this field is omitted, a regular unlimited access key is issued.
| ||||||
label | string The label given to this key. For display purposes only. |
Response Samples
{
"access_key": "KVAKUTGBA4WTR2NSJQ81",
"bucket_access": [
{
"bucket_name": "example-bucket",
"cluster": "ap-south-1",
"permissions": "read_only"
}
],
"id": 123,
"label": "my-key",
"limited": true,
"secret_key": "OiA6F5r0niLs3QA2stbyq7mY5VCV7KqOzcmitmHw"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
access_key | string This keypair’s access key. This is not secret. | ||||||
bucket_access | array
of objects Defines this key as a Limited Access Key. Limited Access Keys restrict this Object Storage key’s access to only the bucket(s) declared in this array and define their bucket-level permissions. Limited Access Keys can:
Note: You can create an Object Storage Limited Access Key without access to any buckets.
This is achieved by sending a request with an empty Note: If this field is omitted, a regular unlimited access key is issued.
| ||||||
id | integer This keypair’s unique ID | ||||||
label | string The label given to this key. For display purposes only. | ||||||
limited | boolean Whether or not this key is a limited access key. Will return | ||||||
secret_key | string This keypair’s secret key. Only returned on key creation. |
errors | array
of objects
|
Object Storage Key Revoke
Revokes an Object Storage Key. This keypair will no longer be usable by third-party clients.
- A successful request triggers an
obj_access_key_delete
event.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
keyId | integer RequiredThe key to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
-X DELETE \
https://api.linode.com/v4/object-storage/keys/12345
linode-cli object-storage keys-delete 12345
Response Samples
{}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
errors | array
of objects
|
Object Storage Key View
Returns a single Object Storage Key provisioned for your account.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Path Parameters
keyId | integer RequiredThe key to look up. |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/keys/12345
linode-cli object-storage keys-view \
--keyId 12345
Response Samples
{
"access_key": "KVAKUTGBA4WTR2NSJQ81",
"bucket_access": [
{
"bucket_name": "example-bucket",
"cluster": "ap-south-1",
"permissions": "read_only"
}
],
"id": 123,
"label": "my-key",
"limited": true,
"secret_key": "OiA6F5r0niLs3QA2stbyq7mY5VCV7KqOzcmitmHw"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
access_key | string This keypair’s access key. This is not secret. | ||||||
bucket_access | array
of objects Defines this key as a Limited Access Key. Limited Access Keys restrict this Object Storage key’s access to only the bucket(s) declared in this array and define their bucket-level permissions. Limited Access Keys can:
Note: You can create an Object Storage Limited Access Key without access to any buckets.
This is achieved by sending a request with an empty Note: If this field is omitted, a regular unlimited access key is issued.
| ||||||
id | integer This keypair’s unique ID | ||||||
label | string The label given to this key. For display purposes only. | ||||||
limited | boolean Whether or not this key is a limited access key. Will return | ||||||
secret_key | string This keypair’s secret key. Only returned on key creation. |
errors | array
of objects
|
Object Storage Key Update
Updates an Object Storage Key on your account.
- A successful request triggers an
obj_access_key_update
event.
Authorizations
personalAccessToken | |
oauth | object_storage:read_write |
Path Parameters
keyId | integer RequiredThe key to look up. |
Request Samples
curl -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \
-X PUT -d '{
"label": "my-object-storage-key"
}' \
https://api.linode.com/v4/object-storage/keys/12345
linode-cli object-storage keys-update \
--keyId 12345
--label "my-object-storage-key"
Request Body Schema
label | string The label for this keypair, for display purposes only. |
Response Samples
{
"access_key": "KVAKUTGBA4WTR2NSJQ81",
"bucket_access": [
{
"bucket_name": "example-bucket",
"cluster": "ap-south-1",
"permissions": "read_only"
}
],
"id": 123,
"label": "my-key",
"limited": true,
"secret_key": "OiA6F5r0niLs3QA2stbyq7mY5VCV7KqOzcmitmHw"
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
access_key | string This keypair’s access key. This is not secret. | ||||||
bucket_access | array
of objects Defines this key as a Limited Access Key. Limited Access Keys restrict this Object Storage key’s access to only the bucket(s) declared in this array and define their bucket-level permissions. Limited Access Keys can:
Note: You can create an Object Storage Limited Access Key without access to any buckets.
This is achieved by sending a request with an empty Note: If this field is omitted, a regular unlimited access key is issued.
| ||||||
id | integer This keypair’s unique ID | ||||||
label | string The label given to this key. For display purposes only. | ||||||
limited | boolean Whether or not this key is a limited access key. Will return | ||||||
secret_key | string This keypair’s secret key. Only returned on key creation. |
errors | array
of objects
|
Object Storage Transfer View
The amount of outbound data transfer used by your account’s Object Storage buckets. Object Storage adds 1 terabyte of outbound data transfer to your data transfer pool. See the Object Storage Overview guide for details on Object Storage transfer quotas.
Authorizations
personalAccessToken | |
oauth | object_storage:read_only |
Request Samples
curl -H "Authorization: Bearer $TOKEN" \
https://api.linode.com/v4/object-storage/transfer/
Response Samples
{
"used": 12956600198
}
{
"errors": [
{
"field": "fieldname",
"reason": "fieldname must be a valid value"
}
]
}
Responses
used | integer The amount of outbound data transfer used by your account’s Object Storage buckets, in bytes, for the current month’s billing cycle. |
errors | array
of objects
|