Files
object-browser/swagger.yml
2025-03-11 02:30:53 -07:00

2858 lines
57 KiB
YAML

# @format
swagger: "2.0"
info:
title: MinIO Console Server
version: 0.1.0
consumes:
- application/json
produces:
- application/json
schemes:
- http
- ws
basePath: /api/v1
# We are going to be taking `Authorization: Bearer TOKEN` header for our authentication
securityDefinitions:
key:
type: oauth2
flow: accessCode
authorizationUrl: http://min.io
tokenUrl: http://min.io
anonymous:
name: X-Anonymous
in: header
type: apiKey
# Apply the key security definition to all APIs
security:
- key: []
parameters:
limit:
name: limit
in: query
type: number
format: int32
default: 20
offset:
name: offset
in: query
type: number
format: int32
default: 0
paths:
/login:
get:
summary: Returns login strategy, form or sso.
operationId: LoginDetail
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/loginDetails"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
# Exclude this API from the authentication requirement
security: []
tags:
- Auth
post:
summary: Login to Console
operationId: Login
parameters:
- name: body
in: body
required: true
schema:
$ref: "#/definitions/loginRequest"
responses:
204:
description: A successful login.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
# Exclude this API from the authentication requirement
security: []
tags:
- Auth
/login/oauth2/auth:
post:
summary: Identity Provider oauth2 callback endpoint.
operationId: LoginOauth2Auth
parameters:
- name: body
in: body
required: true
schema:
$ref: "#/definitions/loginOauth2AuthRequest"
responses:
204:
description: A successful login.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
security: []
tags:
- Auth
/logout:
post:
summary: Logout from Console.
operationId: Logout
parameters:
- name: body
in: body
required: true
schema:
$ref: "#/definitions/logoutRequest"
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Auth
/session:
get:
summary: Endpoint to check if your session is still valid
operationId: SessionCheck
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/sessionResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Auth
/buckets:
get:
summary: List Buckets
operationId: ListBuckets
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/listBucketsResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
post:
summary: Make bucket
operationId: MakeBucket
parameters:
- name: body
in: body
required: true
schema:
$ref: "#/definitions/makeBucketRequest"
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/makeBucketsResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/{name}:
get:
summary: Bucket Info
operationId: BucketInfo
parameters:
- name: name
in: path
required: true
type: string
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/bucket"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/{bucket_name}/objects:
get:
summary: List Objects
security:
- key: []
- anonymous: []
operationId: ListObjects
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: false
type: string
- name: recursive
in: query
required: false
type: boolean
- name: with_versions
in: query
required: false
type: boolean
- name: with_metadata
in: query
required: false
type: boolean
- $ref: "#/parameters/limit"
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/listObjectsResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
delete:
summary: Delete Object
operationId: DeleteObject
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: version_id
in: query
required: false
type: string
- name: recursive
in: query
required: false
type: boolean
- name: all_versions
in: query
required: false
type: boolean
- name: non_current_versions
in: query
required: false
type: boolean
- name: bypass
in: query
required: false
type: boolean
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/delete-objects:
post:
summary: Delete Multiple Objects
operationId: DeleteMultipleObjects
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: all_versions
in: query
required: false
type: boolean
- name: bypass
in: query
required: false
type: boolean
- name: files
in: body
required: true
schema:
type: array
items:
$ref: "#/definitions/deleteFile"
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/upload:
post:
summary: Uploads an Object.
security:
- key: []
- anonymous: []
consumes:
- multipart/form-data
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
type: string
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/download-multiple:
post:
summary: Download Multiple Objects
operationId: DownloadMultipleObjects
security:
- key: []
- anonymous: []
produces:
- application/octet-stream
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: objectList
in: body
required: true
schema:
type: array
items:
type: string
responses:
200:
description: A successful response.
schema:
type: file
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/download:
get:
summary: Download Object
operationId: Download Object
security:
- key: []
- anonymous: []
produces:
- application/octet-stream
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: version_id
in: query
required: false
type: string
- name: preview
in: query
required: false
type: boolean
default: false
- name: override_file_name
in: query
required: false
type: string
default: ""
responses:
200:
description: A successful response.
schema:
type: file
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/share:
get:
summary: Shares an Object on a url
operationId: ShareObject
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: version_id
in: query
required: true
type: string
- name: expires
in: query
required: false
type: string
responses:
200:
description: A successful response.
schema:
type: string
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/tags:
put:
summary: Put Object's tags
operationId: PutObjectTags
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: version_id
in: query
required: true
type: string
- name: body
in: body
required: true
schema:
$ref: "#/definitions/putObjectTagsRequest"
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/restore:
put:
summary: Restore Object to a selected version
operationId: PutObjectRestore
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: version_id
in: query
required: true
type: string
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/objects/metadata:
get:
summary: Gets the metadata of an object
operationId: GetObjectMetadata
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: prefix
in: query
required: true
type: string
- name: versionID
in: query
type: string
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/metadata"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Object
/buckets/{bucket_name}/tags:
put:
summary: Put Bucket's tags
operationId: PutBucketTags
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: body
in: body
required: true
schema:
$ref: "#/definitions/putBucketTagsRequest"
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/{name}/quota:
get:
summary: Get Bucket Quota
operationId: GetBucketQuota
parameters:
- name: name
in: path
required: true
type: string
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/bucketQuota"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/{bucket_name}/versioning:
get:
summary: Bucket Versioning
operationId: GetBucketVersioning
parameters:
- name: bucket_name
in: path
required: true
type: string
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/bucketVersioningResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
put:
summary: Set Bucket Versioning
operationId: SetBucketVersioning
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: body
in: body
required: true
schema:
$ref: "#/definitions/setBucketVersioning"
responses:
201:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/{bucket_name}/rewind/{date}:
get:
summary: Get objects in a bucket for a rewind date
operationId: GetBucketRewind
parameters:
- name: bucket_name
in: path
required: true
type: string
- name: date
in: path
required: true
type: string
- name: prefix
in: query
required: false
type: string
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/rewindResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/buckets/max-share-exp:
get:
summary: Get max expiration time for share link in seconds
operationId: GetMaxShareLinkExp
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/maxShareLinkExpResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Bucket
/users:
get:
summary: List Users
operationId: ListUsers
parameters:
- $ref: "#/parameters/offset"
- $ref: "#/parameters/limit"
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/listUsersResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- User
/admin/info:
get:
summary: Returns information about the deployment
operationId: AdminInfo
parameters:
- name: defaultOnly
in: query
required: false
type: boolean
default: false
responses:
200:
description: A successful response.
schema:
$ref: "#/definitions/adminInfoResponse"
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- System
/license/acknowledge:
get:
summary: Acknowledge the license
operationId: LicenseAcknowledge
responses:
200:
description: A successful response.
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- License
/download-shared-object/{url}:
get:
summary: Downloads an object from a presigned url
operationId: DownloadSharedObject
security: []
produces:
- application/octet-stream
parameters:
- name: url
in: path
required: true
type: string
responses:
200:
description: A successful response.
schema:
type: file
default:
description: Generic error response.
schema:
$ref: "#/definitions/ApiError"
tags:
- Public
definitions:
accountChangePasswordRequest:
type: object
required:
- current_secret_key
- new_secret_key
properties:
current_secret_key:
type: string
new_secret_key:
type: string
changeUserPasswordRequest:
type: object
required:
- selectedUser
- newSecretKey
properties:
selectedUser:
type: string
newSecretKey:
type: string
bucketEncryptionType:
type: string
enum:
- sse-s3
- sse-kms
default: sse-s3
bucketAccess:
type: string
enum:
- PRIVATE
- PUBLIC
- CUSTOM
default: PRIVATE
userServiceAccountItem:
type: object
properties:
userName:
type: string
numSAs:
type: integer
format: int64
bucket:
type: object
required:
- name
properties:
name:
type: string
minLength: 3
size:
type: integer
format: int64
access:
$ref: "#/definitions/bucketAccess"
definition:
type: string
rw_access:
type: object
properties:
write:
type: boolean
read:
type: boolean
objects:
type: integer
format: int64
details:
type: object
properties:
versioning:
type: boolean
versioningSuspended:
type: boolean
locking:
type: boolean
replication:
type: boolean
tags:
type: object
additionalProperties:
type: string
quota:
type: object
properties:
quota:
type: integer
format: int64
type:
type: string
enum:
- hard
creation_date:
type: string
bucketEncryptionRequest:
type: object
properties:
encType:
$ref: "#/definitions/bucketEncryptionType"
kmsKeyID:
type: string
bucketEncryptionInfo:
type: object
properties:
kmsMasterKeyID:
type: string
algorithm:
type: string
listBucketsResponse:
type: object
properties:
buckets:
type: array
items:
$ref: "#/definitions/bucket"
title: list of resulting buckets
total:
type: integer
format: int64
title: number of buckets accessible to the user
userServiceAccountSummary:
type: object
properties:
userServiceAccountList:
type: array
items:
$ref: "#/definitions/userServiceAccountItem"
title: list of users with number of service accounts
hasSA:
type: boolean
listObjectsResponse:
type: object
properties:
objects:
type: array
items:
$ref: "#/definitions/bucketObject"
title: list of resulting objects
total:
type: integer
format: int64
title: number of objects
bucketObject:
type: object
properties:
name:
type: string
size:
type: integer
format: int64
content_type:
type: string
last_modified:
type: string
is_latest:
type: boolean
is_delete_marker:
type: boolean
version_id:
type: string
user_tags:
type: object
additionalProperties:
type: string
expiration:
type: string
expiration_rule_id:
type: string
legal_hold_status:
type: string
retention_mode:
type: string
retention_until_date:
type: string
etag:
type: string
tags:
type: object
additionalProperties:
type: string
metadata:
type: object
additionalProperties:
type: string
user_metadata:
type: object
additionalProperties:
type: string
makeBucketRequest:
type: object
required:
- name
properties:
name:
type: string
ApiError:
type: object
properties:
message:
type: string
detailedMessage:
type: string
user:
type: object
properties:
accessKey:
type: string
policy:
type: array
items:
type: string
memberOf:
type: array
items:
type: string
status:
type: string
hasPolicy:
type: boolean
listUsersResponse:
type: object
properties:
users:
type: array
items:
$ref: "#/definitions/user"
title: list of resulting users
selectedUsers:
type: array
items:
type: string
addUserRequest:
type: object
required:
- accessKey
- secretKey
- groups
- policies
properties:
accessKey:
type: string
secretKey:
type: string
groups:
type: array
items:
type: string
policies:
type: array
items:
type: string
group:
type: object
properties:
name:
type: string
status:
type: string
members:
type: array
items:
type: string
policy:
type: string
addGroupRequest:
type: object
required:
- group
- members
properties:
group:
type: string
members:
type: array
items:
type: string
listGroupsResponse:
type: object
properties:
groups:
type: array
items:
type: string
title: list of groups
total:
type: integer
format: int64
title: total number of groups
policy:
type: object
properties:
name:
type: string
policy:
type: string
policyEntity:
type: string
enum:
- user
- group
default: user
setPolicyRequest:
type: object
required:
- entityType
- entityName
properties:
entityType:
$ref: "#/definitions/policyEntity"
entityName:
type: string
setPolicyNameRequest:
type: object
required:
- name
- entityType
- entityName
properties:
name:
type: array
items:
type: string
entityType:
$ref: "#/definitions/policyEntity"
entityName:
type: string
setPolicyMultipleNameRequest:
type: object
properties:
name:
type: array
items:
type: string
users:
type: array
items:
$ref: "#/definitions/iamEntity"
groups:
type: array
items:
$ref: "#/definitions/iamEntity"
iamEntity:
type: string
addPolicyRequest:
type: object
required:
- name
- policy
properties:
name:
type: string
policy:
type: string
updateServiceAccountRequest:
type: object
required:
- policy
properties:
policy:
type: string
secretKey:
type: string
name:
type: string
description:
type: string
expiry:
type: string
status:
type: string
listPoliciesResponse:
type: object
properties:
policies:
type: array
items:
$ref: "#/definitions/policy"
title: list of policies
total:
type: integer
format: int64
title: total number of policies
listAccessRulesResponse:
type: object
properties:
accessRules:
type: array
items:
$ref: "#/definitions/accessRule"
title: list of policies
total:
type: integer
format: int64
title: total number of policies
accessRule:
type: object
properties:
prefix:
type: string
access:
type: string
updateGroupRequest:
type: object
required:
- members
- status
properties:
members:
type: array
items:
type: string
status:
type: string
configDescription:
type: object
properties:
key:
type: string
description:
type: string
configurationKV:
type: object
properties:
key:
type: string
value:
type: string
env_override:
$ref: "#/definitions/envOverride"
envOverride:
type: object
properties:
name:
type: string
value:
type: string
configuration:
type: object
properties:
name:
type: string
key_values:
type: array
items:
$ref: "#/definitions/configurationKV"
listConfigResponse:
type: object
properties:
configurations:
type: array
items:
$ref: "#/definitions/configDescription"
total:
type: integer
format: int64
title: total number of configurations
setConfigRequest:
type: object
required:
- key_values
properties:
key_values:
type: array
minItems: 1
items:
$ref: "#/definitions/configurationKV"
arn_resource_id:
type: string
title: Used if configuration is an event notification's target
notificationEventType:
type: string
enum:
- put
- delete
- get
- replica
- ilm
- scanner
notificationConfig:
type: object
required:
- arn
properties:
id:
type: string
arn:
type: string
events:
type: array
items:
$ref: "#/definitions/notificationEventType"
title: "filter specific type of event. Defaults to all event (default: '[put,delete,get]')"
prefix:
type: string
title: "filter event associated to the specified prefix"
suffix:
type: string
title: "filter event associated to the specified suffix"
notificationDeleteRequest:
type: object
required:
- events
- prefix
- suffix
properties:
events:
type: array
minLength: 1
items:
$ref: "#/definitions/notificationEventType"
title: "filter specific type of event. Defaults to all event (default: '[put,delete,get]')"
prefix:
type: string
title: "filter event associated to the specified prefix"
suffix:
type: string
title: "filter event associated to the specified suffix"
bucketEventRequest:
type: object
required:
- configuration
properties:
configuration:
$ref: "#/definitions/notificationConfig"
ignoreExisting:
type: boolean
bucketReplicationDestination:
type: object
properties:
bucket:
type: string
bucketReplicationRule:
type: object
properties:
id:
type: string
status:
type: string
enum:
- Enabled
- Disabled
priority:
type: integer
format: int32
syncMode:
type: string
enum:
- async
- sync
default: async
bandwidth:
type: string
healthCheckPeriod:
type: integer
delete_marker_replication:
type: boolean
deletes_replication:
type: boolean
existingObjects:
type: boolean
metadata_replication:
type: boolean
prefix:
type: string
tags:
type: string
storageClass:
type: string
destination:
$ref: "#/definitions/bucketReplicationDestination"
bucketReplicationRuleList:
type: object
properties:
rules:
type: array
items:
type: string
bucketReplicationResponse:
type: object
properties:
rules:
type: array
items:
$ref: "#/definitions/bucketReplicationRule"
# missing
# "Filter": {
# "And": {},
# "Tag": {}
# }
# }
#}
listExternalBucketsParams:
required:
- accessKey
- secretKey
- targetURL
- useTLS
properties:
accessKey:
type: string
minLength: 3
secretKey:
type: string
minLength: 8
targetURL:
type: string
useTLS:
type: boolean
region:
type: string
multiBucketReplication:
required:
- accessKey
- secretKey
- targetURL
- bucketsRelation
properties:
accessKey:
type: string
minLength: 3
secretKey:
type: string
minLength: 8
targetURL:
type: string
region:
type: string
syncMode:
type: string
enum:
- async
- sync
default: async
bandwidth:
type: integer
format: int64
healthCheckPeriod:
type: integer
format: int32
prefix:
type: string
tags:
type: string
replicateExistingObjects:
type: boolean
replicateDeleteMarkers:
type: boolean
replicateDeletes:
type: boolean
replicateMetadata:
type: boolean
priority:
type: integer
format: int32
default: 0
storageClass:
type: string
default: ""
bucketsRelation:
type: array
minLength: 1
items:
$ref: "#/definitions/multiBucketsRelation"
multiBucketReplicationEdit:
properties:
ruleState:
type: boolean
arn:
type: string
prefix:
type: string
tags:
type: string
default: ""
replicateDeleteMarkers:
type: boolean
replicateDeletes:
type: boolean
replicateMetadata:
type: boolean
replicateExistingObjects:
type: boolean
priority:
type: integer
format: int32
default: 0
storageClass:
type: string
default: ""
multiBucketsRelation:
type: object
properties:
originBucket:
type: string
destinationBucket:
type: string
multiBucketResponseItem:
type: object
properties:
originBucket:
type: string
targetBucket:
type: string
errorString:
type: string
multiBucketResponseState:
type: object
properties:
replicationState:
type: array
items:
$ref: "#/definitions/multiBucketResponseItem"
addBucketReplication:
type: object
properties:
arn:
type: string
destination_bucket:
type: string
makeBucketsResponse:
type: object
properties:
bucketName:
type: string
listBucketEventsResponse:
type: object
properties:
events:
type: array
items:
$ref: "#/definitions/notificationConfig"
total:
type: integer
format: int64
title: total number of bucket events
setBucketPolicyRequest:
type: object
required:
- access
properties:
access:
$ref: "#/definitions/bucketAccess"
definition:
type: string
bucketQuota:
type: object
properties:
quota:
type: integer
type:
type: string
enum:
- hard
setBucketQuota:
type: object
required:
- enabled
properties:
enabled:
type: boolean
quota_type:
type: string
enum:
- hard
amount:
type: integer
loginDetails:
type: object
properties:
loginStrategy:
type: string
enum: [form, redirect, service-account, redirect-service-account]
redirectRules:
type: array
items:
$ref: "#/definitions/redirectRule"
isK8S:
type: boolean
animatedLogin:
type: boolean
loginOauth2AuthRequest:
type: object
required:
- state
- code
properties:
state:
type: string
code:
type: string
loginRequest:
type: object
properties:
accessKey:
type: string
secretKey:
type: string
sts:
type: string
features:
type: object
properties:
hide_menu:
type: boolean
loginResponse:
type: object
properties:
sessionId:
type: string
IDPRefreshToken:
type: string
logoutRequest:
type: object
properties:
state:
type: string
# Structure that holds the `Bearer {TOKEN}` present on authenticated requests
principal:
type: object
properties:
STSAccessKeyID:
type: string
STSSecretAccessKey:
type: string
STSSessionToken:
type: string
accountAccessKey:
type: string
hm:
type: boolean
ob:
type: boolean
customStyleOb:
type: string
startProfilingItem:
type: object
properties:
nodeName:
type: string
success:
type: boolean
error:
type: string
startProfilingList:
type: object
properties:
total:
type: integer
format: int64
title: number of start results
startResults:
type: array
items:
$ref: "#/definitions/startProfilingItem"
profilingStartRequest:
type: object
required:
- type
properties:
type:
type: string
sessionResponse:
type: object
properties:
features:
type: array
items:
type: string
status:
type: string
enum: [ok]
operator:
type: boolean
distributedMode:
type: boolean
serverEndPoint:
type: string
permissions:
type: object
additionalProperties:
type: array
items:
type: string
customStyles:
type: string
allowResources:
type: array
items:
$ref: "#/definitions/permissionResource"
envConstants:
$ref: "#/definitions/environmentConstants"
widgetResult:
type: object
properties:
metric:
type: object
additionalProperties:
type: string
values:
type: array
items: {}
resultTarget:
type: object
properties:
legendFormat:
type: string
resultType:
type: string
result:
type: array
items:
$ref: "#/definitions/widgetResult"
widget:
type: object
properties:
title:
type: string
type:
type: string
id:
type: integer
format: int32
options:
type: object
properties:
reduceOptions:
type: object
properties:
calcs:
type: array
items:
type: string
targets:
type: array
items:
$ref: "#/definitions/resultTarget"
widgetDetails:
type: object
properties:
title:
type: string
type:
type: string
id:
type: integer
format: int32
options:
type: object
properties:
reduceOptions:
type: object
properties:
calcs:
type: array
items:
type: string
targets:
type: array
items:
$ref: "#/definitions/resultTarget"
adminInfoResponse:
type: object
properties:
buckets:
type: integer
objects:
type: integer
usage:
type: integer
advancedMetricsStatus:
type: string
enum:
- not configured
- available
- unavailable
widgets:
type: array
items:
$ref: "#/definitions/widget"
servers:
type: array
items:
$ref: "#/definitions/serverProperties"
backend:
$ref: "#/definitions/BackendProperties"
serverProperties:
type: object
properties:
state:
type: string
endpoint:
type: string
uptime:
type: integer
version:
type: string
commitID:
type: string
poolNumber:
type: integer
network:
type: object
additionalProperties:
type: string
drives:
type: array
items:
$ref: "#/definitions/serverDrives"
serverDrives:
type: object
properties:
uuid:
type: string
state:
type: string
endpoint:
type: string
drivePath:
type: string
rootDisk:
type: boolean
healing:
type: boolean
model:
type: string
totalSpace:
type: integer
usedSpace:
type: integer
availableSpace:
type: integer
BackendProperties:
type: object
properties:
backendType:
type: string
rrSCParity:
type: integer
standardSCParity:
type: integer
onlineDrives:
type: integer
offlineDrives:
type: integer
arnsResponse:
type: object
properties:
arns:
type: array
items:
type: string
updateUserGroups:
type: object
required:
- groups
properties:
groups:
type: array
items:
type: string
nofiticationService:
type: string
enum:
- webhook
- amqp
- kafka
- mqtt
- nats
- nsq
- mysql
- postgres
- elasticsearch
- redis
notificationEndpointItem:
type: object
properties:
service:
$ref: "#/definitions/nofiticationService"
account_id:
type: string
status:
type: string
notificationEndpoint:
type: object
required:
- service
- account_id
- properties
properties:
service:
$ref: "#/definitions/nofiticationService"
account_id:
type: string
properties:
type: object
additionalProperties:
type: string
setNotificationEndpointResponse:
type: object
required:
- service
- account_id
- properties
properties:
service:
$ref: "#/definitions/nofiticationService"
account_id:
type: string
properties:
type: object
additionalProperties:
type: string
restart:
type: boolean
notifEndpointResponse:
type: object
properties:
notification_endpoints:
type: array
items:
$ref: "#/definitions/notificationEndpointItem"
peerSiteRemoveResponse:
type: object
properties:
status:
type: string
errorDetail:
type: string
peerSiteEditResponse:
type: object
properties:
success:
type: boolean
status:
type: string
errorDetail:
type: string
peerSite:
type: object
properties:
name:
type: string
endpoint:
type: string
accessKey:
type: string
secretKey:
type: string
peerInfo:
type: object
properties:
endpoint:
type: string
name:
type: string
deploymentID:
type: string
peerInfoRemove:
type: object
required:
- sites
properties:
all:
type: boolean
sites:
type: array
items:
type: string
siteReplicationAddRequest:
type: array
items:
$ref: "#/definitions/peerSite"
siteReplicationAddResponse:
type: object
properties:
success:
type: boolean
status:
type: string
errorDetail:
type: string
initialSyncErrorMessage:
type: string
siteReplicationInfoResponse:
type: object
properties:
enabled:
type: boolean
name:
type: string
sites:
type: array
items:
$ref: "#/definitions/peerInfo"
serviceAccountAccessKey:
type: string
siteReplicationStatusResponse:
type: object
properties:
enabled:
type: boolean
maxBuckets:
type: integer
maxUsers:
type: integer
maxGroups:
type: integer
maxPolicies:
type: integer
sites:
type: object
statsSummary:
type: object
bucketStats:
type: object
policyStats:
type: object
userStats:
type: object
groupStats:
type: object
updateUser:
type: object
required:
- status
- groups
properties:
status:
type: string
groups:
type: array
items:
type: string
bulkUserGroups:
type: object
required:
- users
- groups
properties:
users:
type: array
items:
type: string
groups:
type: array
items:
type: string
serviceAccount:
type: object
properties:
parentUser:
type: string
accountStatus:
type: string
impliedPolicy:
type: boolean
policy:
type: string
name:
type: string
description:
type: string
expiration:
type: string
serviceAccounts:
type: array
items:
type: object
properties:
accountStatus:
type: string
name:
type: string
description:
type: string
expiration:
type: string
accessKey:
type: string
serviceAccountRequest:
type: object
properties:
policy:
type: string
title: "policy to be applied to the Service Account if any"
name:
type: string
description:
type: string
expiry:
type: string
comment:
type: string
serviceAccountRequestCreds:
type: object
properties:
policy:
type: string
title: "policy to be applied to the Service Account if any"
accessKey:
type: string
secretKey:
type: string
name:
type: string
description:
type: string
expiry:
type: string
comment:
type: string
serviceAccountCreds:
type: object
properties:
accessKey:
type: string
secretKey:
type: string
url:
type: string
remoteBucket:
type: object
required:
- accessKey
- sourceBucket
- remoteARN
properties:
accessKey:
type: string
minLength: 3
secretKey:
type: string
minLength: 8
sourceBucket:
type: string
targetURL:
type: string
targetBucket:
type: string
remoteARN:
type: string
status:
type: string
service:
type: string
enum: [replication]
syncMode:
type: string
bandwidth:
type: integer
format: int64
healthCheckPeriod:
type: integer
createRemoteBucket:
required:
- accessKey
- secretKey
- targetURL
- sourceBucket
- targetBucket
properties:
accessKey:
type: string
minLength: 3
secretKey:
type: string
minLength: 8
targetURL:
type: string
sourceBucket:
type: string
targetBucket:
type: string
region:
type: string
syncMode:
type: string
enum:
- async
- sync
default: async
bandwidth:
type: integer
format: int64
healthCheckPeriod:
type: integer
format: int32
listRemoteBucketsResponse:
type: object
properties:
buckets:
type: array
items:
$ref: "#/definitions/remoteBucket"
title: list of remote buckets
total:
type: integer
format: int64
title: number of remote buckets accessible to user
bucketVersioningResponse:
type: object
properties:
status:
type: string
MFADelete:
type: string
excludedPrefixes:
type: array
items:
type: object
properties:
prefix:
type: string
excludeFolders:
type: boolean
setBucketVersioning:
type: object
properties:
enabled:
type: boolean
excludePrefixes:
type: array
maxLength: 10
items:
type: string
excludeFolders:
type: boolean
bucketObLockingResponse:
type: object
properties:
object_locking_enabled:
type: boolean
logSearchResponse:
type: object
properties:
results:
type: object
title: list of log search responses
objectLegalHoldStatus:
type: string
enum:
- enabled
- disabled
putObjectLegalHoldRequest:
type: object
required:
- status
properties:
status:
$ref: "#/definitions/objectLegalHoldStatus"
objectRetentionMode:
type: string
enum:
- governance
- compliance
putObjectRetentionRequest:
type: object
required:
- mode
- expires
properties:
mode:
$ref: "#/definitions/objectRetentionMode"
expires:
type: string
governance_bypass:
type: boolean
putObjectTagsRequest:
type: object
properties:
tags:
additionalProperties:
type: string
putBucketTagsRequest:
type: object
properties:
tags:
additionalProperties:
type: string
objectRetentionUnit:
type: string
enum:
- days
- years
putBucketRetentionRequest:
type: object
required:
- mode
- unit
- validity
properties:
mode:
$ref: "#/definitions/objectRetentionMode"
unit:
$ref: "#/definitions/objectRetentionUnit"
validity:
type: integer
format: int32
getBucketRetentionConfig:
type: object
properties:
mode:
$ref: "#/definitions/objectRetentionMode"
unit:
$ref: "#/definitions/objectRetentionUnit"
validity:
type: integer
format: int32
prefixAccessPair:
type: object
properties:
prefix:
type: string
access:
type: string
prefixWrapper:
type: object
properties:
prefix:
type: string
setConfigResponse:
type: object
properties:
restart:
description: Returns wheter server needs to restart to apply changes or not
type: boolean
configExportResponse:
type: object
properties:
value:
description: Returns base64 encoded value
type: string
status:
type: string
license:
type: object
properties:
email:
type: string
organization:
type: string
account_id:
type: integer
storage_capacity:
type: integer
plan:
type: string
expires_at:
type: string
apiKey:
type: object
properties:
apiKey:
type: string
policyArgs:
type: object
properties:
id:
type: string
action:
type: string
bucket_name:
type: string
deleteFile:
type: object
properties:
path:
type: string
versionID:
type: string
recursive:
type: boolean
userSAs:
type: object
properties:
path:
type: string
versionID:
type: string
recursive:
type: boolean
rewindItem:
type: object
properties:
last_modified:
type: string
size:
type: integer
format: int64
version_id:
type: string
delete_flag:
type: boolean
action:
type: string
name:
type: string
is_latest:
type: boolean
rewindResponse:
type: object
properties:
objects:
type: array
items:
$ref: "#/definitions/rewindItem"
iamPolicy:
type: object
properties:
version:
type: string
statement:
type: array
items:
$ref: "#/definitions/iamPolicyStatement"
iamPolicyStatement:
type: object
properties:
effect:
type: string
action:
type: array
items:
type: string
resource:
type: array
items:
type: string
condition:
type: object
additionalProperties:
type: object
metadata:
type: object
properties:
objectMetadata:
type: object
additionalProperties: true
permissionResource:
type: object
properties:
resource:
type: string
conditionOperator:
type: string
prefixes:
type: array
items:
type: string
aUserPolicyResponse:
type: object
properties:
policy:
type: string
kmsStatusResponse:
type: object
properties:
name:
type: string
defaultKeyID:
type: string
endpoints:
type: array
items:
$ref: "#/definitions/kmsEndpoint"
kmsEndpoint:
type: object
properties:
url:
type: string
status:
type: string
kmsKeyStatusResponse:
type: object
properties:
keyID:
type: string
encryptionErr:
type: string
decryptionErr:
type: string
kmsCreateKeyRequest:
type: object
required:
- key
properties:
key:
type: string
kmsListKeysResponse:
type: object
properties:
results:
type: array
items:
$ref: "#/definitions/kmsKeyInfo"
kmsKeyInfo:
type: object
properties:
name:
type: string
createdAt:
type: string
createdBy:
type: string
kmsMetricsResponse:
type: object
required:
- requestOK
- requestErr
- requestFail
- requestActive
- auditEvents
- errorEvents
- latencyHistogram
- uptime
- cpus
- usableCPUs
- threads
- heapAlloc
- stackAlloc
properties:
requestOK:
type: integer
requestErr:
type: integer
requestFail:
type: integer
requestActive:
type: integer
auditEvents:
type: integer
errorEvents:
type: integer
latencyHistogram:
type: array
items:
$ref: "#/definitions/kmsLatencyHistogram"
uptime:
type: integer
cpus:
type: integer
usableCPUs:
type: integer
threads:
type: integer
heapAlloc:
type: integer
heapObjects:
type: integer
stackAlloc:
type: integer
kmsLatencyHistogram:
type: object
properties:
duration:
type: integer
total:
type: integer
kmsAPIsResponse:
type: object
properties:
results:
type: array
items:
$ref: "#/definitions/kmsAPI"
kmsAPI:
type: object
properties:
method:
type: string
path:
type: string
maxBody:
type: integer
timeout:
type: integer
kmsVersionResponse:
type: object
properties:
version:
type: string
environmentConstants:
type: object
properties:
maxConcurrentUploads:
type: integer
maxConcurrentDownloads:
type: integer
redirectRule:
type: object
properties:
redirect:
type: string
displayName:
type: string
serviceType:
type: string
idpServerConfiguration:
type: object
properties:
name:
type: string
input:
type: string
type:
type: string
enabled:
type: boolean
info:
type: array
items:
$ref: "#/definitions/idpServerConfigurationInfo"
idpServerConfigurationInfo:
type: object
properties:
key:
type: string
value:
type: string
isCfg:
type: boolean
isEnv:
type: boolean
idpListConfigurationsResponse:
type: object
properties:
results:
type: array
items:
$ref: "#/definitions/idpServerConfiguration"
setIDPResponse:
type: object
properties:
restart:
type: boolean
releaseListResponse:
type: object
properties:
results:
type: array
items:
$ref: "#/definitions/releaseInfo"
releaseInfo:
type: object
properties:
metadata:
$ref: "#/definitions/releaseMetadata"
notesContent:
type: string
securityContent:
type: string
breakingChangesContent:
type: string
contextContent:
type: string
newFeaturesContent:
type: string
releaseMetadata:
type: object
properties:
tag_name:
type: string
target_commitish:
type: string
name:
type: string
draft:
type: boolean
prerelease:
type: boolean
id:
type: integer
created_at:
type: string
published_at:
type: string
url:
type: string
html_url:
type: string
assets_url:
type: string
upload_url:
type: string
zipball_url:
type: string
tarball_url:
type: string
author:
$ref: "#/definitions/releaseAuthor"
node_id:
type: string
releaseAuthor:
type: object
properties:
login:
type: string
id:
type: integer
node_id:
type: string
avatar_url:
type: string
html_url:
type: string
gravatar_id:
type: string
type:
type: string
site_admin:
type: boolean
url:
type: string
events_url:
type: string
following_url:
type: string
followers_url:
type: string
gists_url:
type: string
organizations_url:
type: string
receivedEvents_url:
type: string
repos_url:
type: string
starred_url:
type: string
subscriptions_url:
type: string
callHomeGetResponse:
type: object
properties:
diagnosticsStatus:
type: boolean
logsStatus:
type: boolean
callHomeSetStatus:
type: object
required:
- diagState
- logsState
properties:
diagState:
type: boolean
logsState:
type: boolean
ldapEntitiesRequest:
type: object
properties:
users:
type: array
items:
type: string
groups:
type: array
items:
type: string
policies:
type: array
items:
type: string
ldapEntities:
type: object
properties:
timestamp:
type: string
users:
type: array
items:
$ref: "#/definitions/ldapUserPolicyEntity"
groups:
type: array
items:
$ref: "#/definitions/ldapGroupPolicyEntity"
policies:
type: array
items:
$ref: "#/definitions/ldapPolicyEntity"
ldapUserPolicyEntity:
type: object
properties:
user:
type: string
policies:
type: array
items:
type: string
ldapGroupPolicyEntity:
type: object
properties:
group:
type: string
policies:
type: array
items:
type: string
ldapPolicyEntity:
type: object
properties:
policy:
type: string
users:
type: array
items:
type: string
groups:
type: array
items:
type: string
maxShareLinkExpResponse:
type: object
properties:
exp:
type: number
format: int64
required:
- exp
selectedSAs:
type: array
items:
type: string