Object storage API
Manage team buckets and objects. Bucket names are globally unique. Object uploads use the raw file body. Newly created S3 credentials appear in responses; keep those responses private.
Use API authentication for protected requests. Examples use your own resource IDs and a temporary token; saved response examples are synthetic.
| Method | Path | Operation |
|---|---|---|
GET | /v1/object_bucket | List buckets |
POST | /v1/object_bucket | Create bucket |
GET | /v1/object_bucket/{id} | Get bucket |
PUT | /v1/object_bucket/{id} | Update bucket |
DELETE | /v1/object_bucket/{id} | Delete bucket |
GET | /v1/object_bucket/{id}/objects | List bucket objects |
GET | /v1/object_bucket/{id}/object | Download bucket object |
PUT | /v1/object_bucket/{id}/object | Upload bucket object |
DELETE | /v1/object_bucket/{id}/object | Delete bucket object |
POST | /v1/object_bucket/{id}/folders | Create bucket folder |
DELETE | /v1/object_bucket/{id}/folders | Delete bucket folder |
GET | /v1/object_bucket/{id}/access-keys | List bucket access keys |
POST | /v1/object_bucket/{id}/access-keys | Create bucket access key |
DELETE | /v1/object_bucket/{id}/access-keys/{access_key_id} | Delete bucket access key |
List buckets
GET /v1/object_bucket
Returns a paginated list of ObjectBucket
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
page | query | no | Page number |
per_page | query | no | Items per page |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/object_bucket" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
List of ObjectBucket
Response fields
| Field | Type | Description |
|---|---|---|
data | array | |
data[].acl_policy | object | Adios object ACL policy. Defaults to private with optional public prefix rules. |
data[].backend_bucket | string | Provider bucket name. Defaults to the normalized object bucket name. |
data[].bucket_id | string | |
data[].cache_policy | object | Gateway cache policy for public object reads. |
data[].canonical_hostname | string | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
data[].cdn_policy | object | Adios CDN policy for public object reads. Overrides cache_policy when set. |
data[].config | object | Additional provider options and secret references. |
data[].cors_policy | object | S3 CORS policy enforced by Adios before proxying to the object backend. |
data[].created_at | integer | (Unix timestamp) |
data[].deleted_at | integer | (Unix timestamp) |
data[].endpoint | string | Optional S3-compatible endpoint override for imported buckets. |
data[].managed | boolean | |
data[].name | string | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
data[].provider | string | Allowed: adios, minio, ceph_rgw, external_s3. |
data[].public_hostname | string | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
data[].public_read | boolean | |
data[].region | string | |
data[].route_id | string | Gateway route synced for public_hostname custom domains. |
data[].s3_path_endpoint | string | Shared path-style S3 endpoint such as https://s3.adios.dev. |
data[].status | string | Allowed: pending, available, failed, deleted. |
data[].team_id | string | |
data[].updated_at | integer | (Unix timestamp) |
data[].versioning | boolean | |
pagination | object | |
pagination.page | integer | Current page number |
pagination.per_page | integer | Number of items per page |
pagination.total | integer | Total number of items |
Illustrative example; not a live response:
{
"data": [
{
"acl_policy": {},
"backend_bucket": "example",
"bucket_id": "000000000000000000000000001",
"cache_policy": {},
"canonical_hostname": "example",
"cdn_policy": {},
"config": {},
"cors_policy": {},
"created_at": 1791072000,
"deleted_at": 0,
"endpoint": "example",
"managed": true,
"name": "postman-example",
"provider": "adios",
"public_hostname": "example",
"public_read": false,
"region": "default",
"route_id": "000000000000000000000000001",
"s3_path_endpoint": "example",
"status": "pending",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"versioning": false
}
],
"pagination": {
"page": 1,
"per_page": 1,
"total": 1
}
}
Create bucket
POST /v1/object_bucket
Creates a new ObjectBucket
This request changes data or starts an action. Review the target and body before sending it.
Request fields (the body contains an editable example):
| Field | Type | Required | Description |
|---|---|---|---|
acl_policy | object | no | Adios object ACL policy. Defaults to private with optional public prefix rules. |
backend_bucket | string | no | Provider bucket name. Defaults to the normalized object bucket name. |
cache_policy | object | no | Gateway cache policy for public object reads. |
canonical_hostname | string | no | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
cdn_policy | object | no | Adios CDN policy for public object reads. Overrides cache_policy when set. |
config | object | no | Additional provider options and secret references. |
cors_policy | object | no | S3 CORS policy enforced by Adios before proxying to the object backend. |
endpoint | string | no | Optional S3-compatible endpoint override for imported buckets. |
managed | boolean | yes | Default: true. |
name | string | yes | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
provider | string | yes | Allowed: adios, minio, ceph_rgw, external_s3. Default: "adios". |
public_hostname | string | no | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
public_read | boolean | yes | Default: false. |
region | string | no | Default: "default". |
route_id | string | no | Gateway route synced for public_hostname custom domains. |
s3_path_endpoint | string | no | Shared path-style S3 endpoint such as https://s3.adios.dev. |
status | string | yes | Allowed: pending, available, failed, deleted. Default: "pending". |
team_id | string | yes | |
versioning | boolean | yes | Default: false. |
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request POST "$ADIOS_API_URL/v1/object_bucket" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"team_id": "YOUR_TEAM_ID",
"name": "YOUR_BUCKET_NAME",
"provider": "adios",
"managed": true,
"public_read": false,
"versioning": false,
"status": "pending",
"region": "YOUR_REGION"
}
JSON
Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.
Response: HTTP 201
ObjectBucket created
Response fields
| Field | Type | Description |
|---|---|---|
acl_policy | object | Adios object ACL policy. Defaults to private with optional public prefix rules. |
backend_bucket | string | Provider bucket name. Defaults to the normalized object bucket name. |
bucket_id | string | |
cache_policy | object | Gateway cache policy for public object reads. |
canonical_hostname | string | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
cdn_policy | object | Adios CDN policy for public object reads. Overrides cache_policy when set. |
config | object | Additional provider options and secret references. |
cors_policy | object | S3 CORS policy enforced by Adios before proxying to the object backend. |
created_at | integer | (Unix timestamp) |
deleted_at | integer | (Unix timestamp) |
endpoint | string | Optional S3-compatible endpoint override for imported buckets. |
managed | boolean | |
name | string | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
provider | string | Allowed: adios, minio, ceph_rgw, external_s3. |
public_hostname | string | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
public_read | boolean | |
region | string | |
route_id | string | Gateway route synced for public_hostname custom domains. |
s3_path_endpoint | string | Shared path-style S3 endpoint such as https://s3.adios.dev. |
status | string | Allowed: pending, available, failed, deleted. |
team_id | string | |
updated_at | integer | (Unix timestamp) |
versioning | boolean |
Illustrative example; not a live response:
{
"acl_policy": {},
"backend_bucket": "example",
"bucket_id": "000000000000000000000000001",
"cache_policy": {},
"canonical_hostname": "example",
"cdn_policy": {},
"config": {},
"cors_policy": {},
"created_at": 1791072000,
"deleted_at": 0,
"endpoint": "example",
"managed": true,
"name": "postman-example",
"provider": "adios",
"public_hostname": "example",
"public_read": false,
"region": "default",
"route_id": "000000000000000000000000001",
"s3_path_endpoint": "example",
"status": "pending",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"versioning": false
}
Get bucket
GET /v1/object_bucket/{id}
Returns a single ObjectBucket
Set object_bucket_id using IDs from your own API responses.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
ObjectBucket
Response fields
| Field | Type | Description |
|---|---|---|
acl_policy | object | Adios object ACL policy. Defaults to private with optional public prefix rules. |
backend_bucket | string | Provider bucket name. Defaults to the normalized object bucket name. |
bucket_id | string | |
cache_policy | object | Gateway cache policy for public object reads. |
canonical_hostname | string | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
cdn_policy | object | Adios CDN policy for public object reads. Overrides cache_policy when set. |
config | object | Additional provider options and secret references. |
cors_policy | object | S3 CORS policy enforced by Adios before proxying to the object backend. |
created_at | integer | (Unix timestamp) |
deleted_at | integer | (Unix timestamp) |
endpoint | string | Optional S3-compatible endpoint override for imported buckets. |
managed | boolean | |
name | string | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
provider | string | Allowed: adios, minio, ceph_rgw, external_s3. |
public_hostname | string | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
public_read | boolean | |
region | string | |
route_id | string | Gateway route synced for public_hostname custom domains. |
s3_path_endpoint | string | Shared path-style S3 endpoint such as https://s3.adios.dev. |
status | string | Allowed: pending, available, failed, deleted. |
team_id | string | |
updated_at | integer | (Unix timestamp) |
versioning | boolean |
Illustrative example; not a live response:
{
"acl_policy": {},
"backend_bucket": "example",
"bucket_id": "000000000000000000000000001",
"cache_policy": {},
"canonical_hostname": "example",
"cdn_policy": {},
"config": {},
"cors_policy": {},
"created_at": 1791072000,
"deleted_at": 0,
"endpoint": "example",
"managed": true,
"name": "postman-example",
"provider": "adios",
"public_hostname": "example",
"public_read": false,
"region": "default",
"route_id": "000000000000000000000000001",
"s3_path_endpoint": "example",
"status": "pending",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"versioning": false
}
Update bucket
PUT /v1/object_bucket/{id}
Updates an existing ObjectBucket
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Request fields (the body contains an editable example):
| Field | Type | Required | Description |
|---|---|---|---|
acl_policy | object | no | Adios object ACL policy. Defaults to private with optional public prefix rules. |
backend_bucket | string | no | Provider bucket name. Defaults to the normalized object bucket name. |
cache_policy | object | no | Gateway cache policy for public object reads. |
canonical_hostname | string | no | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
cdn_policy | object | no | Adios CDN policy for public object reads. Overrides cache_policy when set. |
config | object | no | Additional provider options and secret references. |
cors_policy | object | no | S3 CORS policy enforced by Adios before proxying to the object backend. |
endpoint | string | no | Optional S3-compatible endpoint override for imported buckets. |
managed | boolean | yes | Default: true. |
name | string | yes | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
provider | string | yes | Allowed: adios, minio, ceph_rgw, external_s3. Default: "adios". |
public_hostname | string | no | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
public_read | boolean | yes | Default: false. |
region | string | no | Default: "default". |
route_id | string | no | Gateway route synced for public_hostname custom domains. |
s3_path_endpoint | string | no | Shared path-style S3 endpoint such as https://s3.adios.dev. |
status | string | yes | Allowed: pending, available, failed, deleted. Default: "pending". |
team_id | string | yes | |
versioning | boolean | yes | Default: false. |
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request PUT "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"team_id": "YOUR_TEAM_ID",
"name": "YOUR_BUCKET_NAME",
"provider": "adios",
"managed": true,
"public_read": false,
"versioning": false,
"status": "pending",
"region": "YOUR_REGION"
}
JSON
Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.
Response: HTTP 200
ObjectBucket updated
Response fields
| Field | Type | Description |
|---|---|---|
acl_policy | object | Adios object ACL policy. Defaults to private with optional public prefix rules. |
backend_bucket | string | Provider bucket name. Defaults to the normalized object bucket name. |
bucket_id | string | |
cache_policy | object | Gateway cache policy for public object reads. |
canonical_hostname | string | Generated Adios bucket hostname such as bucket.s3.adios.dev. |
cdn_policy | object | Adios CDN policy for public object reads. Overrides cache_policy when set. |
config | object | Additional provider options and secret references. |
cors_policy | object | S3 CORS policy enforced by Adios before proxying to the object backend. |
created_at | integer | (Unix timestamp) |
deleted_at | integer | (Unix timestamp) |
endpoint | string | Optional S3-compatible endpoint override for imported buckets. |
managed | boolean | |
name | string | Globally unique bucket namespace used for bucket.s3.adios.dev and s3.adios.dev/bucket routing. |
provider | string | Allowed: adios, minio, ceph_rgw, external_s3. |
public_hostname | string | Optional user-owned custom hostname served through the anycast gateway for bucket access; adios.dev and adios.run namespaces are reserved. |
public_read | boolean | |
region | string | |
route_id | string | Gateway route synced for public_hostname custom domains. |
s3_path_endpoint | string | Shared path-style S3 endpoint such as https://s3.adios.dev. |
status | string | Allowed: pending, available, failed, deleted. |
team_id | string | |
updated_at | integer | (Unix timestamp) |
versioning | boolean |
Illustrative example; not a live response:
{
"acl_policy": {},
"backend_bucket": "example",
"bucket_id": "000000000000000000000000001",
"cache_policy": {},
"canonical_hostname": "example",
"cdn_policy": {},
"config": {},
"cors_policy": {},
"created_at": 1791072000,
"deleted_at": 0,
"endpoint": "example",
"managed": true,
"name": "postman-example",
"provider": "adios",
"public_hostname": "example",
"public_read": false,
"region": "default",
"route_id": "000000000000000000000000001",
"s3_path_endpoint": "example",
"status": "pending",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"versioning": false
}
Delete bucket
DELETE /v1/object_bucket/{id}
Deletes a ObjectBucket
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Resource deleted.
Response fields
| Field | Type | Description |
|---|---|---|
message | string |
Illustrative example; not a live response:
{
"message": "Deleted successfully"
}
List bucket objects
GET /v1/object_bucket/{id}/objects
Browse objects under an optional prefix.
Set object_bucket_id using IDs from your own API responses.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
prefix | query | no | Object key prefix. |
limit | query | no | Number of entries between 1 and 5000. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/objects" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Download bucket object
GET /v1/object_bucket/{id}/object
Read the raw object body. Use Postman's download option to save it.
Set object_bucket_id using IDs from your own API responses.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
key | query | yes | Required object key. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/object?key=${ADIOS_OBJECT_KEY}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Upload bucket object
PUT /v1/object_bucket/{id}/object
Select a file in Body → binary before sending. The endpoint accepts raw bytes, not multipart form data; the upload limit is 5 GiB.
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
key | query | yes | Required object key. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request PUT "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/object?key=${ADIOS_OBJECT_KEY}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/octet-stream" \
--data-binary @./upload.bin
Response: HTTP 201
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Delete bucket object
DELETE /v1/object_bucket/{id}/object
Delete the selected object.
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
key | query | yes | Required object key. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/object?key=${ADIOS_OBJECT_KEY}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 204
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Create bucket folder
POST /v1/object_bucket/{id}/folders
Create an object folder marker.
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request POST "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/folders" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"prefix": "YOUR_OBJECT_PREFIX"
}
JSON
Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.
Response: HTTP 201
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Delete bucket folder
DELETE /v1/object_bucket/{id}/folders
Delete a folder and its contents.
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
prefix | query | yes | Required folder prefix. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/folders?prefix=${ADIOS_OBJECT_PREFIX}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
List bucket access keys
GET /v1/object_bucket/{id}/access-keys
List S3 key metadata for the bucket.
Set object_bucket_id using IDs from your own API responses.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/access-keys" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Create bucket access key
POST /v1/object_bucket/{id}/access-keys
Create S3 credentials for this bucket. Save the returned secret privately; do not publish the response.
Set object_bucket_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request POST "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/access-keys" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"name": "postman-example"
}
JSON
Replace YOUR_* body placeholders before sending. The quoted heredoc keeps the JSON literal.
Response: HTTP 201
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.
Delete bucket access key
DELETE /v1/object_bucket/{id}/access-keys/{access_key_id}
Revoke the selected S3 access key.
Set object_bucket_id, access_key_id using IDs from your own API responses.
This request changes data or starts an action. Review the target and body before sending it.
Authentication: bearer token and the team header shown below.
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
id | path | yes | Resource identifier from your team's API results. |
access_key_id | path | yes | Resource identifier from your team's API results. |
X-Tenant-ID | header | yes | Active team ID. Must match the tenant bound to a diagnostic token. |
Request example
Set ADIOS_API_URL=https://api.adios.dev. For protected requests, set ADIOS_ACCESS_TOKEN and ADIOS_TEAM_ID as in the quickstart. Set any additional ADIOS_* variables from your own resource results.
curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/object_bucket/${ADIOS_OBJECT_BUCKET_ID}/access-keys/${ADIOS_ACCESS_KEY_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Response: HTTP 200
Successful response. Inspect returned state for operations that start asynchronous work.
A complete response-body schema is not published for this custom operation. Inspect the returned content and status; no payload is assumed here.