Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

XSKY pools API

PoolController Operations about Pools

XSKY pools API is one of 124 APIs that XSKY publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include pools. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 14 operations across 10 paths, and defines 26 schemas. It is described by OpenAPI 2.0, at version SDS_4.2.000.0.200302.

Requests are made against the base URL https://{xms-controller}/v1.

14 operations 10 paths 26 schemas 2 DELETE5 GET1 PATCH5 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
SDS_4.2.000.0.200302
Base URL
https://{xms-controller}/v1
Authentication
API Key, API Key
License
Commercial
Resource Areas
1

Authentication & Security 2

XSKY pools API declares 2 security schemes for authenticating requests. An API key is passed in the header as Xms-Auth-Token (tokenInHeader). An API key is passed in the query as token (tokenInQuery).

  • tokenInHeader — auth by token
  • tokenInQuery — auth by token

Paths & Operations 14

Across 10 paths, the API surfaces 14 operations — 2 DELETE, 5 GET, 1 PATCH, 5 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

pools 14

PoolController Operations about Pools

GET
/pools/
List pools
ListPools 16 params → 200400500
POST
/pools/
Create pool
CreatePool 1 param → 202400500
GET
/pools/{pool_id}
get pool
GetPool 1 param → 200400404500
DELETE
/pools/{pool_id}
Delete pool
DeletePool 2 params → 202404500
PATCH
/pools/{pool_id}
update pool info
UpdatePool 2 params → 200400404409500
PUT
/pools/{pool_id}/osds
Add osds to pool
AddOsdsToPool 2 params → 202400404500
DELETE
/pools/{pool_id}/osds
Remove multiple osds from a pool
RemoveOsdsFromPool 2 params → 202400404409500
GET
/pools/{pool_id}/predictions
get a pool's prediction
GetPoolPredictions 1 param → 200404500
GET
/pools/{pool_id}/samples
get pool's samples
GetPoolSamples 4 params → 200400404500
GET
/pools/{pool_id}/topology
get pool topology
GetPoolTopology 1 param → 200400404500
POST
/pools/{pool_id}:disable-device-type-check
Disable device type check when add osd
DisableDeviceTypeCheck 1 param → 200400404409500
POST
/pools/{pool_id}:enable-device-type-check
Enable device type check when add osd
EnableDeviceTypeCheck 1 param → 200400404409500
POST
/pools/{pool_id}:reweight
Reweight a pool
ReweightPool 1 param → 200400404409500
POST
/pools/{pool_id}:switch-role
Switch pool role to compound
SwitchPoolRole 1 param → 200202400404409500

Schemas 26

The contract defines 26 schemas that model the data the API accepts and returns. The most detailed are PoolStat (29 properties), Pool (29 properties), PoolCreateReq_Pool (13 properties), PoolPrediction (10 properties). Each schema is shown below with its type and property counts.

PoolTopologyResp
object
1 property 1 required
PoolUpdateReq_Pool
object
10 properties
PoolRecord
PoolRecord is used to combine Pool and PoolStat to let API comfortable
OsdsRemoveReq
object
1 property 1 required
PoolSamplesResp
object
1 property 1 required
PlacementNode
object
PlacementNode defines a placement node managing a range of hosts
7 properties
PoolRuleReq
object
2 properties
RawMessage
array
RawMessage is a raw encoded JSON value. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.
ProtectionDomain_Nestview
object
2 properties
PredictionPoint
object
PredictionPoint is a point in a prediction graph
2 properties
PoolsResp
object
1 property 1 required
PlacementNodeProperties
object
PlacementNodeProperties contains properties for a placement node.
1 property
PoolPredictionsResp
object
1 property 1 required
PoolUpdateReq
object
1 property 1 required
PoolResp
object
1 property 1 required
OsdQos
object
OsdQos defines qos for osd
6 properties
OsdsAddReq
object
1 property 1 required
Pool
object
A Pool is a set of temporary objects that may be individually saved and retrieved. Any item stored in the Pool may be removed automatically at any time without…
29 properties
PoolCreateReq_Pool
object
13 properties
PlacementNode_Nestview
object
2 properties
PoolPlacementNode
object
PoolPlacementNode defines a shadow placement node in a pool
7 properties
PoolCreateReq
object
1 property
PoolStat
object
PoolStat contains pool stats data
29 properties
PlacementNode_Nestview_parent
object
parent of placement node
7 properties
OsdGroup_Nestview
object
1 property
PoolPrediction
object
PoolPrediction contains pool prediction data
10 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

xsky-pools-api-openapi.yml Raw ↑

Other APIs XSKY publishes across the network.

XSKY access-paths API
XSKY access-tokens API
XSKY action-logs API
XSKY alert-groups API
XSKY alert-rules API
XSKY alerts API
XSKY auth API
XSKY block-snapshots API
XSKY block-volume-group-snapshots API
XSKY block-volume-groups API
XSKY block-volume-migration-jobs API
XSKY block-volumes API