Object Storage API

Get all buckets

get
Authorizations
x-account-idstringRequired

account id

Query parameters
pageintegerOptional

Page number of the results to fetch

page_sizeintegerOptional

Number of results per page

name_filterstringOptional

search query

refreshbooleanOptional

refresh

Default: false
Responses
chevron-right
200

Bucket successfully retrieved

application/json
totalItemsintegerOptional

Total number of items

totalPagesintegerOptional

Total number of pages

currentPageintegerOptional

Current page number

nextPageintegerOptional

Next page number, if available

get
/kos/v1/buckets

Creates a new bucket

post
Authorizations
x-account-idstringRequired

account id

Body
namestringOptional
descriptionstringOptional
versioningbooleanOptional
anonymous_accessbooleanOptional
Responses
post
/kos/v1/buckets

Retrieves bucket information

get
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket to retrieve

Responses
chevron-right
200

Bucket information retrieved successfully

application/json
namestring · nullableOptional
krnidstring · nullableOptional
ownerstringOptional
account_idstringOptional
createdAtstring · date-time · nullableOptional
usedCapacitynumber · double · nullableOptional
allocatedCapacityinteger · int64 · nullableOptional
regionstring · nullableOptional
urlstring · nullableOptional
statusstring · nullableOptional
pathstring · nullableOptional
protocolstring · nullableOptional
versioningboolean · nullableOptional
anonymous_accessboolean · nullableOptional
tierstring · nullableOptional
get
/kos/v1/buckets/{bucketId}

Updates bucket tags

put
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket to update

Body
versioningbooleanOptional
anonymous_accessbooleanOptional
Responses
chevron-right
200

Bucket tags successfully updated

application/json
namestring · nullableOptional
krnidstring · nullableOptional
ownerstringOptional
account_idstringOptional
createdAtstring · date-time · nullableOptional
usedCapacitynumber · double · nullableOptional
allocatedCapacityinteger · int64 · nullableOptional
regionstring · nullableOptional
urlstring · nullableOptional
statusstring · nullableOptional
pathstring · nullableOptional
protocolstring · nullableOptional
versioningboolean · nullableOptional
anonymous_accessboolean · nullableOptional
tierstring · nullableOptional
put
/kos/v1/buckets/{bucketId}

Deletes a bucket

delete
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket to delete

Body
otpstringOptional
Responses
delete
/kos/v1/buckets/{bucketId}

No content

Deletes all access keys

delete
Authorizations
x-account-idstringRequired

account id

Responses
delete
/internal/kos/v1/access_keys_all

No content

Retrieves a list of access keys

get
Authorizations
x-account-idstringRequired

account id

Responses
chevron-right
200

Access keys successfully retrieved

application/json
access_keystringOptionalExample: access-key-1
created_datestring · date-timeOptionalExample: 2024-09-02T10:15:30Z
regionstringOptionalExample: us-west-2
get
/kos/v1/access_keys

Creates access keys

post
Authorizations
x-account-idstringRequired

account id

Responses
post
/kos/v1/access_keys

Deletes an access key

delete
Authorizations
x-account-idstringRequired

account id

Path parameters
accessKeystringRequired

ID of the access key to delete

Body
otpstringOptional
Responses
delete
/kos/v1/access_keys/{accessKey}

No content

Get all lifecycle rules for a specific bucket

get
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket to retrieve lifecycle rules for

Responses
chevron-right
200

Lifecycle rules successfully retrieved

application/json
namestringOptional

Name of the lifecycle rule

enabledboolean · nullableOptional
expiration_daysinteger · nullableOptional
expired_obj_delete_markerboolean · nullableOptional
noncurrent_daysinteger · nullableOptional
newer_noncurrent_versionsinteger · nullableOptional
delete_incomplete_mpuinteger · nullableOptional
attributestring · nullableOptional

Attribute used to calculate object age

idstringOptional

Unique ID of the lifecycle rule

statusstringOptional

Status of the lifecycle rule

get
/kos/v1/buckets/{bucketId}/lifecycle-rules

Create a new lifecycle rule for a specific bucket

post
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket to which the lifecycle rule will be added

Body
namestringOptional

Name of the lifecycle rule

enabledboolean · nullableOptional
expiration_daysinteger · nullableOptional
expired_obj_delete_markerboolean · nullableOptional
noncurrent_daysinteger · nullableOptional
newer_noncurrent_versionsinteger · nullableOptional
delete_incomplete_mpuinteger · nullableOptional
attributestring · nullableOptional

Attribute used to calculate object age

Responses
post
/kos/v1/buckets/{bucketId}/lifecycle-rules

Get a specific lifecycle rule for a bucket

get
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket

ruleIdstringRequired

ID of the lifecycle rule to retrieve

Responses
chevron-right
200

Lifecycle rule retrieved successfully

application/json
namestringOptional

Name of the lifecycle rule

enabledboolean · nullableOptional
expiration_daysinteger · nullableOptional
expired_obj_delete_markerboolean · nullableOptional
noncurrent_daysinteger · nullableOptional
newer_noncurrent_versionsinteger · nullableOptional
delete_incomplete_mpuinteger · nullableOptional
attributestring · nullableOptional

Attribute used to calculate object age

idstringOptional

Unique ID of the lifecycle rule

statusstringOptional

Status of the lifecycle rule

get
/kos/v1/buckets/{bucketId}/lifecycle-rules/{ruleId}

Update a lifecycle rule for a bucket

put
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket

ruleIdstringRequired

ID of the lifecycle rule to update

Body
namestringOptional

Name of the lifecycle rule

enabledboolean · nullableOptional
expiration_daysinteger · nullableOptional
expired_obj_delete_markerboolean · nullableOptional
noncurrent_daysinteger · nullableOptional
newer_noncurrent_versionsinteger · nullableOptional
delete_incomplete_mpuinteger · nullableOptional
attributestring · nullableOptional

Attribute used to calculate object age

Responses
chevron-right
200

Lifecycle rule successfully updated

application/json
namestringOptional

Name of the lifecycle rule

enabledboolean · nullableOptional
expiration_daysinteger · nullableOptional
expired_obj_delete_markerboolean · nullableOptional
noncurrent_daysinteger · nullableOptional
newer_noncurrent_versionsinteger · nullableOptional
delete_incomplete_mpuinteger · nullableOptional
attributestring · nullableOptional

Attribute used to calculate object age

idstringOptional

Unique ID of the lifecycle rule

statusstringOptional

Status of the lifecycle rule

put
/kos/v1/buckets/{bucketId}/lifecycle-rules/{ruleId}

Delete a lifecycle rule for a bucket

delete
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

ID of the bucket

ruleIdstringRequired

ID of the lifecycle rule to delete

Responses
delete
/kos/v1/buckets/{bucketId}/lifecycle-rules/{ruleId}

No content

Retrieves a policy

get
Authorizations
x-account-idstringRequired

account id

Responses
chevron-right
200

Policy successfully retrieved

application/json
namestringOptional

policy Name

policyKRNstringOptional

Unique ID of the policy

CreationDatestringOptional

Creation date of the policy

get
/internal/kos/v1/policy

Creates a policy

post
Authorizations
x-account-idstringRequired

account id

Body
_idstringOptional

Unique ID of the policy

namestringOptional

Name of the policy

statementsobject[]Optional

Statements of the policy

conditionsobject[]Optional

Conditions of the policy

accountIdstringOptional

Account ID of the policy

policyKRNstringOptional

Unique ID of the policy

Responses
post
/internal/kos/v1/policy

Attaches a policy to a bucket

post
Authorizations
x-account-idstringRequired

account id

Body
policyKRNsstring[]Optional

Unique IDs of the policies

Responses
chevron-right
200

Policy successfully attached

application/json
namestringOptional

policy Name

policyKRNstringOptional

Unique ID of the policy

CreationDatestringOptional

Creation date of the policy

post
/internal/kos/v1/policy/attach

Detaches a policy from a bucket

post
Authorizations
x-account-idstringRequired

account id

Body
policyKRNsstring[]Optional

Unique IDs of the policies

Responses
chevron-right
200

Policy successfully detached

application/json
namestringOptional

policy Name

policyKRNstringOptional

Unique ID of the policy

CreationDatestringOptional

Creation date of the policy

post
/internal/kos/v1/policy/detach

Retrieves a policy

get
Authorizations
x-account-idstringRequired

account id

Path parameters
policykrnstringRequired

ID of the policy

Responses
chevron-right
200

Policy successfully retrieved

application/json
namestringOptional

policy Name

policyKRNstringOptional

Unique ID of the policy

CreationDatestringOptional

Creation date of the policy

get
/internal/kos/v1/policy/{policykrn}

Updates a policy

put
Authorizations
x-account-idstringRequired

account id

Path parameters
policykrnstringRequired

ID of the policy

Body
_idstringOptional

Unique ID of the policy

namestringOptional

Name of the policy

statementsobject[]Optional

Statements of the policy

conditionsobject[]Optional

Conditions of the policy

accountIdstringOptional

Account ID of the policy

policyKRNstringOptional

Unique ID of the policy

Responses
chevron-right
200

Policy successfully updated

application/json
namestringOptional

policy Name

policyKRNstringOptional

Unique ID of the policy

CreationDatestringOptional

Creation date of the policy

put
/internal/kos/v1/policy/{policykrn}

Deletes a policy

delete
Authorizations
x-account-idstringRequired

account id

Path parameters
policykrnstringRequired

ID of the policy

Responses
delete
/internal/kos/v1/policy/{policykrn}

No content

Activate a new session for API access

post

Creates a new session for accessing protected APIs.

  • If a previous session exists and is still active, it will be invalidated

  • Sessions automatically expire after the configured timeout

  • Only one active session is allowed per set of credentials

Authorizations
x-account-idstringRequired

account id

Body
accessKeystringRequired

Access key for authentication

secretKeystringRequired

Secret key for authentication

Responses
chevron-right
200

Session activated successfully

application/json
sessionTokenstringOptional

Session token to be used for protected APIs

expiresAtstring · date-timeOptional

Session expiration timestamp

refreshTokenstringOptional

Token used to refresh the session before expiration

lastActiveAtstring · date-timeOptional

Timestamp of last activity

post
/kos/v1/sessions/activate

Deactivate current session

delete

Explicitly deactivates the current session.

  • Invalidates the session token

  • Blocks access to protected APIs

  • Cleans up session resources

Authorizations
Path parameters
sessionTokenstringRequired

Session token

Responses
delete
/kos/v1/sessions/deactivate/{sessionToken}

No content

Refresh current session

post

Extends the current session lifetime before it expires

Authorizations
Path parameters
sessionTokenstringRequired

Session token

Body
refreshTokenstringRequired
Responses
chevron-right
200

Session refreshed successfully

application/json
sessionTokenstringOptional
expiresAtstring · date-timeOptional
refreshTokenstringOptional
post
/kos/v1/sessions/refresh/{sessionToken}

Get current session status

get

Returns the status and details of the current session

Authorizations
Path parameters
sessionTokenstringRequired
Responses
chevron-right
200

Session status retrieved successfully

application/json
isActivebooleanOptional
expiresAtstring · date-timeOptional
lastActiveAtstring · date-timeOptional
createdAtstring · date-timeOptional
get
/kos/v1/sessions/status/{sessionToken}

Delete an object

post
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
objectkeystringOptional

The key of the object to delete

Responses
chevron-right
200

File deleted successfully

application/json
messagestringOptional
objectKeystringOptional

The key of the deleted file

post
/kos/v1/buckets/{bucketId}/objects/delete

List objects in a bucket

get
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Query parameters
prefixstringOptional

Filter objects by prefix (like a folder path)

Responses
chevron-right
200

List of objects in the bucket

application/json
prefixstringOptional

The folder path prefix for objects

get
/kos/v1/buckets/{bucketId}/objects

Upload a new object

put
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
prefixstringOptional

The folder path prefix for objects

Responses
put
/kos/v1/buckets/{bucketId}/objects

Download an object

post
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
objectkeystringOptional

The key of the object to download

Responses
chevron-right
200

The file content as binary

application/octet-stream
messagestringOptional
objectKeystringOptional

The key and preSignedUrl of the download file

post
/kos/v1/buckets/{bucketId}/objects/download

Get object metadata

post
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
objectkeystringOptional

The key of the object to download

Responses
chevron-right
200

Metadata of the object

application/json
keystringRequired

Object key (path within bucket)

size_bytesinteger · int64Required

Object size in bytes

storage_classstringOptional

Storage class of the object

lastModifiedstringRequired

Last modified date

contentTypestringOptional

MIME type of the object

etagstringOptional

ETag of the object

post
/kos/v1/buckets/{bucketId}/objects/metadata

Move or copy an object within a bucket

post
Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
sourceKeystringOptional

Source object key

destinationKeystringOptional

Destination object key

actionstring · enumOptional

Action to perform (move or copy)

Possible values:
Responses
chevron-right
200

File moved or copied successfully

application/json
messagestringOptional
sourceKeystringOptional

Source key

destinationKeystringOptional

Destination key

post
/kos/v1/buckets/{bucketId}/objects/move
200

File moved or copied successfully

Rename an object within the bucket

post

Rename an object by copying it to a new key and deleting the original.

Authorizations
x-account-idstringRequired

account id

Path parameters
bucketIdstringRequired

Krn identifier of the bucket

Body
oldKeystringOptional

The old key for the object (the old name/path for the file)

newKeystringOptional

The new key for the object (the new name/path for the file)

Responses
chevron-right
200

Object renamed successfully

application/json
messagestringOptionalExample: Object renamed successfully
oldKeystringOptional

Original key of the object

newKeystringOptional

New key of the object

post
/kos/v1/buckets/{bucketId}/objects/rename

Get Bucket Policy Details

get

Returns details of a specified bucket policy.

Authorizations
x-account-idstringRequired

account id

Path parameters
bucketKrnstringRequired

The unique bucketKrn (Key Resource Name) of the bucket policy.

Responses
chevron-right
200

Details of the bucket policy.

application/json
bucketPolicyKrnstringOptional

Unique Key Resource Name (KRN) of the bucket policy.

bucketKrnstringOptional

Unique Key Resource Name (KRN) of the bucket policy.

s3_read_write_ipsstring[]Optional

S3 hosts with read/write permissions.

s3_read_only_ipsstring[]Optional

S3 hosts with read-only permissions.

created_atstring · date-timeOptional

Creation timestamp of the policy.

updated_atstring · date-timeOptional

Last updated timestamp of the policy.

get
/kos/v1/buckets/policy/{bucketKrn}

Create a Bucket Policy

post

Creates a new bucket policy.

Authorizations
x-account-idstringRequired

account id

Path parameters
bucketKrnstringRequired

The unique bucketKrn of the bucket policy to create.

Body
s3_read_write_ipsstring[]Optional

S3 hosts with read/write permissions.

s3_read_only_ipsstring[]Optional

S3 hosts with read-only permissions.

Responses
post
/kos/v1/buckets/policy/{bucketKrn}

Modify a Bucket Policy

put

Modifies an existing bucket policy.

Authorizations
x-account-idstringRequired

account id

Path parameters
bucketKrnstringRequired

The unique bucketKrn of the bucket policy.

Body
s3_read_write_ipsstring[]Optional

S3 hosts with read/write permissions.

s3_read_only_ipsstring[]Optional

S3 hosts with read-only permissions.

Responses
chevron-right
200

Bucket policy modified.

No content

put
/kos/v1/buckets/policy/{bucketKrn}

No content

Delete a Bucket Policy

delete

Deletes a specified bucket policy.

Authorizations
x-account-idstringRequired

account id

Path parameters
bucketKrnstringRequired

The unique bucketKrn of the bucket policy to delete.

Responses
delete
/kos/v1/buckets/policy/{bucketKrn}

No content

Last updated

Was this helpful?