MultiCloud K8sPlugin API v1 Specification
The is the specification for MultiCloud K8sPlugin API version v1.
API Swagger
The specification of the K8sPlugin v1 API in Swagger format:
API Catalog
Warning
In the used Sphinx plugin sphinxcontrib-swaggerdoc some information of the swagger file is not rendered completely, e.g. the request body. Use your favorite Swagger Editor and paste the swagger file to get a complete view of the API reference, e.g. on https://editor.swagger.io/.
definition
POST /rb/definition
Add a new RB Definition
Description:
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
RB Definition object to create |
Responses
200 - successful operation
405 - Invalid input
GET /rb/definition
Get all RB Definitions
Description: Multiple RB Definitions
Produces: [‘application/json’]
Responses
200 - successful operation
400 - Invalid status value
GET /rb/definition/{rbName}
Get all RB Definitions of specified name
Description: Multiple RB Definitions
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
Responses
200 - successful operation
400 - Invalid status value
DELETE /rb/definition/{rbName}
Deletes RB Definitions of specified RB Name
Description:
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
Responses
400 - Invalid identifiers supplied
404 - RB Definition not found
GET /rb/definition/{rbName}/{rbVersion}
Get RB Definition by Name and Version
Description: Returns a single RB Definition object
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
Responses
200 - successful operation
400 - Invalid identifiers supplied
404 - RB Definition not found
DELETE /rb/definition/{rbName}/{rbVersion}
Deletes RB Definition
Description:
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
Responses
400 - Invalid identifiers supplied
404 - RB Definition not found
POST /rb/definition/{rbName}/{rbVersion}/content
Uploads Helm package associated with RB Definition
Description:
Consumes: [‘application/gzip’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
Responses
200 - successful operation
profile
POST /rb/definition/{rbName}/{rbVersion}/profile
Add a new profile for RB Definition
Description:
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
body |
body |
RB Profile object to create |
Responses
200 - successful operation
405 - Invalid input
GET /rb/definition/{rbName}/{rbVersion}/profile
Get all RB Profiles for RB Definition
Description: Multiple RB Definitions
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
Responses
200 - successful operation
400 - Invalid status value
GET /rb/definition/{rbName}/{rbVersion}/profile/{profileName}
Get RB Profile by Name
Description: Returns a single RB Profile object
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition to return |
string |
rbVersion |
path |
Version of the RB Definition to return |
string |
profileName |
path |
Name of the RB profile |
string |
Responses
200 - successful operation
400 - Invalid identifiers supplied
404 - RB Profile not found
DELETE /rb/definition/{rbName}/{rbVersion}/profile/{profileName}
Deletes RB Profile
Description:
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition |
string |
rbVersion |
path |
Version of the RB Definition |
string |
profileName |
path |
Name of the RB profile |
string |
Responses
400 - Invalid identifiers supplied
404 - RB Definition of RB profile not found
POST /rb/definition/{rbName}/{rbVersion}/profile/{profileName}/content
Uploads tgz package associated with RB Profile
Description:
Consumes: [‘application/gzip’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
rbName |
path |
Name of the RB Definition |
string |
rbVersion |
path |
Version of the RB Definition |
string |
profileName |
path |
Name of the RB profile |
string |
Responses
200 - successful operation
instance
POST /instance
Create new RB Instance
Description:
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
RB Instance properties to create |
Responses
405 - Invalid input
GET /instance
Get all RB Instances
Description: Multiple RB Instances
Produces: [‘application/json’]
Responses
200 - successful operation
400 - Invalid status value
GET /instance/{instanceId}
Get RB Instance by ID
Description: Returns a single RB Instance object
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
instanceId |
path |
ID of the instance |
string |
Responses
200 - successful operation
400 - Invalid identifiers supplied
404 - RB Definition not found
DELETE /instance/{instanceId}
Deletes RB Instance
Description:
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
instanceId |
path |
ID of the instance |
string |
Responses
400 - Invalid identifiers supplied
404 - Rb Instance not found
GET /instance/{instanceId}/status
Get RB Instance Status
Description: Returns status of a single RB Instance object
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
instanceId |
path |
ID of the instance |
string |
Responses
200 - successful operation
400 - Invalid identifiers supplied
404 - RB Instance not found
GET /instance/{instanceId}/query
Get filtered out RB Instance status
Description: Returns filtered status of a single RB Instance object
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
instanceId |
path |
ID of the instance |
string |
ApiVersion |
query |
Resource ApiVersion like ‘apps/v1’ |
string |
Kind |
query |
Resource Kind like ‘Deployment’ |
string |
Name |
query |
Name of Resource like ‘my-pod-1’ |
string |
Labels |
query |
One or many pairs of label name/value data for filtering Resources like ‘app=test,version=prod’ |
string |
Responses
200 - successful operation
400 - Invalid identifiers supplied
404 - RB Instance not found