1847 lines
41 KiB
YAML
1847 lines
41 KiB
YAML
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
|
|
# Apply the key security definition to all APIs
|
|
security:
|
|
- key: []
|
|
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/error"
|
|
# Exclude this API from the authentication requirement
|
|
security: []
|
|
tags:
|
|
- UserAPI
|
|
post:
|
|
summary: Login to mcs
|
|
operationId: Login
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/loginRequest"
|
|
responses:
|
|
201:
|
|
description: A successful login.
|
|
schema:
|
|
$ref: "#/definitions/loginResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
# Exclude this API from the authentication requirement
|
|
security: []
|
|
tags:
|
|
- UserAPI
|
|
/login/operator:
|
|
post:
|
|
summary: Login to Operator Console.
|
|
operationId: LoginOperator
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/loginOperatorRequest"
|
|
responses:
|
|
201:
|
|
description: A successful login.
|
|
schema:
|
|
$ref: "#/definitions/loginResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
security: []
|
|
tags:
|
|
- UserAPI
|
|
|
|
/login/oauth2/auth:
|
|
post:
|
|
summary: Identity Provider oauth2 callback endpoint.
|
|
operationId: LoginOauth2Auth
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/loginOauth2AuthRequest"
|
|
responses:
|
|
201:
|
|
description: A successful login.
|
|
schema:
|
|
$ref: "#/definitions/loginResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
security: []
|
|
tags:
|
|
- UserAPI
|
|
|
|
/logout:
|
|
post:
|
|
summary: Logout from mcs.
|
|
operationId: Logout
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/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/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/buckets:
|
|
get:
|
|
summary: List Buckets
|
|
operationId: ListBuckets
|
|
parameters:
|
|
- name: sort_by
|
|
in: query
|
|
required: false
|
|
type: string
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listBucketsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
post:
|
|
summary: Make bucket
|
|
operationId: MakeBucket
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/makeBucketRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/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/error"
|
|
tags:
|
|
- UserAPI
|
|
delete:
|
|
summary: Delete Bucket
|
|
operationId: DeleteBucket
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/buckets/{name}/set-policy:
|
|
put:
|
|
summary: Bucket Set Policy
|
|
operationId: BucketSetPolicy
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/setBucketPolicyRequest"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/bucket"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/buckets/{bucket_name}/events:
|
|
get:
|
|
summary: List Bucket Events
|
|
operationId: ListBucketEvents
|
|
parameters:
|
|
- name: bucket_name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listBucketEventsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
post:
|
|
summary: Create Bucket Event
|
|
operationId: CreateBucketEvent
|
|
parameters:
|
|
- name: bucket_name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/bucketEventRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/buckets/{bucket_name}/events/{arn}:
|
|
delete:
|
|
summary: Delete Bucket Event
|
|
operationId: DeleteBucketEvent
|
|
parameters:
|
|
- name: bucket_name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: arn
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/notificationDeleteRequest"
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/service-accounts:
|
|
get:
|
|
summary: List User's Service Accounts
|
|
operationId: ListUserServiceAccounts
|
|
parameters:
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/serviceAccounts"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
post:
|
|
summary: Create Service Account
|
|
operationId: CreateServiceAccount
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/serviceAccountRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/serviceAccountCreds"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/service-accounts/{access_key}:
|
|
delete:
|
|
summary: Delete Service Account
|
|
operationId: DeleteServiceAccount
|
|
parameters:
|
|
- name: access_key
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- UserAPI
|
|
|
|
/users:
|
|
get:
|
|
summary: List Users
|
|
operationId: ListUsers
|
|
parameters:
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listUsersResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
post:
|
|
summary: Add User
|
|
operationId: AddUser
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/addUserRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/user"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/users/{name}:
|
|
get:
|
|
summary: Get User Info
|
|
operationId: GetUserInfo
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/user"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
put:
|
|
summary: Update User Info
|
|
operationId: UpdateUserInfo
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/updateUser"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/user"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
delete:
|
|
summary: Remove user
|
|
operationId: RemoveUser
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/users/{name}/groups:
|
|
put:
|
|
summary: Update Groups for a user
|
|
operationId: UpdateUserGroups
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/updateUserGroups"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/user"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/users-groups-bulk:
|
|
put:
|
|
summary: Bulk functionality to Add Users to Groups
|
|
operationId: BulkUpdateUsersGroups
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/bulkUserGroups"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/groups:
|
|
get:
|
|
summary: List Groups
|
|
operationId: ListGroups
|
|
parameters:
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listGroupsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
post:
|
|
summary: Add Group
|
|
operationId: AddGroup
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/addGroupRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/groups/{name}:
|
|
get:
|
|
summary: Group info
|
|
operationId: GroupInfo
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/group"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
delete:
|
|
summary: Remove group
|
|
operationId: RemoveGroup
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
put:
|
|
summary: Update Group Members or Status
|
|
operationId: UpdateGroup
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/updateGroupRequest"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/group"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/policies:
|
|
get:
|
|
summary: List Policies
|
|
operationId: ListPolicies
|
|
parameters:
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listPoliciesResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
post:
|
|
summary: Add Policy
|
|
operationId: AddPolicy
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/addPolicyRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/policy"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/policies/{name}:
|
|
delete:
|
|
summary: Remove policy
|
|
operationId: RemovePolicy
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
get:
|
|
summary: Policy info
|
|
operationId: PolicyInfo
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/policy"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/configs:
|
|
get:
|
|
summary: List Configurations
|
|
operationId: ListConfig
|
|
parameters:
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listConfigResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/set-policy/{name}:
|
|
put:
|
|
summary: Set policy
|
|
operationId: SetPolicy
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/setPolicyRequest"
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/configs/{name}:
|
|
get:
|
|
summary: Configuration info
|
|
operationId: ConfigInfo
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/configuration"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
put:
|
|
summary: Set Configuration
|
|
operationId: SetConfig
|
|
parameters:
|
|
- name: name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/setConfigRequest"
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/service/restart:
|
|
post:
|
|
summary: Restart Service
|
|
operationId: RestartService
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
/profiling/start:
|
|
post:
|
|
summary: Start recording profile data
|
|
operationId: ProfilingStart
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/profilingStartRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/startProfilingList"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/profiling/stop:
|
|
post:
|
|
summary: Stop and download profile data
|
|
operationId: ProfilingStop
|
|
produces:
|
|
- application/octet-stream
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
type: file
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/admin/info:
|
|
get:
|
|
summary: Returns information about the deployment
|
|
operationId: AdminInfo
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/adminInfoResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/admin/arns:
|
|
get:
|
|
summary: Returns a list of active ARNs in the instance
|
|
operationId: ArnList
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/arnsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/admin/notification_endpoints:
|
|
get:
|
|
summary: Returns a list of active notification endpoints
|
|
operationId: NotificationEndpointList
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/notifEndpointResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
post:
|
|
summary: Allows to configure a new notification endpoint
|
|
operationId: AddNotificationEndpoint
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/notificationEndpoint"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/notificationEndpoint"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/tenants:
|
|
get:
|
|
summary: List Tenant of All Namespaces
|
|
operationId: ListAllTenants
|
|
parameters:
|
|
- name: sort_by
|
|
in: query
|
|
required: false
|
|
type: string
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listTenantsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
post:
|
|
summary: Create Tenant
|
|
operationId: CreateTenant
|
|
parameters:
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/createTenantRequest"
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/createTenantResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/namespaces/{namespace}/tenants:
|
|
get:
|
|
summary: List Tenants by Namespace
|
|
operationId: ListTenants
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: sort_by
|
|
in: query
|
|
required: false
|
|
type: string
|
|
- name: offset
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
- name: limit
|
|
in: query
|
|
required: false
|
|
type: integer
|
|
format: int32
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/listTenantsResponse"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/namespaces/{namespace}/tenants/{tenant}:
|
|
get:
|
|
summary: Tenant Info
|
|
operationId: TenantInfo
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: tenant
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/tenant"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
delete:
|
|
summary: Delete Tenant
|
|
operationId: DeleteTenant
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: tenant
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
204:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
put:
|
|
summary: Update Tenant
|
|
operationId: UpdateTenant
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: tenant
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/updateTenantRequest"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/namespaces/{namespace}/tenants/{tenant}/zones:
|
|
post:
|
|
summary: Tenant Add Zone
|
|
operationId: TenantAddZone
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: tenant
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: body
|
|
in: body
|
|
required: true
|
|
schema:
|
|
$ref: "#/definitions/zone"
|
|
responses:
|
|
201:
|
|
description: A successful response.
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
/namespaces/{namespace}/resourcequotas/{resource-quota-name}:
|
|
get:
|
|
summary: Get Resource Quota
|
|
operationId: GetResourceQuota
|
|
parameters:
|
|
- name: namespace
|
|
in: path
|
|
required: true
|
|
type: string
|
|
- name: resource-quota-name
|
|
in: path
|
|
required: true
|
|
type: string
|
|
responses:
|
|
200:
|
|
description: A successful response.
|
|
schema:
|
|
$ref: "#/definitions/resourceQuota"
|
|
default:
|
|
description: Generic error response.
|
|
schema:
|
|
$ref: "#/definitions/error"
|
|
tags:
|
|
- AdminAPI
|
|
|
|
definitions:
|
|
bucketAccess:
|
|
type: string
|
|
enum:
|
|
- PRIVATE
|
|
- PUBLIC
|
|
- CUSTOM
|
|
default: PRIVATE
|
|
bucket:
|
|
type: object
|
|
required:
|
|
- name
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
size:
|
|
type: integer
|
|
format: int64
|
|
access:
|
|
$ref: "#/definitions/bucketAccess"
|
|
creation_date:
|
|
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 tenant user
|
|
makeBucketRequest:
|
|
type: object
|
|
required:
|
|
- name
|
|
properties:
|
|
name:
|
|
type: string
|
|
error:
|
|
type: object
|
|
required:
|
|
- message
|
|
properties:
|
|
code:
|
|
type: integer
|
|
format: int64
|
|
message:
|
|
type: string
|
|
user:
|
|
type: object
|
|
properties:
|
|
accessKey:
|
|
type: string
|
|
policy:
|
|
type: string
|
|
memberOf:
|
|
type: array
|
|
items:
|
|
type: string
|
|
status:
|
|
type: string
|
|
listUsersResponse:
|
|
type: object
|
|
properties:
|
|
users:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/user"
|
|
title: list of resulting users
|
|
addUserRequest:
|
|
type: object
|
|
required:
|
|
- accessKey
|
|
- secretKey
|
|
- groups
|
|
properties:
|
|
accessKey:
|
|
type: string
|
|
secretKey:
|
|
type: string
|
|
groups:
|
|
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
|
|
addPolicyRequest:
|
|
type: object
|
|
required:
|
|
- name
|
|
- policy
|
|
properties:
|
|
name:
|
|
type: string
|
|
policy:
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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"
|
|
loginDetails:
|
|
type: object
|
|
properties:
|
|
loginStrategy:
|
|
type: string
|
|
enum: [form, redirect, service-account]
|
|
redirect:
|
|
type: string
|
|
loginOauth2AuthRequest:
|
|
type: object
|
|
required:
|
|
- state
|
|
- code
|
|
properties:
|
|
state:
|
|
type: string
|
|
code:
|
|
type: string
|
|
loginOperatorRequest:
|
|
type: object
|
|
required:
|
|
- jwt
|
|
properties:
|
|
jwt:
|
|
type: string
|
|
loginRequest:
|
|
type: object
|
|
required:
|
|
- accessKey
|
|
- secretKey
|
|
properties:
|
|
accessKey:
|
|
type: string
|
|
secretKey:
|
|
type: string
|
|
loginResponse:
|
|
type: object
|
|
properties:
|
|
sessionId:
|
|
type: string
|
|
# Structure that holds the `Bearer {TOKEN}` present on authenticated requests
|
|
principal:
|
|
type: object
|
|
properties:
|
|
accessKeyID:
|
|
type: string
|
|
secretAccessKey:
|
|
type: string
|
|
sessionToken:
|
|
type: string
|
|
actions:
|
|
type: array
|
|
items:
|
|
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"
|
|
profilerType:
|
|
type: string
|
|
enum:
|
|
- cpu
|
|
- mem
|
|
- block
|
|
- mutex
|
|
- trace
|
|
- threads
|
|
- goroutines
|
|
profilingStartRequest:
|
|
type: object
|
|
required:
|
|
- type
|
|
properties:
|
|
type:
|
|
$ref: "#/definitions/profilerType"
|
|
sessionResponse:
|
|
type: object
|
|
properties:
|
|
pages:
|
|
type: array
|
|
items:
|
|
type: string
|
|
status:
|
|
type: string
|
|
enum: [ok]
|
|
adminInfoResponse:
|
|
type: object
|
|
properties:
|
|
buckets:
|
|
type: integer
|
|
objects:
|
|
type: integer
|
|
usage:
|
|
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
|
|
notifEndpointResponse:
|
|
type: object
|
|
properties:
|
|
notification_endpoints:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/notificationEndpointItem"
|
|
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
|
|
serviceAccounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
serviceAccountRequest:
|
|
type: object
|
|
properties:
|
|
policy:
|
|
type: string
|
|
title: "policy to be applied to the Service Account if any"
|
|
serviceAccountCreds:
|
|
type: object
|
|
properties:
|
|
accessKey:
|
|
type: string
|
|
secretKey:
|
|
type: string
|
|
|
|
tenant:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
zone_count:
|
|
type: integer
|
|
instance_count:
|
|
type: integer
|
|
volume_size:
|
|
type: integer
|
|
format: int64
|
|
volume_count:
|
|
type: integer
|
|
volumes_per_server:
|
|
type: integer
|
|
creation_date:
|
|
type: string
|
|
currentState:
|
|
type: string
|
|
zones:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/zone"
|
|
image:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
total_size:
|
|
type: integer
|
|
format: int64
|
|
used_size:
|
|
type: integer
|
|
format: int64
|
|
storage_class:
|
|
type: string
|
|
|
|
tenantList:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
zone_count:
|
|
type: integer
|
|
instance_count:
|
|
type: integer
|
|
volume_size:
|
|
type: integer
|
|
volume_count:
|
|
type: integer
|
|
creation_date:
|
|
type: string
|
|
currentState:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
listTenantsResponse:
|
|
type: object
|
|
properties:
|
|
tenants:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/tenantList"
|
|
title: list of resulting tenants
|
|
total:
|
|
type: integer
|
|
format: int64
|
|
title: number of tenants accessible to tenant user
|
|
updateTenantRequest:
|
|
type: object
|
|
properties:
|
|
image:
|
|
type: string
|
|
pattern: "^((.*?)/(.*?):(.+))$"
|
|
createTenantRequest:
|
|
type: object
|
|
required:
|
|
- name
|
|
- volume_configuration
|
|
- namespace
|
|
properties:
|
|
name:
|
|
type: string
|
|
pattern: "^[a-z0-9-]{3,63}$"
|
|
image:
|
|
type: string
|
|
service_name:
|
|
type: string
|
|
zones:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/zone"
|
|
volumes_per_server:
|
|
type: integer
|
|
volume_configuration:
|
|
type: object
|
|
required:
|
|
- size
|
|
properties:
|
|
size:
|
|
type: string
|
|
storage_class:
|
|
type: string
|
|
mounth_path:
|
|
type: string
|
|
access_key:
|
|
type: string
|
|
secret_key:
|
|
type: string
|
|
enable_mcs:
|
|
type: boolean
|
|
default: true
|
|
enable_ssl:
|
|
type: boolean
|
|
default: true
|
|
namespace:
|
|
type: string
|
|
annotations:
|
|
type: object
|
|
additionalProperties:
|
|
type: string
|
|
createTenantResponse:
|
|
type: object
|
|
properties:
|
|
access_key:
|
|
type: string
|
|
secret_key:
|
|
type: string
|
|
zone:
|
|
type: object
|
|
required:
|
|
- name
|
|
- servers
|
|
properties:
|
|
name:
|
|
type: string
|
|
servers:
|
|
type: integer
|
|
|
|
resourceQuota:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
elements:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/resourceQuotaElement"
|
|
|
|
resourceQuotaElement:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
hard:
|
|
type: integer
|
|
format: int64
|
|
used:
|
|
type: integer
|
|
format: int64
|